code: def dump(self):
          
  
          walkers = {}
          walkers.update({str(walker.selector): walker.dump() for walker in self._queue_walkers})
          walkers.update({str(walker.selector): walker.dump() for walker in self._virtual_walkers})
  
          return {
              u'engine': self._engine.dump(),
              u'rollover_storage': self._rollover_storage,
              u'rollover_streaming': self._rollover_streaming,
              u'last_values': {str(stream): reading.asdict() for stream, reading in self._last_values.items()},
              u'walkers': walkers
          }
docs: Dump the state of this SensorLog.
  
          The purpose of this method is to be able to restore the same state
          later.  However there are links in the SensorLog for stream walkers.
  
          So the dump process saves the state of each stream walker and upon
          restore, it looks through the current set of stream walkers and
          restores each one that existed when dump() was called to its state.
  
          Returns:
              dict: The serialized state of this SensorLog.