web-dev-qa-db-ja.com

ノイズの多いロギングアラートをクリーンアップするためのいくつかの良いパターンは何ですか

アプリケーションからの従来のロギングに加えて、 Elasticsearch、組織には、HTTPを介してアプリケーションから送信されたログメッセージ/例外イベントを受信し、潜在的な問題を開発者に通知するアラートシステム " Sentry "がある場合があります。

Sentryに「アクション可能な」イベント(データベースへの接続エラーなど)が含まれているだけでなく、多くの「アクション不可能な」イベント(ユーザー入力を処理できなかったなど-ユーザーを期待している)で汚染されているとします。再試行するには、DevOpsが行うことは何もありません)。

良いイベントデータと悪いイベントデータが混在するシステムから、アラートが再び意味のあるものになり、無視されないように、良いデータのみを含むクリーンなシステムに移行するためのオプションは何ですか?

例:1)ぶら下がっている果物/最も一般的なイベントから始めて、各イベントを徐々に進め、それが実行可能かどうかを判断します。 2)新しいシステムを作成し、実行可能なイベントを徐々にシステムに転送します。

1
Will Sheppard

すべてのアラートには、インテリジェントなアクションが必要です。アクション不要のアラートはアラートの疲労を保証し、最終的には実際の問題を見逃します。実際の問題は、サービスの低下に関するステータスレポート、またはソフトウェア開発者との未解決の問題につながります。

騒々しいシステムから正気の変更を作成することは苦労です。ほとんどの場合、バックログは十分な速度で処理されません。

アラートの破産を宣言し、すべてのアラートを削除することを検討してください。 APIサーバーのエラー率やユーザーの応答時間の中央値など、最も基本的な要素を追加し直します。インスピレーションについては、 Google SREブックからの4つの黄金の信号 を参照してください。

今後は、計画外のイベントやニアミスの根本原因分析を行ってください。問題を予測するデータがある場合は、アラートを追加します。根本原因が解決され、アラートが長時間発生しなかった場合に、アラートを削除するようにスケジュールします。

1
John Mahowald

イベントデータに分類レベルがある場合は、重大度の高いものから低いものへと進むことができます。一般に、最高の重大度は出力がはるかに少なく(例:致命的)、できればもっと重要です。

その後、重大度を下げるために作業を開始し、収穫逓減に達したときに停止することができます。

大量のイベントグループの場合の別のオプションは、ログから導出された時系列メトリックでアラートを出すことです。

0
Kyle Brandt