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 typicalmetaobject 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
metaobject 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 aPlotWindowopen:{"type": "plot", "data": <hex data of png image of plot>}