本章では、スケジュールドレポートとアラートについて説明します。 すでに説明した内容と重複する点もありますが、もう一度、定義や概念についてしっかりと理解しておきましょう。
保存されたサーチ(Saved Search) ├─ レポート(Report) │ ├─ アドホックレポート(Ad-hoc Report) ※公式の呼び方ではない │ └─ スケジュールドレポート(Scheduled Report) └─ アラート(Alert) ├─ スケジュールドアラート(Scheduled Alert) └─ リアルタイムサーチ(Real-Time Alert)
1. 保存されたサーチとは
レポートとアラートを合わせて、保存されたサーチ(Saved Search)と呼びます。 Splunk内部の実装としてはsavedsearch.confと呼ばれる設定ファイルがあり、このファイルにレポート定義とアラート定義が含まれているためです。 レポートとアラートは似ていますが異なる機能です。
2. スケジュールドレポートとは
スケジュール化し定期実行させるようにしたレポートをスケジュールドレポート(またはスケジュールされたレポート)と呼びます。 スケジュールドレポートによって、パネルやダッシュボードを定期的に更新したり、サーチ結果をエクスポートしてメール送信したりWebhook連携することができます。
index=main sourcetype=access_combined_wcookie
| timechart count span=1d BY status
スケジュール化してないレポートはマニュアル実行しかできません。 便宜上、上の図ではこれをアドホックレポートと表記しましたが、これは公式の呼び方ではないことに注意が必要です。
またSplunkには、大量のサーチ/レポート/アラートが同時に実行され、Splunkリソースが枯渇しようになったときには、定期実行されるよう設定されていたスケジュールドレポートをスキップし、リソースの枯渇を防ぐ仕組みがあります。 スケジュールドレポートがスキップされたことは、レポート画面で確認可能です。
これに対し、Web画面からマニュアルでアドホック実行されたサーチは、画面上で実行待機状態になることはあるものの、勝手にスキップされることはありません。
3. スケジュールドレポートの設定
作成したレポートを編集し、スケジュールを設定することで、レポートはスケジュールドレポートとして設定されます。 レポートをスケジュールドレポートに設定しても、特に画面上の表示は変更されません。定期実行するよう設定された状態のレポートを、説明上、スケジュールドレポートと呼んでいます。 レポートがスケジュールドレポートとなった後でも、定期実行とは別に手動でサーチを実行することも可能です。
4. アラートとは
Splunkは、サーチの結果をトリガーにして、アラートを発生させることができます。 アラートは、レポートに対してアラートトリガー条件を指定して作成するものではないことに注意してください。 アラートは、レポートとは別機能です。 またアラートを作成する際は、トリガー条件とアクションを必須で指定する必要があります。
特定の条件が満たされたときにメール/Webhookなどによる通知や、スクリプトを実行させるのがアラートの主な使い方です。
index=main sourcetype=secure-2 "failed password"
レポートを使った場合でもサーチ実行時にアクションを実行することはできますが、アラートを使うと、トリガー条件を指定してアクションを実行できます。 レポートとアラートの重要な機能差はトリガー条件の有無です。
5. アラートの表示
アラートは、Splunkにおけるサーチ実行機能としての用語です。 しかし一方で、サーチを実行した後のアクションで「アラートを生成する」というアクションを実行させることも可能です。 これによって生成されたアラートの一覧は、Splunkメニューバーの「アクティビティ」 > 「生成されたアラート」よりアクセスできます。 「生成されたアラート」画面には、過去24時間にトリガーされたアラートの一覧が表示されます。 アラートをインシデントとして扱い、オープン/クローズなどを管理するような機能はありません。純粋に発生したアラートの一覧を表示する機能となります。 デフォルトでは24時間経過すれば表示されなくなりますが、発生したアラートを手動削除することも可能です。
6. まとめ
- レポートとアラートを合わせて保存されたサーチと呼ぶ
- スケジュールを設定して定期実行されるようにしたレポートをスケジュールドレポートと呼ぶ
- スケジュールドレポートは、Splunkのリソースがひっ迫するとスキップされる可能性がある
- アラートはレポートとは別機能。アラートはトリガー条件とアクションを必須で指定する
- 生成されたアラートは過去24時間分を確認できる。ただしインシデントのオープン/クローズを管理する機能はない