Releases: qiniu/logkit
Releases · qiniu/logkit
v1.5.0
Features
- 完成reader、sender、parser拆包,代码重构
- 增加了数字转换为IP的Transformer ,将以十进制数字存的IP,以8位二进制的方式每八位拆分,构成一个IP字符串。
- 支持外部plugin功能
- 对应网络的metric数据支持直接计算每秒平均值
- ip Transformer支持datx格式
- 增加了kodo导出时选择json、csv格式时的压缩选项
- 增加了kodo导出时选择导出的分片模式
- 增加了mapreplace Transformer,可以根据一个json的文件,按map形式key,value的替换字段内容
- 增加了导出mysql历史库的功能,现在你可以通过前缀、日期魔法变量、结尾通配等多种方式全量导出mysql的历史数据
- syslog parser增加了默认行数限制,防止错误数据情况下内存泄露。
- 优化了pandora-go-sdk写点时的格式化性能,性能提升10%以上
- 优化了logkit发送时选择 concurrent时的性能,性能提升在50%以上
- 优化了mysql读取的场景,不再需要通过解析,性能提升在30%以上
- 为mysql读取历史库数据增加了lag显示,可以看到剩余多少数据没有读取
- 前端增加了"runner另存为" 功能, 类似配置不再需要重复配置
- tailx模式支持cleaner
Bugfixes
- 修复读取文件时,在极小概率下某个文件刚准备读但是被删除后产生的死循环问题
- 修复mysql中表为纯数字时读取失败的问题
- 修复Socket reader无法close的问题(会一直占用端口)
- 修复多个reader write on closed channer导致的panic问题
- 修复kafka reader不输出错误日志的问题,更新了kafka的client库,解决了部分服务端不读取数据的问题
- 修复了ip Transformer传输不正确的文件可以带来的panic问题
- 修复了tailx模式可能存在的panic风险
- 修复了某种情况下文件读取的lag为负数的问题
v1.4.9
Bugfixes
- 修复了reader中dir模式下读取文件时间长了以后就暂停的问题,原因是inode判断没有加上文件名,请用户第一时间从v1.4.8升级到v1.4.9
- 修复了cloudtrail reader中metastore不断append全部数据的问题
- 修复了不同runner中,相同的cloudtrail reader中dir和metastore会相同的bug
- 修复了windows下CPU显示的可能不准确的问题
v1.4.8
Features
- cloudtrail reader支持reset功能
- cloudtrail reader支持zip文件
- 在schemafree过程中加上了日志,可以看到调用pandora的接口哪一步报错
- 避免了不必要的repo更新,减少了pandora schema free接口去更新repo的频率
- 支持了windows的metric监控
- 为useragent Transformer增加了选项,可以选择部分功能,大大增加了性能
- 为convert Transformer 增加了default值功能
- 为mysql reader读取中文字段时增加了编码选择,解决了默认utf时可能存在乱码的问题
- pandora sender支持配置logdb字段的分词
- 增加了mysql reader 自动读取数据库表的能力
- 为mysql reader的Database增加了魔法变量支持
- 去掉了读取数据时过大会忽略数据的条件,现在仅交给sender判断
- 前端增加了batch_size选择
- 前端增加了cleaner的配置
- 为script Transformer增加参数功能,现在把field的值作为参数传入,可支持传多个field的值
Bugfixes
- 修复了key只存在数字时 pandora_convert transformer无效的问题
- 修复Cloudwatch metric读取时只填写dimension无法读取的问题
- 修复了解析时会去除不应该去除的多余空格问题
- 修复了文件为软连接时,cleaner删除数据时出错的问题
- 修复了文件不存在时 reader一直在等待读取文件导致死锁的问题
- 修复了sender的错误在前端不显示的问题
- 修复了cloudtrail reader在bucket不存在时报错为
301 response missing Location header
无法理解的问题 - 修复了当前读取的文件被删除导致lag size为负数的问题
- 修复了pandora sender中 map类型实际为string不能转换的问题,现在会构造一个map将值传进去
- 修复了kafka sender中的空指针问题, 感谢 @xxh2000
- 修复了前端在获得runner状态时接口pending还不断轮询的问题
- 修复了文件reader中dir模式下,DataSource数据不准确的问题
- 前端修复了extra_info选项修改为false后还是默认为true的问题
- 前端修复了折叠的依赖项修改时不赋值的问题
v1.4.7
Features
- 后端的reader/parser/transformer/sender的配置项增加了tooltip的描述
- logkit默认导出到pandora创建的日志分析仓库使用全文索引
- 增加了Cloudwatch Reader
- pandora_sender增加了number_as_float选项,开启后会将所有数字都识别为float类型
- 增加了cloudtrail reader
- reader改为注册模式(reader registry)
- 增加了csv模式下可以schema和数据不匹配的情况
- pandora sender支持https发送端insecure的情况
- urlparm transformer支持带path,并解析出path
Bugfixes
- 修复了前端 extra_info 会带双引号导致runner无法创建的bug
- 修复了transformer的错误不在stats接口中展示的问题
- 修复了grok不过滤空值导致空值覆盖实际值的问题
- 修复了在某些异常情况下读取数据性能降低,CPU消耗增大的问题
- 修复了某些情况下数据中带有空值会panic的问题。
- 修复了空值情况下 json和xml parser/transformer报错的情况
v1.4.6
Features
- 增加xml Transformer,直接解析xml数据
- grok Pattern 支持带有中文字符的情况去解析。
- 当schema free关闭时,仍然会创建pandora_stash,解决关闭了schema_free 发送时报pandora_stash字段不存在的问题。
- 增加了一个grok Pattern,支持读取换行符 GREEDYDATALINEFEED
- 全局增加extra_info 参数,支持runner中带上hostname、ip、system、version
- 增加了file sender中的path可以填写模板变量的能力,现在file sender可以根据日期归档文件。
Bugfixes
- 修复url param,使用标准化url解析代替根据
&
切割。 - 修复一些Transformer使用原来的key可能导致的字段类型冲突问题,现在类型不同的Transform不允许使用原来的字段。
- 修复kafka reader在kafka集群关闭时继续读会导致logkit panic的问题。
- 修复开启2个以上的metric runner会导致logkit panic的问题。
- 修复 pandora_key_convert Transformer 在某些情况会遗留一个
_
作为前缀导致仍然无法发送到pandora的问题。
v1.4.5
Features
- 增加了 pandora key convert transformer,可以将不符合pandora 字段类型的key字符转化为下划线。
- 增加了clocktrail transformer,针对 AWS ClockTrail的数据做格式转换。
- 增加了UserAgent Transformer,针对浏览器的UserAgent进行数据的解析并扩展。
- 增加了mysql log parser,用于解析mysql慢请求日志。
- 增加了http metric功能,可以实现自定义请求,持续验证某个服务是否可用。
- 全面优化logkit前端配置,大大简化了logkit配置的复杂度。
- 大量前端美化。
Bugfixes
- runner错误信息中,修复了一旦sender出现错误就再也不会消失的问题。
- 将metric信息默认发到TSDB改为默认发到logdb。
- 修复了pandora sender中,tsdb series配置不生效的问题。
v1.4.4
Features
- 增加了snmp reader 可以根据snmp协议收集数据
- 增加了高级选项标记
- 支持通过环境变量增加数据tag
- pandora sender增加unescape选项,解决
\t
\n
发送是被转为\\t
\\n
的问题 - 增加了kafka reader的lag统计
- 增加了tailx reader的lag统计
- 增加了解析失败的数据默认记录到
pandora_stash
字段的功能,同时也可以在配置时使用disable_record_errdata
禁用,默认情况下解析失败的数据会作为pandora_stash
字段发送
Bugfixes
- 修复了metric runner运行时类型判断问题,现在默认都是float
- 修复了cleaner在文件被删除时传递了""导致判断为"."而无法正常删除的问题
- 修复 reset donefile 信息时会删除整个 meta 文件夹的问题
- 修复了parse错误的信息不在web上显示的问题
- 修正了一批数据发送到pandora可能会更新多次pandora资源schema的问题,现在一批数据只会更新一次
v1.4.3
Features
- 增加了kafka zookeeper的chroot选择,解决了某些用户的kafka集群信息不在zookeeper根目录情况下无法使用logkit的问题。
- 增加了采集进程信息的metric采集功能,用户可以选择某些进程进行监控
- 增加了reader时读取一个json文件作为数据标签的功能,用户可以准备一个json文件,将里面的数据作为tag加入到每一条data中。
- 增加了json Transformer功能,用户可以将一个json字符串解析成一个map放置到对应的数据点中。
- 增加了可以关闭web server的功能,减少logkit作为纯粹的agent收集数据的开销
- 增加了parser中,数据解析错误时,将原始数据作为string放到pandora_stash字段的功能
- 增加了一系列readdata、parsedate、senddate的函数调用,使得配置可以方便的分段确认。
- 增加了script reader,用户可以直接在logkit定时调用某个脚本得到数据.
- 增加了snmp reader,用户可以配置logkit直接从snmp协议中读取数据
- 增加了influxdb sender中自动创建database、series以及retention policy的功能
Bugfixes
- 前端修复了修改格式提示json错误过于频繁的问题
- 修复了tailx模式下reset不生效的问题
- 修复了数据中有空的map导致打点失败的问题
- 修复了logkit在关闭sender时超时,继续打点有可能会导致panic的问题
- logkit前端Transformer功能由英文显示改为中文显示
v1.4.2
Features
- 增加了sender的route功能
- 增强了sql_reader的自动识别数据类型的能力
- 增加了自动更新的命令
logkit -upgrade
从这个版本开始,你可以通过这个命令自动更新 - 集群模式下备份配置文件失败时回滚
- 集群模式下master 对 slave 的命令改为并行执行
- 在数据发送失败时,json化后直接作为pandora_stash字段发送。
- 增加了lable transformer,可以增加数据标签
- 增加了http reader,可以接受http形式传来的数据
- 增加了http sender,可以将数据以http形式发送
- 增加了一种内网使用logkit中转数据的方案,通过这个版本,你的logkit在内网也可以发送数据到中转的logkit再发送出来。
- logkit支持发送数据到pandora的dag版本(新版本)
- 机器的metric数据导出到logdb,分词从原来的标准分词改为不分词
- dir模式下,sourcetag现在能看到具体是从哪一个文件发送的。
- 前端添加Transformer时提示更友好,你不会再忘记添加Transformer
- 使用jsoniter包替换标准的json库,json相关的部分性能提升一倍以上。
- 增加了jsonstring的校验,使得
ignore_invalid_field
,开启后可以自动筛选不符合的jsonstring字符串
Bugfixes
- 修复了k8s获取的containerID和实例ID的情况
- 修复了csv_parser在jsonmap unmashal的时候json.Number解析的问题
- dir模式下,按文件的修改时间排序,精确到纳秒,如果时间相同,以文件名排序,修复了同一时间的日志只读一份的问题
- 修复了Transformer中的bool类型在前端创建成string的情况
- 修复前端展示时,字段说明过长导致部分不显示的问题,现在会改为换行
v1.4.1
Features
- 增加了PostgreSQL Reader,可以读取PostgreSQL中的数据
- 增加了Elasticsearch v6的支持,包括reader和sender
- 增加了在配置中直接写slave的tag和ip的支持
- 增加了logkit的日志输出到文件的配置
- 增加了logkit命令行,可以显示版本号等信息
- 增加了Elasticsearch Sender按日期创建索引所参照的时区选项
- 在elasticsearch sender中增加了logkit发送时间
- 增强replace trancesformer, 使其支持正则替换
- 增强所有transformer,使其支持转换二级及以上字段(层级字段之间分隔符为
.
) - 增加Rename Transformer,你可以通过这个功能重命名你的字段
- Redis Reader支持多频道订阅和多key值读取数据
- 增加了一种autofile文件读取模式,帮助用户自动选择该使用的文件读取模式
- 为 csv parser 添加是否自动将字段名称中的'-'更改为'_'的选项
- 前端样例数据测试 parser 出错时,给出详细错误信息
Bugfixes
- 修复了date Transform的前端bug
- 修复了metric runner的失败重发会引入重复的extrainfo的bug
- 修复elasticsearch sender启用重命名会丢失其它字段的bug
- dir模式下检测下一个log文件时,对文件修改时间做纳秒级比较,修复了两个文件修改时间特别接近时,略过一些文件的问题
- 修复了一些极小概率情况下出现的并发读写导致panic的问题