サービスレベル目標
Dash が新機能を発表!インシデントマネジメント、Continuous Profiler など多数の機能が追加されました! Dash イベントで発表された新機能!

サービスレベル目標


概要

サービスレベル目標 (SLO) は、サイト信頼性エンジニアリングツールキットの重要な要素です。SLO を使用し、アプリケーションのパフォーマンスに明確なターゲットを定義するためのフレームワークを整えることで、一貫したカスタマーエクスペリエンを提供したり、プラットフォームの安定性を保ちつつ機能を開発したり、内部および外部ユーザーとのコミュニケーションを改善するために役立てることができます。

重要な用語

サービスレベル指標 (SLI) - サービスのパフォーマンスまたは信頼性を定量的に測定するもの (Datadog SLO では、SLI はメトリクスまたは 1 つ以上のモニターの集合体です)

サービスレベル目標 (SLO) - 特定の期間における SLI のターゲット割合

サービスレベル契約 (SLA) - クライアントとサービスプロバイダとの間で交わされる、明示的または暗示的な合意事項で、クライアントの信頼性に対する期待とそれを満たさない場合にサービスプロバイダ側が補償する内容について規定したもの

エラーバジェット - SLO のターゲット割合 (100% - ターゲット割合) から算出される許容範囲内の不確実性。これは製品開発における投資として見なされます。

セットアップ

Datadog のサービスレベル目標ステータスページを使用して、新しい SLO を作成したり、既存の SLO を表示して管理することができます。また、SLO サマリーウィジェットを追加すると、SLO のステータスを一目で確認できます。

構成

  1. SLO ステータスページNew SLO + を選択します。
  2. SLO のソースを定義します。SLO の種類には、メトリクスベースモニターベースがあります。
  3. 最大 3 つの SLO ターゲットをセットアップします。それぞれのターゲットはターゲット割合とローリングタイムウィンドウから成ります。利用可能なタイムウィンドウは、7 日、30 日、90 日です。SLO のターゲット割合を SLA で指定するターゲット割合より厳し目に設定することが推奨されます。
  4. 最後に、SLO にタイトルを付け詳細を入力するか、説明にリンクを足しタグを追加して保存します。

SLO を設定したら、サービスレベル目標ステータスページでリストビューから SLO を選択し、詳細なサイドパネルを開くことができます。サイドパネルには、その SLO 目標それぞれの全体的なステータス割合とエラーバジェットの残量が表示されます。また、SLI の履歴のステータスバー(モニターベースの SLO)と棒グラフ(メトリクスベースの SLO)も表示されます。マルチアラートモニターを 1 つ使用してグループ化されたモニターベースの SLO を作成するか、sum byを使用してグループ化されたメトリクスベースの SLO を作成した場合、全体的なステータス割合および残りのエラーバジェットに加え、それぞれ個々のグループに関するステータス割合およびエラーバジェットの残量も同じく表示されます。

例: アベイラビリティーゾーンごとにレイテンシを追跡するためにモニターベースの SLO 作成すると、全体的な SLO と SLO が追跡している個々のアベイラビリティーゾーンのステータス割合とエラーバジェットの残量が表示されます。

SLO の変更

SLO を編集するには、リストビューで SLO の行にカーソルを合わせて、行の右側に表示される編集鉛筆アイコンをクリックするか、行をクリックして詳細なサイドパネルを開き、パネルの右上に表示される歯車アイコンから編集ボタンを選択します。

SLO の検索と表示

サービスレベル目標ステータスページでは、すべての SLO に対し高度な検索を実行して、検索結果から SLO を検索、表示、編集、複製、削除できます。

高度な検索を使用し、SLO の属性をどれでも組み合わせて SLO をクエリできます。

  • name および description - テキスト検索
  • time window - 7日、30日、90日
  • type - メトリクス、モニター
  • creator
  • tags - datacenter、env、service、team, など。

検索を実行するには、左側のファセットチェックボックスと上部の検索バーを使用します。ボックスをチェックすると、それに合わせて検索バーのクエリが更新されます。同様に、検索バーのクエリを変更 (あるいは新規入力) すると、ボックスのチェックが更新されます。クエリ結果はクエリの変更に合わせてリアルタイムで更新されます。’検索’ボタンはありません。

