4个版本
0.1.3 | 2022年6月5日 |
---|---|
0.1.2 | 2022年6月4日 |
0.1.1 | 2022年6月4日 |
0.1.0 | 2022年6月4日 |
#193 in #analysis
每月29次下载
用于log-analyzer-pro
170KB
4K SLoC
日志分析器专业版 (lap)
一个用Rust编写的终端日志分析器应用程序
特性
- 从文件或套接字读取日志。它会实时更新新条目
- 可选地使用正则表达式格式化日志,以匹配日期、时间戳、应用程序、严重性、函数和有效负载类别,以便于阅读和过滤
- 包括、排除或标记正则表达式过滤器
- 正则表达式搜索
安装
cargo install log-analyzer-pro
二进制可执行文件为lap
用法
菜单导航
使用Shift + 箭头或⇥ Tab在应用程序菜单间导航并更改焦点。
- 左侧:⇧ Shift + ←
- 右侧:⇧ Shift + →
- 上方:⇧ Shift + ↑
- 下方:⇧ Shift + ↓
内部导航
当聚焦在标签、列表或表格上时,使用箭头更改选择。
- 左侧:←
- 右侧:→
- 上方:↑
- 下方:↓
调整模块大小
- 左侧调整:⇧ Shift + A
- 右侧调整:⇧ Shift + D
- 上方调整:⇧ Shift + W
- 下方调整:⇧ Shift + S
源模块
- +或i添加新日志
过滤器模块
- 添加新过滤器:+或i
- 使用
内部导航
选择过滤器 - 编辑所选过滤器:e
日志与搜索结果模块
-
使用
内部导航
在日志间导航并应用水平滚动 -
按⌥ Option或Alt +
内部导航
进行快速滚动 -
按Page Up或Page Down分页1000行
-
导航到索引(或最接近的):⇧ Shift + G
-
切换列的打开/关闭
- i:索引
- d:日期
- d:时间戳
- a:应用
- s:严重性
- f:函数
- p:有效载荷
-
如果您处于
搜索结果
中,您可以在日志模块
中转到所选索引:⏎ Enter
搜索高亮显示
您可以通过使用搜索中的正则表达式组来突出显示搜索结果。组名应该是您想要突出显示匹配的颜色。可用的颜色列表如下
- 黑色
- 白色
- 红色
- 绿色
- 黄色
- 蓝色
- 品红色
- 青色
- 灰色
- 深灰色
- 浅红色
- 浅绿色
- 浅黄色
- 浅蓝色
- 浅品红色
- 浅青色
搜索示例
(?P<GREEN>success_ok).*(?P<BLUE>message)
自定义
您可以使用 json 文件通过命令行参数来自定义应用程序外观以及预加载格式和过滤器
lap --settings path_to_settings_file.json
- 主颜色:RGB 元组(红色,绿色,蓝色)
- 格式:{别名,正则表达式} 列表
- 正则表达式用于将行格式化为可用的列。为此,您需要捕获组。有效的组有
- 日期
- 时间戳
- 应用
- 严重性
- 函数
- 有效载荷
- 正则表达式用于将行格式化为可用的列。为此,您需要捕获组。有效的组有
- 过滤器:{别名,操作,过滤器} 列表
- 操作:以下之一
{INCLUDE, EXCLUDE, MARKER}
- 过滤器:字典
{列名: 正则表达式和颜色: RGB 元组 (红色, 绿色, 蓝色)}
。所有字段都是可选的
- 操作:以下之一
示例文件
{
"primary_color": [0, 225, 255],
"formats": [
{
"alias": "Default",
"regex": "(?P<PAYLOAD>.*)"
},
{
"alias": "Application",
"regex": "(?P<DATE>[\\d]{4}-[\\d]{2}-[\\d]{2} [\\d]{2}:[\\d]{2}:[\\d]{2},[\\d]{3}) - \\[(?P<SEVERITY>[\\w]*)\\] - \\[([ \\w]{4})\\] - \\[(?P<TIMESTAMP>[ \\d]*)\\] (?P<PAYLOAD>.*)"
},
{
"alias": "System",
"regex": "(?P<DATE>[\\d]{4}-[\\d]{2}-[\\d]{2} [\\d]{2}:[\\d]{2}:[\\d]{2}.[\\d]*) \\((?P<APP>[\\w\\d]*)[/ ]?(?P<FUNCTION>.*)\\) (?P<PAYLOAD>.*)"
}
],
"filters": [
{
"alias": "System",
"action": "MARKER",
"filter": {
"app": "system",
"color": [100, 100, 0]
}
},
{
"alias": "SIGKILL",
"action": "MARKER",
"filter": {
"payload": "SIGKILL",
"color": [255, 0, 0]
}
}
]
}
许可
MIT 许可证或 UNLICENSE 双许可。
依赖项
~19–36MB
~442K SLoC