web-dev-qa-db-ja.com

監視ログファイルの内容

Monitsのコンテンツチェックに問題があります。私はこのようにログファイルをチェックできることを知っています

check file test.log with path logs/test.log
if not match "something" for 5 cycles then alert

しかし、ログファイルには非常に多くの変数があり、その成長は非常に速いため、すべての行で警告が表示されます。私が抱えている問題は、他のすべてを無視する必要があるということです。モニットチェックの内容で無視変数を使用してそれを行うことができることは知っていますが、毎秒変化する数値があるため、それは役に立ちません。このログファイルをチェックアウトする方法が必要です。データベースが失われた場合、エラーデータベースがなくなったため、ログファイルが増え続けているため、ファイルサイズとタイムスタンプは役に立ちません。メッセージがユーザーに送信されていることを確認できるように、監視する方法が必要です。誰かがこれに対する良い解決策を持っていますか?私は本当にそれが必要です。

2
mYzk

これに対する部分的な修正は、検索を固定することです。

check file messages with path /var/log/messages
    ignore match ".*monit"
    if match "trying to execute job" then alert

または、正規表現を磨くか、より適切またはより代表的な文字列を検索します。障害状態をより明確に示すことができるアプリケーションログを追加できますか?

あなたは基本的にこの頻度の何かを"5サイクル(5分)の間起こらない場合は私に警告してください"で探しています、多分より良いアプローチは一般的な非アクティブログモニターです。 Monitは解決策ではないかもしれません。

2
ewwhite