2024年12月21日
システムの仕様上、稀によくめちゃめちゃ長いログが発生することがありますね(?)。そういう時、そのまま出してしまうとログを収集したり集約したりするどこかの上限に引っかかってしまうことが考えられます。もしくは、閾値を超えたときに分割される場合もありますが、JSON のような構造化ログを送るようなケースでは分割されるとデータが破損してしまいます。そのような背景から、長いログの場合にはアプリ側で分割して構造化ログを吐き出せるようにした方がいいと考えて、作ってみました。 ## 成果物 ```python:pys
2024年7月1日
Go 1.21 から使えるようになった標準の構造化ログライブラリ slog を使ってロギングをうまくやろうと画策してみました。 ## やること * 標準出力と Slack にログを送る * 標準出力には全部のログ * Slack には指定したログのみを送る !uml 今回は送信先として Slack を使用していますが、samber 氏が Fluentd や Kafka 等様々なライブラリを公開してくれているので、用途に合わせて見てみると良いと思います。 ## 環境 * Go 1.22.
2024年1月15日
Docker のログドライバーは 16KiB (16384 バイト) 以上のメッセージの場合、ログを分割してしまいます。 fluent-plugins-nursery/fluent-plugin-concat を使うことで分割されてしまったログを連結して1つにまとめられるようなので検証してみました。 ## 試してみる 用意したファイルは以下です。16383バイトのログと16384バイトのログを20秒間隔で出力するアプリを用意して docker の fluentd ログドライバーで fluentd コ
2023年7月5日
Fluentd の fluent-plugin-s3 を使ってニフクラのオブジェクトストレージサービスにログをアップロードする時のメモです。 ## ポイント * `s3_endpoint` を指定する * https://jp-east-1.storage.api.nifcloud.com または https://jp-west-2.storage.api.nifcloud.com * 参照: エンドポイント * `force_path_style` を true にする * オブジェクト