Filebeat multiline模式

multiline.pattern

指定要匹配的正则表达式模式。 请注意,Filebeat支持的正则表达式模式与Logstash支持的模式有些不同。 有关受支持的正则表达式模式的列表,请参见正则表达式支持。 根据你配置其他多行选项的方式,与指定正则表达式匹配的行将被视为上一行的延续或新多行事件的开始。 你可以设置 negate 选项以否定模式。

multiline.negate

定义是否为否定模式,也就是和上面定义的模式相反。 默认为false。

multiline.match

指定Filebeat如何将匹配的行组合到事件中。 设置在之后 (after) 或之前 (before)。 这些设置的行为取决于你为否定指定的内容:

processors:
  - script:
      when:
        has_fields: [ 'log.file.path' ]
      lang: javascript
      id: add_env_info
      source: >
        function process(event) {
            var logPath=event.Get("log.file.path");
            event.Put("fileset.env", /\/data\/kairui-(\w+)\/\w+/.exec(logPath)[1]);
            event.Put("fileset.project", /\/data\/kairui-\w+\/(\w+)/.exec(logPath)[1]);
            if(/project[a-z-]*\.log$/.test(logPath)){
               var msgInfo = /([\d-]+\s[\d:]+[\.\d]*)\s+([A-Z]+)/.exec(event.Get("message"));
               if(msgInfo.length>2){
                  event.Put("log_time", msgInfo[1]);
                  event.Put("fileset.level", msgInfo[2]);
               }
            }
        }
  - timestamp:
        field: log_time
        timezone: Asia/Shanghai
        layouts:
          - '2006-01-02 15:04:05'
          - '2006-01-02 15:04:05.999'
          - '02/Jan/2006:15:04:05 +0800'
        test:
          - '2020-08-05 16:21:51.824'
          - '26/Jan/2022:15:06:12 +0800'

最后通过官网指导链接、将filebeat内置的dashboard导入到Kibana里面 https://www.elastic.co/guide/en/beats/filebeat/current/load-kibana-dashboards.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Captcha Code