Postfixのログをfluentdを使ってTreasureDataに送る

◆ Live配信スケジュール ◆
サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。
⇒ 詳細スケジュールはこちらから
⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください
【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました
生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!!
https://tech-lab.connpass.com/event/315703/

こんにちは、SSTDの髙橋です。 前回の更新から日が空いてしまいましたが、引き続き継続して情報発信をしていきたいと思います。

さて、社内メールにGmailなどのクラウドサービスを使うことは一般的になってきましたが、それでも社内メールサーバと連携することは一般的です。 そうした中で、メールサーバに障害が発生した際に、SSHしてメールサーバのログを必死に読み解いていくはなかなか面倒です。 そこで今回は、Postfixのログをfluentdを使ってTreasureDataに送ってみたいと思います(td-agentをご利用の方はfluentdの箇所をtd-agentと読み替えて御試し下さい)。

Ta1

 


実行環境

Postfixやfluentdの設定は既に設定済みであるとします。

  • Mac OS 10.9.4
  • Postfix 2.9.4
    • smtpにはgmailを設定済
  • fluentd 0.10.52
    • fluent-plugin-multi-format-parser 0.0.1
    • td 0.11.2

Postfixのログ内容

Postfixから出力されるログは下記に例を示します。 ログを確認すると、一つのログにも複数のフォーマットが混在している点が複雑です。

fluentd.confの内容

複数のフォーマットが混在しているログに対しては、fluent-plugin-multi-format-parserが便利です。 このプラグインによって、postfix/smtpとその他のフォーマットのログも細かめにとれるようにしています。 設定ファイルを下記に示します。設定ファイルの正規表現には、こちらのgistを参考にさせて頂きました。


結果データ

さきほどのログを、上記設定ファイルを使ってファイルに出力した場合のの結果は下記になります。

  • 1番目のPatternでマッチされた結果
2014-08-16T00:39:31+09:00 td.log.mail {"host":"mail.local","ident":"postfix/smtp","pid":"2505","key":"45A22B1F475","address":"takahashi@test.com","relay":"smtp.gmail.com[74.125.25.108]:587","delay":"6","delays":"0.01/0.01/4/2","dsn":"2.0.0","status":"sent (250 2.0.0 OK 1408117171 xq3sm28810269pab.0 - gsmtp)"}
  • 2番目のPatternでマッチされた結果
2014-08-16T00:17:29+09:00 td.log.mail {"host":"mail.local","ident":"postfix/pickup","pid":"2301","message":"668B8B1C353: uid=501 from="}

TreasureData上の結果

結果をTreasureDataに入れた場合は、下図のように格納されます。

  • テーブル情報

Ta2

 
  • レコード情報

Ta3

 

まとめ

このように一つのログ内に複数のフォーマットが存在する場合でも、fluendを使うことでうまくパースすることができ、それだけでなく、TreasureDataを使うことで長期保存や後での集計が簡単にできるようになりますね。

アバター画像
About Kai 36 Articles
マーケティング業務を担当。セミナー、勉強会の企画運営、情報発信を行う。API事業を中心に、リード獲得、ナーチャリングに注力。
ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

0人がこの投稿は役に立ったと言っています。


ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!

Be the first to comment

Leave a Reply

Your email address will not be published.


*


質問はこちら 閉じる