将结构化JSON日志转换为可读输出
项目描述
jsonlog-cli
JSON日志的可读格式化工具。
它是为与jsonlog一起使用而构建的,但也适用于任何使用行分隔JSON的日志格式。
用法
有关所有选项,请参阅jsonlog --help
。
键值模式
将文件作为jsonlog
的唯一参数传递,或默认从标准输入读取。
jsonlog kv docs/example.log
python docs/example.py | jsonlog kv
cat docs/example.log | jsonlog
仅显示timestamp
和message
字段
jsonlog kv --key timestamp --key message docs/example.log
配置要显示的多行值的键(可以指定多次,默认为traceback
键)
jsonlog kv --key timestamp --key message --multiline-key traceback docs/example.log
配置用于提取并用作记录级别的键,以控制每行打印的颜色(默认为level
键)
jsonlog kv --level-key level --key timestamp --key message --multiline-key traceback docs/example.log
模板模式
仅显示timestamp
和message
字段
jsonlog template --format "{timestamp} {message}" docs/example.log
如果存在,也显示多行键
jsonlog template --format "{timestamp} {message}" --multiline-key traceback docs/example.log
配置
支持名为“模式”的命名方式,以便收集jsonlog的键值和模板模式的选项集。如果存在~/.config/jsonlog/config.json
,它将在启动时加载。所有字段都应该是可选的。
下面的示例配置文件创建了名为basic
和comprehensive
的模式,用于键值和模板模式。每个模式将显示传入日志的timestamp
和message
字段。名为comprehensive
的模式将覆盖所有字段,设置其默认值。
创建名为default
的模式将设置在没有指定模式时使用的默认选项。命令行选项始终覆盖应用程序默认配置、配置文件和所选模式的选项。
{
"keyvalues": {
"basic": {
"priority_keys": ["timestamp", "message"]
},
"comprehensive": {
"level_key": "level",
"multiline_json": false,
"multiline_keys": [],
"priority_keys": [],
"removed_keys": []
}
},
"templates": {
"basic": {
"format": "{timestamp} {message}"
},
"comprehensive": {
"level_key": "level",
"multiline_json": false,
"multiline_keys": [],
"format": "{timestamp} {message}"
}
}
}
《多行JSON》选项将使用缓冲区解析传入的数据。这很少有用,但某些应用程序(例如ElasticSearch)会输出跨多行的JSON。传入的数据将缓冲,直到整个缓冲区可以解析为JSON或新行以{
开始。可以立即解析为JSON的传入行不会被缓冲(首先刷新缓冲区)。
调试
jsonlog
CLI有一些在调试时很有用的标志。以下命令将内部日志以JSON格式打印到标准错误。
jsonlog --log-path=- --log-level=debug kv ...
作者
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
jsonlog-cli-6.3.0.tar.gz (11.1 kB 查看哈希)
构建分布
jsonlog_cli-6.3.0-py3-none-any.whl (12.3 kB 查看哈希)
关闭
jsonlog-cli-6.3.0.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3689c7be242b1a24204b0d8a775c8c293df84a09eff37893c59e01c0be16172c |
|
MD5 | 902b3aad8c4a0ffa463dfe2b545dd939 |
|
BLAKE2b-256 | c8eb40da231f28d086956bed6e9cd59d96db538d40ba0dec0ff4bfa7edffbfad |
关闭
jsonlog_cli-6.3.0-py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1289f6cc18f867258a914a96a7ec01827c589917b8269e244b017b865b42883d |
|
MD5 | bfd66eef76aa49019e5d086999071514 |
|
BLAKE2b-256 | 40989aaca798ced890b46de61146d076c98f810d494a7cad924ca13b3324e107 |