Slide 1

Slide 1 text

2024.06.13 JAWS-UG 東京 #12 s.hiruta (@web_se) java, pythonのStackTraceにまたがる場合に有益な Multiline filter pluginについて

Slide 2

Slide 2 text

Self introduction 【名前】 s.hiruta ( @web_se ) 【仕事】 コンテナ、マイクロサービス基盤構築 【興味分野】 Containers、WASM+LLM、 Github clouddev-code zenn clouddevcode 2

Slide 3

Slide 3 text

Previous LT Slide https://speakerdeck.com/cloudevcode 3

Slide 4

Slide 4 text

セッションの目的 multiline filterの概要、導入注意点 • 導入の背景 • 導入で期待されること • 具体的な使用例 • 4

Slide 5

Slide 5 text

アジェンダ • Containerログどう収集していますか • ログ収集パターン • メジャーなFluentbitについて深掘り • StackTraceなど複数行にまたがるときの問題点 • Mulitiline filter • filter設定時の注意点 • Rewrite tag併用時の注意点 • まとめ 5

Slide 6

Slide 6 text

コンテナログ収集どうしていますか • 6

Slide 7

Slide 7 text

ECS https://aws.amazon.com/jp/blogs/news/under-the-hood-firelens-for-amazon-ecs-tasks/

Slide 8

Slide 8 text

8 EKS https://aws.amazon.com/jp/blogs/news/fluent-bit-for-amazon-eks-on-aws-fargate-is-here-jp/

Slide 9

Slide 9 text

ログ収集パターン • AWSlogs driver • Fluentbit • OpenTlemetry logging 9

Slide 10

Slide 10 text

AWSlog drvierによるログ収集 • 手軽だけど、Cloudwatch logsからS3にエクスポー トするときは、Amazon Firehoseあるいは、 EventBridgeを利用する必要がある • Cloudwatch logsのPutLogEventsは高価 10

Slide 11

Slide 11 text

Fluentbit 11 ● super fast, lightweight and high scalable logging and metrics processor and forwarder https://www.fluentbit.io/

Slide 12

Slide 12 text

OpenTelmetry logging • OtelでContext Propagationの考え方でメトリクスとトレースと の相関があり、個々の価値向上を図れそう 12 https://opentelemetry.io/docs/specs/otel/logs/

Slide 13

Slide 13 text

Fluentbitについて深掘り 13

Slide 14

Slide 14 text

Fluentbitの仕組み 14

Slide 15

Slide 15 text

Fluentbitの仕組み • 15

Slide 16

Slide 16 text

Java、PythonなどStackTrace messageのときの問題点 16

Slide 17

Slide 17 text

 Multiline filter • 複数のレコードやログ行に分割されたメッセージを 連結するのに役に立ちます。例としてスタックト レースやログを複数行に分けて出力するアプリ ケーション 17

Slide 18

Slide 18 text

 Multiline filter 18

Slide 19

Slide 19 text

 Multiline filter 19

Slide 20

Slide 20 text

 Multiline filter 20

Slide 21

Slide 21 text

 Rewrite tag 21 • ログレベルの文字列で出力させたい、別の出力先 に出したいときに利用する • Multiline filterと併用する場合、Rewrite Tagで変更 した後のタグが、Multiline の条件に一致しないよ うにする必要がある

Slide 22

Slide 22 text

 Rewrite tag 22

Slide 23

Slide 23 text

Athena • ログ連結することでAthenaのログフィールドにマー ジさせてクエリすることができる 23

Slide 24

Slide 24 text

 まとめ • 複数行のログメッセージをマージするときに便利 • Rewrite Tagとの併用に気をつける 24

Slide 25

Slide 25 text

 索引 • Multiline – https://docs.fluentbit.io/manual/pipeline/filters/multiline-stacktrace • Fluent Bit の Multiline Praserを使用して複数行ログを収集する – https://zenn.dev/nh8939/articles/add269d15152ba • Fluent Bit v3.0 Documentation – https://docs.fluentbit.io/manual 25

Slide 26

Slide 26 text

26 https://github.com/aws-samples/whats-new-summary-notifier AWS What’s new の 情報をクロールし、 Claude 3にまとめを chatに投稿ツール ツールを改造して、 GoogleChatのスペー スに飛ばすこともで きる おまけ