ELK

其中, "-" (英文减号,前后各有一个半角空格)之前的内容由logback定义的格式输出, "-"之后的格式由用户或者程序代码输出

logback的pattern为:

[%date][%level][%logger:%line][SeqId:%X{SeqId}] - %msg%n
  • 公有属性使用方括号,中间不空格, 不对齐
  • date使用ISO8601格式
  • 分隔符是英文减号, 前后各有一个半角空格

logstash的filter设定(仅供参考, 开发人员无需设置)

filter {
  multiline {
    pattern => "^\[%{TIMESTAMP_ISO8601}"
    negate => true
    what => "previous"
  }
  grok {    
    match => [
      "message","\[%{TIMESTAMP_ISO8601:logDate}\]\[%{LOGLEVEL:logLevel}\]\[%{DATA:fileName}:%{INT:line}\]\[SeqId:%{WORD:seqId}\] - %{DATA:data}$"
    ] 
  }
  if "_grokparsefailure" in [tags] {
    drop{}
  }
  date {
    match => ["logdate", "ISO8601"]
  }
  kv {
    source => "data"
    field_split => ","
    value_split => "="
  }
}

References

  1. ELKstack 中文指南
  2. 直播CDN Logstash 规范
  3. Kubernetes-在Kubernetes集群上搭建Stateful Elasticsearch集群

results matching ""

    No results matching ""