「RegEx」を使用してメールログを効率的に取得する方法

「RegEx」を使用してメールログを効率的に取得する方法

メールログを効果的に検索する方法に関するアドバイスや例を探しています。

このような場合だとしましょう。

-------- Forwarded Message --------
Subject: Fwd: Re: Notice of Allowance 
Date: Fri, 13 Mar 2015 16:02:17 +0530
From: Sachin Tendulkar <[email protected]>
To: Brett lee <[email protected]>
CC: 'Brian Lara' <[email protected]>

今の問題は受信者がメッセージを受け取っていないということですが、問題が何であるかを調べる必要がありますgrepping

私がやったことは、キューIDを再びgrepするだけでした。grep "from=<[email protected]>" /var/log/mail.log

syntax私の質問は:私が使用したコマンドが83の結果を返したので、正確なメッセージを検索したり検索結果を絞り込む最も効率的な方法は何ですか?

PS:良い資料へのリンクSearching Logsも非常に役立ちます。

答え1

SFに関するこの投稿のアイデアを使用できます。 grep postfixログに助けが必要です

まず、基準に一致するすべてのキューIDSを検索する必要があります。これを行うには、次のコマンドを使用できます。

grep 'from=<[email protected]>' /var/log/maillog | cut -d ' ' -f 6

または

grep 'to=<[email protected]' /var/log/maillog | cut -d ' ' -f 6

その後、ログのキューIDを使用して、キューIDに基づいてすべての情報を一覧表示できます。

grep 'to=<[email protected]>' /var/log/maillog | cut -d ' ' -f 6 | grep -f - /var/log/maillog

もちろん、これはすべての項目をリストし、grep nrcpt=3必要に応じてパイプします。

grep 'to=<[email protected]' /var/log/maillog | cut -d ' ' -f 6 | grep -f - /var/log/maillog | grep nrcpt=3

追加情報:

上記のメールのみリストメールヘッダのアドレス。ただし、サフィックスのみ封筒住所記録

関連情報