配置

filebeat.yml文件的filebeat部分示例

  1. filebeat.prospectors:
  2. - input_type: log
  3. paths:
  4. - /bigdata/stk/log/*.log
  5. - input_type: log
  6. paths:
  7. - /bigdata/stk/components/stkgateway/log/*.log
  8. document_type: javalog # 定义写入 ES 时的 _type 值
  9. multiline:
  10. #pattern: '^\s*(\d{4}|\d{2})\-(\d{2}|[a-zA-Z]{3})\-(\d{2}|\d{4})' # 指定匹配的表达式(匹配以 2017-11-15 08:04:23:889 时间格式开头的字符串)
  11. pattern: '^\s*("{)' # 指定匹配的表达式(匹配以 "{ 开头的字符串)
  12. negate: false # 是否匹配到
  13. match: after # 合并到上一行的末尾
  14. max_lines: 1000 # 最大的行数
  15. timeout: 30s # 如果在规定的时候没有新的日志事件就不等待后面的日志
  16. fields:
  17. logsource: hadoop-node1
  18. logtype: javalog
  19. output.elasticsearch:
  20. hosts: ["hadoop-node1:9200"]

启动

  1. ### 后台启动生成日志文件,进入file-*.*.*目录下
  2. nohup ./filebeat -e -c filebeat.yml -d "Publish" & > nohup.out
  3. ### 后台启动不生成日志
  4. ./filebeat -e -c filebeat.yml -d "Publish" >/dev/null 2>&1 &