Attaching a patch. RB at:
- Wrote a LoggingEventJsonSerde, and LoggingEventJsonSerdeFactory.
- Added a config to define whether the JSON encoding should include LocationInfo. Defaulted to false.
- Updated configuration-table.html docs, and logging.md docs.
- Updated tests to make sure everything still works.
- Misc cleanup in Log4jSystemConfig to shrink lines of code.
- Changed default serializer from string to JSON. This matches the default CheckpointManager serialization format, and also makes it easier for Samza to integrate with ELK. This format is also less lossy than the LoggingEventStringSerde.
- Did not implement JSON-to-LoggingEvent decoding. Wasn't required for ELK integration.
- Throw an exception if the containerName SystemProperty is empty.
Also ran with hello-samza, and an internal job. Fully integrated the messages with ELK, and it worked.