logstash基础知识
logstash给事件加的额外字段
- host标记事件发生在哪里
- type标记事件唯一类型
- tags标记事件的某方面属性,数组
- @timestamp标记事件发生事件
过滤插件的通用方法: add_tag、 remove_tag、 add_field、 remove_field, 在插件过滤匹配成功时生效
语法
- 区域, {}定义区域,区域内可以包括插件区域定义
- 数据类型, bool、string、number、array、hash
- 字段引用:[]引用字段的值,[geoip][location][0], 也支持倒序[geoip][location][-1]
- 变量内插:
the longitude is %{[geoip][location][0]}"
条件判断
- equality: ==, !=,<, >, <=, >=
- regexp: =~, !~
- inclusion: in, not in
- boolean: and, or, nand, xor
- unary: !()
命令行参数
- -e 执行一段字符串脚本
- -f 或–config 指定配置, logstash -f /etc/logstash.d/会自动读取该目录下所有文件文本,拼接成完整的大配置,各小配置会以字母排序加载,因此最后以数字编号方式命令配置文件
- -t 测试配置文件是否能正常解析
- -l或–log ,logstash默认输出日志到标准错误。该选项可指定日志输出位置,如 bin/logstash -l logs/logstash.log
- –pipeline-workers或-w, 运行filter和output的pipline线程数量,默认是cpu核数
- –pipeline-batch-size或-b, 每个logstash pipline线程,在执行具体filter和output函数之前,最多能累积的日志条数,默认125条,越大性能越好,消耗jvm内存也越大
- –pipline-batch-delay或-u, 每个线程在打包批量日志的时候,最多等到几毫秒,默认5ms
- –pluginpath或-P, bin/logstash –pluginpath /path/to/own/plugins加载插件
- –verbose, 输出一定调试日志
- –debug输出更多调试日志
5.0以后版本,config/logstash.yml文件,可以设置启动命令如:
pipline:
workers: 24
batch:
size:125
delay:5
插件命令
- 查看插件: bin/logstash-plugin list 查看本机可用插件
- 安装插件: bin/logstash-plugin install logstash-output-webhdfs
- 升级插件: bin/logstash-plugin update logstash-input-tcp
长期运行
- nohup cmd & 后台运行
- screen
# 学习screen
1. 创建: screen -dmS elkscreen_1 (可以自定义)
2. 连接已创建的elkscreen_1: screen -r elkscreen_1, 然后看到一个一模一样的新终端,运行logstash,不ctrl+c,而按 ctrl+A+D,重新连接也是-r
3. 查看创建的screen: screen -list
- supervisor,请看地址
http://blog.csdn.net/ricky110/article/details/77430387