1

elk スタック (Logstash、Elastic search、および kibana) を構成し、以下のようなカスタム ログ ファイルを作成しました。

05/August/2015:16:55:10: www.****.com: statuscode = 200: ロード時間 = 0.734 05/August/2015:16:55:11: ****.my : statuscode = 403 : ロード時間 = 0.340 05/August/2015:17:00:01 : www. ****.mx: statuscode = 200: ロード時間 = 2.282 05/August/2015:17:00:03: www. ****.my : statuscode = 200 : ロード時間 = 2.663 05/August/2015:17:00:06 : www. ****.co.id : statuscode = 200 : ロード時間 = 1.455 05/August/2015:17:00:08 : ****. ****.my : statuscode = 200 : ロード時間 (秒) = 1.684

このログは、logstash で正常に構成されており、Kibana で適切に表示されています。ここで、ログ内の上記の Web サイトのいずれかで 504 または 403 ステータス コードが 5 カウント以上連続して表示された場合に、電子メール アラートを構成したいと考えています。ログ ファイルのパターンに一致するフィルターを追加する必要があることはわかっています。しかし、これはカスタム ログであるため、実行できません。

4

4 に答える 4

1

最善の方法は、独自のスクリプトを作成することです。私は Python で作成しました。

以下が必要です。

  • スクリプトがスケジュールされ、Elasticsearch 内で結果が検索されます。
  • 結果が見つかると、反応がトリガーされます。
  • 監視システムがある場合は、このシステムにトリガーを送信して、1 つの集中型インターフェイスを持つことができます。
  • 電子メールだけが必要な場合は、python を使用して、検出されたエラーの数、サーバー名、および問題のデバッグに役立つその他の情報を含む結果を含む電子メールを送信できます。
  • スクリプトを 10 分ごとに実行すると、Elasticsearch データベースで過去 10 分間のイベントが検索されます。1 時間に 1 回実行すると、過去 1 時間のデータが検索されます。
  • スクリプトのスケジュールには cron を使用できますが、失敗した場合に備えて監視する方法を見つける必要があります。これには rundeck を使用しており、ジョブの 1 つが失敗した場合にメールが送信されます。

複雑に思えるかもしれませんが、logstash インフラストラクチャを使用している場合は、このスクリプトを作成する価値があり、スクリプトを作成すると、さまざまな検索に合わせて簡単に調整できます。

もう 1 つのオプションは、Elastic によるウォッチャー プラグインを待つことかもしれません。公式 GA リリースがリリースされたら GUI インターフェイスを追加することを計画している彼らのサイトの投稿から、これがいつ起こるかはわかりませんが、そうなるかもしれません。 Pythonで作業するよりも制限がありますが、より良い解決策になります.

于 2015-08-09T04:56:52.427 に答える
1

別のプロジェクトはelastalertです。

オープンソースです。また、紹介ブログの投稿を見つけることもできます: http://engineeringblog.yelp.com/2015/10/elastalert-alerting-at-scale-with-elasticsearch.html http://engineeringblog.yelp.com/2016/03/elastalert -part-two.html

特にKibana ルールの変換は非常に便利です。

于 2016-05-27T11:26:34.533 に答える
0

まさにそれを行うのに役立つ Logz.io のようなサービスを使用できます。1 日 1 GB (1 か月 30 GB) まで発送する場合は無料です。

于 2015-08-08T15:32:34.280 に答える