Add streamline Logger
- Tickets addressed: N/A
- Review: By commit
- Merge strategy: Merge (no squash)
Description
Adds a Logger class to the streamline framework, which uses topics to emit log messages directly as events. Also builds such a Logger when the Registrar is initialized, and reconfigures errors to go to that logger when the error behavior is set to LOG. Before this, errors were collected awkwardly into a discrete string resource.
Verification
Since the logger is connected to the Registrar's error behavior, this was tested using the streamline-demo example model. By adding "CauseError" activities to the plan, we can trip the resource error handling machinery, and verify that appropriate error messages appear in the Simulation Events tab.
Documentation
None yet - #1494 should probably be updated to tell users how to use the logger in their model/activities.
One thing to note: This changes the signature of Registrar's constructor, adding an Instant planStart argument.
Future work
None planned