What's Changed
Added
-
Support for configuration compatible with ECS log format by @pamburus in #104
- Added support for predefined field names that can match fields in nested objects when used with dot delimiters.
For example, iflog.origin.file.nameis used for a predefined field name, it will match any of the{ "log.origin.file.name": "app.py" }{ "log": { "origin.file.name": "app.py" } }{ "log": { "origin": {"file.name": "app.py" } } }{ "log": { "origin": {"file": {"name": "app.py" } } } }- etc.
- Added predefined
caller-fileandcaller-linefields for separate processing of file name and line number.
Example output
23-11-02 08:09:10.423 |INF| __main__: backup for database bar in foo is already done today application='backup-rds' ecs={ version='1.6.0' } language='python' process={ name='MainProcess' pid=1 thread={ id=140610736142144 name='MainThread' } } ... @ app.py:107Suggested configuration file for ECS logs is etc/defaults/config-ecs.yaml
These settings have not been added to the default configuration because it is not yet clear how they will affect performance. - Added support for predefined field names that can match fields in nested objects when used with dot delimiters.
Full Changelog: v0.21.0...v0.22.0