LoggingΒΆ
Soar logging is done via JSON objects separated by newlines. All logged objects will contain a type
key.
There are various types of logged objects:
meta
: A typicalmeta
object might look like:{"version": "1.0.0dev3", "brain": "path/to/brain.py", "type": "meta", "world": "path/to/world.py", "simulated": false}
containing information about the controller when it was loaded. When a simulation completes, the following
meta
object is logged:{"type": "meta", "completed": <time elapsed>}
step
: Step objects are logged before every step, and one is logged after the simulation is stopped as well:{"type": "meta", "step": <step_number>, "elapsed": <time elapsed>, "brain_print": <brain stdout>, "robot": <serialized robot data>}
containing information about the step.
plot
: Plot objects are logged whenever the user closes a simulation with aPlotWindow
open:{"type": "plot", "data": <hex data of png image of plot>}