标签:简单 cti logs line 性能 选择 file 1.2 utf8
SLogViewer是一个基本开源界面库SOUI开发的开源的通用的高性能LOG分析工具, 轻松支持上百万行级别的LOG过滤. 支持LOG格式配置. 只要是固定格式的LOG理论上都可以支持.
下载: http://pan.baidu.com/s/1nuHISOD (1.2M)
源代码: https://github.com/soui2/soui.
获取源代码后完整编译, 在demos/SLogViewer里可以找到.
主界面分为4个区:
1区提供了tag, pid, tid的列表, 清除选择可以过滤指定的列表项.
2区是LOG的全文.
3区是功能区, 级别下拉窗口可以调整显示的LOG级别, 过滤设置支持多关键词过滤, 关键词间使用"|"分隔. 例如: test|-test2 ,这个过滤条件代表过滤包含test但是不包含test2的log记录.
4区是LOG列表显示区, 过滤条件只影响4区,不影响2区.
SLogViewer使用一个配置格式表来支持不同的log格式.
打开配置表, 可以看到内置了3种格式. 下面对格式做一个简单说明.
每一种格式是logs结点下的一个log结点.
每一种格式有两个属性:name, codepage. name就是LOG的一个名称, 只要在配置列表中唯一即可. codepage代表的是log的编码. 这里为了编码简单, 使用了API里的数值. 例如 65001代表的是CP_UTF8
第一个格式有两个子节点: levels, format.
levels代表LOG中包含的LOG level, 使用","分隔.
format是配置的重点, 代表的是每一行LOG的格式. SLogViewer内置了$(time), $(pid), $(tid), $(level), $(tag), $(content), $(file), $(module), $(function), $(line), $(package), $(unknown) 这些列. 每一列可以使用[x]指定一个最小列宽, 例如$(time[23])代表time这一列最少要占用23个字符. 如果一种LOG格式中包含上面没有支持的列, 可以使用$(unknown)来忽略显示, 以便保证格式解析正确.
标签:简单 cti logs line 性能 选择 file 1.2 utf8
原文地址:http://www.cnblogs.com/setoutsoft/p/7721929.html