Apacheログの特定のURLにアクセスしたときにEメールを送信すると、電子メールが多すぎます

Apacheログの特定のURLにアクセスしたときにEメールを送信すると、電子メールが多すぎます

これに質問?src=fooは、Apacheログに示されているように、特定のURLにアクセスするたびに自動的に電子メールを送信するソリューションを見つけました(例:)。

tail -F -n0 /var/log/apache2/other_vhosts_access.log | grep --line-buffered "?src=foo" | \
        { while IFS= read -r line; do echo "$line" | mail [email protected]; done } &

しかし、問題はこのページにロードされた他のリソース(画像、アイコンなど)?src=fooおすすめまた熱:

www.example.fr:80 111.111.111.111 - - [12/Sep/2017:17:30:32 +0200] "GET /images/P26372.jpg 
  HTTP/1.1" 200 86276 "http://example.fr/?src=foo" "Mozilla/5.0"

その後、この方法を使用して連続して15の電子メールを受け取りました。

これの「消化」を制限する方法は?

"GET ... HTTP"引用した列の結果が除外されるように、検索を内部スキーマに制限しようとしましたが、どうすればよいですか。

それとも、1日に2回、すべての結果を含むEメールを送信することは可能ですかgrep? (電子メールが送信されなかったことは何も見つからなかったことを意味します)

ベストアンサー1

一部のログスキャナは私が使用するノイズを制限することがあります。sec.pl次に、次のように設定します。

type=SingleWithThreshold
ptype=SubStr
pattern=?src=foo
desc=specific-url-thing
action=pipe 'that url thing happened' /usr/bin/mail -s url-thing [email protected]
window=86400
thresh=1

関連ログを監視するデーモンインスタンスの場合。これはすぐに実行され、1日間オフになります。クリック数を集計する他のオプションもあります。詳しくはマニュアルをご覧ください。

おすすめ記事