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: Return all the tfdbg2 run names in the logdir watched by this instance.
  
  The `Run()` method of this class is specialized for the tfdbg2-format
  DebugEvent files.
  
  As a side effect, this method unblocks the underlying reader's period
  reloading if a reader exists. This lets the reader update at a higher
  frequency than the default one with 30-second sleeping period between
  reloading when data is being queried actively from this instance.
  Note that this `Runs()` method is used by all other public data-access
  methods of this class (e.g., `ExecutionData()`, `GraphExecutionData()`).
  Hence calls to those methods will lead to accelerated data reloading of
  the reader.
  
  Returns:
    If tfdbg2-format data exists in the `logdir` of this object, returns:
        ```
        {runName: { "debugger-v2": [tag1, tag2, tag3] } }
        ```
        where `runName` is the hard-coded string `DEFAULT_DEBUGGER_RUN_NAME`
        string. This is related to the fact that tfdbg2 currently contains
        at most one DebugEvent file set per directory.
    If no tfdbg2-format data exists in the `logdir`, an empty `dict`.
docstr_tok: ["Return","all","the","tfdbg2","run","names","in","the","logdir","watched","by","this","instance",".","The","`","Run","(",")","`","method","of","this","class","is","specialized","for","the","tfdbg2-format","DebugEvent","files",".","As","a","side","effect",",","this","method","unblocks","the","underlying","reader","'s","period","reloading","if","a","reader","exists",".","This","lets","the","reader","update","at","a","higher","frequency","than","the","default","one","with","30-second","sleeping","period","between","reloading","when","data","is","being","queried","actively","from","this","instance",".","Note","that","this","`","Runs","(",")","`","method","is","used","by","all","other","public","data-access","methods","of","this","class","(","e.g.",",","`","ExecutionData","(",")","`",",","`","GraphExecutionData","(",")","`",")",".","Hence","calls","to","those","methods","will","lead","to","accelerated","data","reloading","of","the","reader",".","Returns",":","If","tfdbg2-format","data","exists","in","the","`","logdir","`","of","this","object",",","returns",":","``","`","{","runName",":","{","``","debugger-v2","''",":","[","tag1",",","tag2",",","tag3","]","}","}","``","`","where","`","runName","`","is","the","hard-coded","string","`","DEFAULT_DEBUGGER_RUN_NAME","`","string",".","This","is","related","to","the","fact","that","tfdbg2","currently","contains","at","most","one","DebugEvent","file","set","per","directory",".","If","no","tfdbg2-format","data","exists","in","the","`","logdir","`",",","an","empty","`","dict","`","."]
code: def Runs(self):
      """Return all the tfdbg2 run names in the logdir watched by this instance.
  
      The `Run()` method of this class is specialized for the tfdbg2-format
      DebugEvent files.
  
      As a side effect, this method unblocks the underlying reader's period
      reloading if a reader exists. This lets the reader update at a higher
      frequency than the default one with 30-second sleeping period between
      reloading when data is being queried actively from this instance.
      Note that this `Runs()` method is used by all other public data-access
      methods of this class (e.g., `ExecutionData()`, `GraphExecutionData()`).
      Hence calls to those methods will lead to accelerated data reloading of
      the reader.
  
      Returns:
        If tfdbg2-format data exists in the `logdir` of this object, returns:
            ```
            {runName: { "debugger-v2": [tag1, tag2, tag3] } }
            ```
            where `runName` is the hard-coded string `DEFAULT_DEBUGGER_RUN_NAME`
            string. This is related to the fact that tfdbg2 currently contains
            at most one DebugEvent file set per directory.
        If no tfdbg2-format data exists in the `logdir`, an empty `dict`.
      """
      # Call `_tryCreateReader()` here to cover the possibility of tfdbg2
      # data start being written to the logdir after the tensorboard backend
      # starts.
      self._tryCreateReader()
      if self._reader:
          # If a _reader exists, unblock its reloading (on a separate thread)
          # immediately.
          self._reloadReader()
          return {
              DEFAULT_DEBUGGER_RUN_NAME: {
                  # TODO(cais): Add the semantically meaningful tag names such as
                  # 'execution_digests_book', 'alerts_book'
                  "debugger-v2": []
              }
          }
      else:
          return {}
  
imports: import threading
  from tensorboard import errors
label_desc: Use image node_id 6 for calling the DebuggerV2EventMultiplexer obj's underlying member method code with example usage: obj.Runs() and returns: dict, dict