class_docstr: Adapter to keyring module
  
  It also delays import of keyring which takes 300ms I guess due to all plugins etc
code: def _keyring(self):
      if self.__keyring_mod is None:
          # Setup logging for keyring if we are debugging, although keyring's logging
          # is quite scarce ATM
          from datalad.log import lgr
          import logging
  
          lgr_level = lgr.getEffectiveLevel()
          if lgr_level < logging.DEBUG:
              keyring_lgr = logging.getLogger("keyring")
              keyring_lgr.setLevel(lgr_level)
              keyring_lgr.handlers = lgr.handlers
          lgr.debug("Importing keyring")
          import keyring
  
          self.__keyring_mod = keyring
  
      if self.__keyring is None:
          from datalad.log import lgr
  
          # we use module bound interfaces whenever we were not provided a dedicated
          # backend
          self.__keyring = self.__keyring_mod
          the_keyring = self.__keyring_mod.get_keyring()
          if the_keyring.name.lower().startswith("null "):
              lgr.warning(
                  "Keyring module returned '%s', no credentials will be provided",
                  the_keyring.name,
              )
      return self.__keyring
  
file_path: datalad/datalad/support/keyring_.py
imports: import os
  import logging
label_desc: Use image node_id 2 for calling the Keyring obj's underlying member method code with example usage: obj._keyring() and returns: self