code: def _log_summary(self, tf_name, summary, value, step=None):
      event = event_pb2.Event(wall_time=self._time(), summary=summary)
      if step is not None:
          event.step = int(step)
      if self.is_dummy:
          self.dummy_log[tf_name].append((step, value))
      else:
          self._write_event(event)
  
imports: from collections import defaultdict
  import os
  import re
  import socket
  import struct
  import time
  import numpy
  import six
  import scipy.misc
  from .crc32c import crc32c
label_desc: Use image node_id 11 for calling the Logger obj's underlying member method code with example usage: obj._log_summary(tf_name, summary, value, step) without return types