当前位置: 首页 > 后端技术 > Java

弹力叠那些东西【11】

时间:2023-04-01 18:16:14 Java

输入插件指定数据输入源。一个管道可以有多个输入插件。kafka.stdin文件主要有3个。最简单的输入是从标准输入读取数据。一般配置为codec,codec类型为string。自定义事件的类型,可用于后续判断标签类型为数组,自定义本次事件的标签,可用于后续判断。add_field类型为hash用于向事件输入插件文件中添加一个字段。从日志文件等文件中读取数据通常需要解决几个问题。如何只读一次文件内容,即重启ls是从上次位置继续读取-sincedb如何读取文件的新内容定时检查文件是否更新如何发现新文件并定时读取检查文件archiverotation操作是否影响当前内容读取?不影响归档文件的内容,可以继续读取。路径类型是数据。根据glob匹配语法指定要读取的文件路径path=>["/var/log/*/.log"]exclude乐行排除数据不想监听文件规则根据glob匹配语法exclude=>"*.gz"sincedb_path类型为字符串记录sincedb文件路径start_position类型为字符串beginning或end是否从头读取文件stat_interval类型为数值,单位秒检查文件是否更新discover_interval类型检查数据单位秒是否有新文件定时读取。默认值为15秒。ignore_older类型是数据单位秒。在扫描文件列表时,如果文件的最后一次更改事件超过了设置的时间,则不会处理,但仍然会被监听。新内容close_older类型是秒的数值单位。如果监听的文件超过这个设置,事件中没有新的内容,会关闭文件句柄释放资源,但还是会监听是否有新的内容。默认的3600秒是一个小时。codecplugincodecplugin功能domaininputoutputplugin负责原始事件和logstash事件之间的数据转换。常见的是明文读取原始内容点,将内容简化为点输出。rubydebug以ruby格式输出logstash事件,方便调试带换行的行处理contentjsonprocessjsonn格式内容multiline处理多行数据编解码插件multilinepattern设置行匹配正则表达式可以使用grokwhatprevious|next如果匹配成功,则匹配行属于上一个事件还是下一个事件negatetrueorfalse是否否定patternfilterpluginfilter的结果是ls功能强大的主要原因。可以对logstashevent进行处理,比如解析数据,删除字段类型转换等,常见如下date日期解析grok正则匹配解析dissect定界符解析mutate字段处理比如重命名deletereplacingjson根据json解析字段内容到指定fieldgeoip添加地理位置数据ruby??使用ruby代码动态修改logstasheventdatematch类型为数组指定日期匹配格式一次可以指定多种日期格式match=>["logdate","MMMddyyyyHH:mm:ss","MMMdyyyyHH:mm:sss","ISO8601"]target类型是一个字符串,用来指定赋值的字段名默认是@timestamptimezone类型是一个字符串,用来指定时区