シナリオ:Kaiが、Syntheticsチェックに基づいてサービスレベル目標(SLO)を設定する 🔗
Buttercup Gamesのサイト信頼性エンジニアであるKaiは、Buttercup GamesのウェブサイトにあるEmbyサービスのSynthetics Browserテストを作成しました。KaiはEmbyサービスをインストルメントしていませんが、このサービスの健全性を監視したいと考えています。
Embyサービスの健全性メトリクスを測定し追跡するために、Kaiは、Synthetics Browserテストに基づいてカスタムメトリクスSLOを設定します。
Use custom metric as service level indicator (SLI) 🔗
From the Detectors & SLOs page, Kai configures the SLI and sets up a target for their SLO. Kai follows these steps:
Syntheticsメトリクスをシステム健全性指標として使用したいため、Metric type メニューから Custom metric を選択します。
SignalFlowエディターに以下のプログラムを入力します:
G = data('synthetics.run.count', filter=filter('test', 'Monitoring Services - Emby check') and filter('success', 'true')) T = data('synthetics.run.count', filter=filter('test', 'Monitoring Services - Emby check'))
Kai defines variables
G
andT
as two streams ofsynthetics.run.count
metric time series (MTS) measuring the health of requests sent to the Emby service. To distinguish between the two data streams, Kai applies an additional filter on thesuccess
dimension in the definition forG
. This filter queries for a specific collection of MTS that track successful requests for the Emby service. In Kai’s SignalFlow program,G
is a data stream of good events andT
is a data stream of total events.Kaiは、
G
を Good events (numerator) ドロップダウンメニューに、T
を Total events (denominator) ドロップダウンメニューに割り当てます。以下のフィールドを入力して、SLOの目標を定義します:
フィールド
値
説明
Target (%)
99.9
Kaiは、目標99.9%に対してEmbyサービスのリクエスト成功率を測定したいと考えています。
Compliance window
Last 30 days
Kaiは、過去30日間を対象にこのSLOを追跡したいと考えています。
Kaiは、このSLO目標の違反イベントが発生すればアラートを受信するように、受信登録します。
まとめ 🔗
Kaiは、SLOを設定し、Buttercup Gamesウェブサイト上のEmbyサービスがリクエスト率の目標を満たせなかった場合に通知する違反イベントのアラートを受信登録しました。このサービス自体をインストルメントしていないにもかかわらず、既存のSynthetic Browserテストからのカスタムメトリクスを使用してSLOを設定することができました。
さらに詳しく 🔗
For more information about creating an SLO, see サービスレベル目標(SLO)を用いて、サービスの健全性メトリクスを測定および追跡します。.
For more information about the Synthetics Browser test, see Browser tests for webpages.
For more information on SignalFlow, see Analyze data using SignalFlow in the Splunk Observability Cloud Developer Guide.