Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия | |||
| software:monitoring:fluent-bit:multiline [2025/11/25 23:19] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | software:monitoring:fluent-bit:multiline [2025/11/25 23:19] (текущий) – ↷ Страница перемещена из software:fluent-bit-loki-grafana:fluent-bit:multiline в software:monitoring:fluent-bit:multiline mirocow | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== Обработка многострочных логов ====== | ||
| + | === fluent-bit.conf === | ||
| + | |||
| + | <code ini> | ||
| + | [SERVICE] | ||
| + | flush 1 | ||
| + | log_level | ||
| + | parsers_file parsers_multiline.conf | ||
| + | |||
| + | [INPUT] | ||
| + | name tail | ||
| + | path | ||
| + | read_from_head | ||
| + | multiline.parser multiline-regex-test | ||
| + | |||
| + | [FILTER] | ||
| + | name | ||
| + | match * | ||
| + | key_name | ||
| + | parser | ||
| + | |||
| + | [OUTPUT] | ||
| + | name | ||
| + | match * | ||
| + | </ | ||
| + | |||
| + | === parsers_multiline.conf === | ||
| + | |||
| + | <code ini> | ||
| + | [MULTILINE_PARSER] | ||
| + | name multiline-regex-test | ||
| + | type regex | ||
| + | flush_timeout 1000 | ||
| + | # | ||
| + | # Regex rules for multiline parsing | ||
| + | # --------------------------------- | ||
| + | # | ||
| + | # configuration hints: | ||
| + | # | ||
| + | # - first state always has the name: start_state | ||
| + | # - every field in the rule must be inside double quotes | ||
| + | # | ||
| + | # rules | state name | regex pattern | ||
| + | # ------|---------------|-------------------------------------------- | ||
| + | rule " | ||
| + | rule " | ||
| + | |||
| + | [PARSER] | ||
| + | Name named-capture-test | ||
| + | Format regex | ||
| + | Regex / | ||
| + | </ | ||
| + | |||
| + | === test.log === | ||
| + | |||
| + | < | ||
| + | single line... | ||
| + | Dec 14 06:41:08 Exception in thread " | ||
| + | at com.myproject.module.MyProject.badMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.oneMoreMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.anotherMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.someMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.main(MyProject.java: | ||
| + | another line... | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | $ fluent-bit -c fluent-bit.conf | ||
| + | |||
| + | [0] tail.0: [1669160706.737650473, | ||
| + | "}] | ||
| + | [1] tail.0: [1669160706.737657687, | ||
| + | at com.myproject.module.MyProject.badMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.oneMoreMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.anotherMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.someMethod(MyProject.java: | ||
| + | at com.myproject.module.MyProject.main(MyProject.java: | ||
| + | "}] | ||
| + | [2] tail.0: [1669160706.737657687, | ||
| + | "}] | ||
| + | </ | ||