個々の SLO を編集するには、SLO の上にカーソルを置き、その行の右側に表示される EditCloneDelete ボタンを使用します。SLO の内容を詳しく確認するには、その行をクリックしてサイドパネルを開きます。

SLO タグ

SLO の作成時や変更時に、SLO ステータスページでフィルタリングに必要なタグやSLO の保存済みビューの作成に必要なタグを追加することができます。

SLO のデフォルトビュー

SLO のリストビューに移動すると、デフォルトの SLO ビューが読み込まれます。

デフォルトビューには以下が含まれます。

  • 空の検索クエリ
  • オーガニゼーションで定義されているすべての SLO リスト
  • 左側のファセットリストで利用可能なファセットのリスト

保存ビュー

以下を共有することで、チームに最も関連性の高い SLO についてカスタマイズした検索を保存ビューの SLO リストビューに保存し共有することができます。

  • 検索クエリ
  • 選択したファセットのサブセット

リストビューで SLO のサブセットを問い合わせると、そのクエリを保存ビューとして追加できるようになります。

保存ビューの追加

保存ビューを追加するには、

  1. SLO を問い合わせます。
  2. ページ左上の Save View + をクリックします。
  3. ビューに名前を付けて保存します。

保存ビューのロード

保存済みビューを読み込むには、ページ左上の Show Views ボタンを押して Saved Views パネルを開き、リストから保存済みビューを選択します。保存済みビューは、同じ Saved Views パネルの上部にある Filter Saved Views 検索ボックスで検索することもできます。

保存ビューの共有

リストから保存済みビューにカーソルを合わせハイパーリンクを選択し、保存済みビューにリンクをコピーすれば、チームメイトと共有できます。

保存ビューの管理

使用済みビューは一旦使用すると、その保存済みビューを選択し、クエリを変更し、*Saved Views*パネルのその名前の下にある Update ボタンをクリックすることで、更新することができます。保存済みビューの名前を変更したり、保存済みビューを削除するには、Saved Views パネルでその行にカーソルを合わせ、それぞれ、鉛筆アイコンをクリックするか、ゴミ箱アイコンをクリックします。

SLO 監査イベント

SLO 監査イベントでは、イベントストリームを使用して SLO コンフィギュレーション履歴を追跡することができます。監査イベントは、SLO を作成、修正、または削除するたびにイベントストリームに追加されます。各イベントには SLO のコンフィギュレーション情報が含まれ、ストリームによりこれまでの SLO コンフィギュレーションの変更履歴が提供されます。

各イベントには、以下の SLO コンフィギュレーション情報が含まれます。

  • 名前
  • 説明
  • ターゲットパーセンテージおよび時間枠
  • データソース (モニター ID またはメトリクスクエリ)

イベントストリームに表示される 3 種類の SLO 監査イベント:

  1. SLO Created イベントには、作成時刻における SLO コンフィギュレーションのすべて (4 つ) の情報が表示されます。
  2. SLO Modified イベントには、更新中に変更されたコンフィギュレーション情報が表示されます。
  3. SLO Deleted イベントには、削除前に SLO が持っていたコンフィギュレーション情報のすべて (4 つ) が表示されます。

SLO 監査イベントの全リストを取得するには、イベントストリームに検索クエリ tags:audit,slo を入力します。特定の SLO に関する監査イベントのリストを表示するには、tags:audit,slo_id:<SLO ID> (対象とする SLO の ID を使用) を入力します。

また、Datadog イベント API を使って、プログラムでイベントストリームのクエリを作成することもできます。

注: UI にイベントが表示されない場合は、イベントストリームの時間枠を長くしてみてください(過去 7 日間など)。

SLO のコンフィギュレーションをプロアクティブに管理するには、特定のタグに対応するイベントが発生したときに通知するようイベントモニターを設定します。

たとえば、特定の SLO コンフィギュレーションが変更されたときに通知を受信するには、タグ audit,slo_id:<SLO ID> に対して [SLO Modified] テキストを追跡するようイベントモニターをセットします。

SLO ウィジェット

SLO を作成した後に、SLO サマリーダッシュボードウィジェットを使用して、SLO のステータスをダッシュボードメトリクス、ログ、APM データと合わせて表示することが可能です。SLO ウィジェットについて詳しくは、SLO ウィジェットのドキュメントページを参照してください。

その他の参考資料