【问题标题】:Fluent bit larger log from docker来自 docker 的 Fluent 大点日志
【发布时间】:2022-11-28 05:56:22
【问题描述】:

我想从 Java 应用程序记录的标准输出中读取日志。作为我使用 docker 的解析器,日志正在向前发展。问题是一些日志很大,尤其是一些堆栈跟踪的地方。日志被分成许多日志,问题是日志甚至是异常消息都是可见的。配置将在 Kubernetes 上运行,但为了测试我使用 docker。

[INPUT]
   Name              forward
   Listen            0.0.0.0
   Port              24224
   

[FILTER]
    name             parser
    match            *
    key_name         log
    parser           docker

[OUTPUT]
    Name   stdout
    Match  *

我尝试联系日志,但使用此配置不起作用:https://docs.fluentbit.io/manual/pipeline/filters/multiline-stacktrace#docker-partial-message-use-case

【问题讨论】:

  • 我不明白这个问题。当然,您希望异常消息在日志中可见,对吧?
  • 异常消息被拆分到下一个日志,这意味着堆栈跟踪在 10 个或更多单独的日志中

标签: docker fluent-bit


【解决方案1】:

此设置对我有用:

流利的 bit.conf

[SERVICE]
  flush                 1
  log_level             info
  parsers_file          parsers_multiline.conf

[INPUT]
  name                  tail
  refresh_interval      5
  path                  /var/log/*.log
  read_from_head        true

[FILTER]
  name                  multiline
  match                 *
  multiline.key_content log
  multiline.parser      go, multiline-regex-test

[OUTPUT]
  Name http
  Match *
  Host data-prepper
  Port 2021
  URI /log/ingest

parsers_multiline.conf

[MULTILINE_PARSER]
    name          multiline-regex-test
    type          regex
    flush_timeout 1000
    rule      "start_state"   "/^2022.*/"  "cont"
    rule      "cont"          "/^(D{4})/"                     "cont"

资料来源:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-16
    • 1970-01-01
    • 1970-01-01
    • 2019-04-24
    • 2016-03-08
    • 1970-01-01
    • 1970-01-01
    • 2022-08-19
    相关资源
    最近更新 更多