class_docstr: A class used for accessing tfdbg v2 DebugEvent data on local filesystem.
  
  This class is a short-term hack, mirroring the EventMultiplexer for the main
  TensorBoard plugins (e.g., scalar, histogram and graphs.) As such, it only
  implements the methods relevant to the Debugger V2 pluggin.
  
  TODO(cais): Integrate it with EventMultiplexer and use the integrated class
  from MultiplexerDataProvider for a single path of accessing debugger and
  non-debugger data.
docstr: Try creating reader for tfdbg2 data in the logdir.
  
  If the reader has already been created, a new one will not be created and
  this function is a no-op.
  
  If a reader has not been created, create it and start periodic calls to
  `update()` on a separate thread.
docstr_tok: ["Try","creating","reader","for","tfdbg2","data","in","the","logdir",".","If","the","reader","has","already","been","created",",","a","new","one","will","not","be","created","and","this","function","is","a","no-op",".","If","a","reader","has","not","been","created",",","create","it","and","start","periodic","calls","to","`","update","(",")","`","on","a","separate","thread","."]
code: def _tryCreateReader(self):
      """Try creating reader for tfdbg2 data in the logdir.
  
      If the reader has already been created, a new one will not be created and
      this function is a no-op.
  
      If a reader has not been created, create it and start periodic calls to
      `update()` on a separate thread.
      """
      if self._reader:
          return
      with self._reader_lock:
          if not self._reader:
              try:
                  # TODO(cais): Avoid conditional imports and instead use
                  # plugin loader to gate the loading of this entire plugin.
                  from tensorflow.python.debug.lib import (
                      debug_events_reader,
                  )
                  from tensorflow.python.debug.lib import (
                      debug_events_monitors,
                  )
              except ImportError:
                  # This ensures graceful behavior when tensorflow install is
                  # unavailable or when the installed tensorflow version does not
                  # contain the required modules.
                  return
  
              try:
                  self._reader = debug_events_reader.DebugDataReader(
                      self._logdir
                  )
              except AttributeError:
                  # Gracefully fail for users without the required API changes to
                  # debug_events_reader.DebugDataReader introduced in
                  # TF 2.1.0.dev20200103. This should be safe to remove when
                  # TF 2.2 is released.
                  return
              except ValueError:
                  # When no DebugEvent file set is found in the logdir, a
                  # `ValueError` is thrown.
                  return
  
              self._monitors = [
                  debug_events_monitors.InfNanMonitor(
                      self._reader, limit=DEFAULT_PER_TYPE_ALERT_LIMIT
                  )
              ]
              (
                  self._reload_needed_event,
                  _,
              ) = run_repeatedly_in_background(
                  self._reader.update, DEFAULT_RELOAD_INTERVAL_SEC
              )
  
imports: import threading
  from tensorboard import errors
label_desc: Use image node_id 2 for calling the DebuggerV2EventMultiplexer obj's underlying member method code with example usage: obj._tryCreateReader() without return types