• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLKnowledge Workmonitoring

slos-and-triggers

プラグイン
Honeycomb
ソース
GitHub で見る ↗
説明

Honeycomb SLO(サービス品質目標)コンプライアンスの判断、エラー予算(サービス停止に費やせる許容時間)の消費速度、トリガー(警告発火条件)の状態を解釈するための判断基準です。 数字が何を意味するのか、どのアクションを取るべきかを説明します。設定ミスのあるSLI(サービス品質の測定指標)の検出、デプロイ(更新配信)の停止判断と待機中のエンジニア呼び出しの判断、バーンアラート(予算消費警告)の閾値設計などに対応しています。 get_slos または get_triggers を呼び出す前に、このスキルを読み込んでください。 **起動フレーズ:** 「SLO を確認して」「SLO を達成している」「健康なSLOはどれか」「エラー予算は大丈夫か」「アラートが発火していないか」「バーンレートはいくつか」「SLO を設定して」「トリガーを作成して」「アラートを設定して」「バーンアラートをセットアップして」「トリガー状態を確認して」「待機業務を開始する」「信頼性の状況」「デプロイを停止すべきか」「このSLOは設定ミスしていないか」「予算内か」「SLOが機能していない」「予算がマイナスになった」またはHoneycomb のサービス品質目標、エラー予算、バーンレート、アラート に関する質問全般

原文を表示

Decision heuristics for interpreting Honeycomb SLO compliance, budget burn rates, and trigger status — what the numbers mean and what action to take, including detecting misconfigured SLIs, deciding when to freeze deploys vs page on-call, and designing burn alert thresholds. Load this skill before calling get_slos or get_triggers. Trigger phrases: "check our SLOs", "are we meeting our SLOs", "which SLOs are healthy", "is the error budget OK", "are any alerts firing", "what's the burn rate", "set up an SLO", "create a trigger", "configure alerts", "set up burn alerts", "check trigger status", "starting on-call", "reliability picture", "should we freeze deploys", "is this SLO misconfigured", "are we within budget", "SLO is broken", "budget is negative", or any request about service level objectives, error budgets, burn rates, or alerting in Honeycomb.

ユースケース
  • SLOのコンプライアンスを判断するとき
  • エラー予算の消費速度を確認するとき
  • デプロイの停止判断を下すとき
  • SLIの設定ミスを検出するとき
  • バーンアラートの閾値を設計するとき
本文(日本語訳)

Honeycomb SLOs とトリガー

Honeycomb における信頼性の設定と評価についてのガイダンスです。get_slos と get_triggers ツールは独自のパラメータをドキュメント化していますが、このスキルでは 効果的な SLO の設計、SLO とトリガーの使い分け、数値の意味の解釈 に焦点を当てます。

利用可能なプラン: SLO は Pro 以上が必要です。トリガーはすべてのプランで利用できます。

SLO とトリガーの使い分け

質問 SLO トリガー
「信頼性の目標値を達成できているか?」 ○ ×
「今、何か障害が起きているか?」 × ○
「エラー予算をどのくらい消費しているか?」 ○(バーンアラート) ×
「エラー数がしきい値を超えたか?」 × ○
「デプロイのペースを落とすべきか?」 ○(予算残量) ×

簡潔な判断基準: SLO は時間軸で信頼性の目標値を測定します。トリガーは今この瞬間の運用上の問題を検知します。

効果的な SLO の設計

SLI を定義する

SLI(サービスレベル指標)は 1 つのイベントごとに成功か失敗かを判定するものです。計算式として実装され、undefined(対象外のイベント)、1(成功)、または 0(失敗)を返します。

  • 書式: IF(<qualifying-condition>, <success-condition>) — 条件部分でイベントをフィルタリングし、成功条件で「成功」の定義を指定します。条件部分に合致しない場合は undefined を返し、SLI は数値を記録しません。
  • フィルタリング条件を具体的に指定: 対象のイベント部分集合を選びます(例:AND(EQUALS($http.route, "/checkout"), NOT(EXISTS($trace.parent_id)))チェックアウトエンドポイントのルートスパンのみ対象)
  • 応答時間の成功条件: LTE(duration_ms, 500) — 500ms 以下で応答
  • 可用性の成功条件: LTE(http.status_code, 499) — 5xx 以外のエラーコード
  • ビジネスロジックの成功条件: EQUALS(checkout.status, "completed") — チェックアウト完了

目標値を設定する

  • 控えめな値から始める(99.99% より前に 99% で)
  • 最初に P50/P99 クエリで現在の基準値を測定
  • 目標値は現在のパフォーマンスよりわずかに高く設定
  • 問う:実際、ユーザーはどのレベルの信頼性を必要としているか?

予算消費アラートを設定する

最低限、2 つのアラートを用意します:

  • 予算消費が近い(消費まで約 4 時間): PagerDuty でオンコール対応者に通知
  • 消費予測中(24 時間単位の消費率): Slack でチームに通知

バーン率アラートを設定する

予算が枯渇しなくても、急速な消費を検知します。例えば:

  • 1 時間のバーン率が 10 倍を超える場合 — オンコール対応者に通知

SLO 作成後、ユーザーにこれらのアラート設定を推奨してください。エージェントはアラート設定やその通知先を実際に作成する機能を持ちません。

ベストプラクティス

  • ユーザーに近い箇所で測定(スタックの深い部分ではなくエッジで)
  • チーム境界ではなくユーザーのワークフロー中心で設計
  • 細かい SLO を数多く作るより、広めの SLO を優先
  • 1 つの SLO から始めてノイズを減らし、その後に拡張

SLO ステータスの解釈

get_slos で SLO を確認するとき:

  • 予算残量 > 50%: 良好 — 変更に余裕がある
  • 予算残量 10~50%: 注意 — 変更のペースを落とす
  • 予算残量 < 10%: 危険 — 重要でないデプロイを停止
  • 予算残量が負: 違反発生 — production-investigation スキルで詳しく調査
  • コンプライアンス 0%: SLI が誤設定の可能性(誤ったカラム、論理が逆、マッチするイベント無し)— SLI の定義を確認

トリガーの設定

パーセンタイル値ベースより件数ベースを優先

「2 秒以上かかったリクエスト 50 件」は「P99 が 2100ms」より実行可能な情報です。 P99 トリガーではなく COUNT WHERE duration_ms > threshold を使用してください。

よくあるパターン

  • エラー急増: COUNT WHERE error = true、5 分以内にしきい値 > N
  • リクエスト遅延: COUNT WHERE duration_ms > 2000、5 分以内にしきい値 > N
  • トラフィック低下: COUNT WHERE is_root、10 分以内にしきい値 < N(通常より低い)

ベストプラクティス

  • 名前: アラートの内容 説明: 対応方法(ランブック(対応手順書)へのリンク)
  • 最小 5~10 分の継続時間を設定し、誤検知を避ける
  • 感度は低めから始めて、誤検知率に基づいて厳しく調整

マルチサービス SLO

最大 10 個のサービス間でエラー予算を共有します。

  • SLI は環境レベルの計算式である必要があります
  • 含まれるサービスのイベントは同じ重みで扱われます
  • ユースケース:複数のエッジサービス、モノリシックからマイクロサービスへの移行

ユーザーに確認する

Honeycomb のワークスペースは SLO とトリガーの数に制限があります。作成ツールを実行する前に、ユーザーに確認してください。すべてのパラメータと考え方を表示し、確認を求めてください。

SLO へのリンクの構築

提供されているツールは Honeycomb の SLO ページへの直接リンクをサポートしていません。 代わりに、SLO 一覧ページにリンクできます。

/<team_slug>/environments/<environment_slug>/slos

その他の参考資料

リファレンスファイル

  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/slo-design-guide.md — 詳細な SLO 設計手法、マルチサービス SLO、エラー予算の計算
  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/trigger-examples.md — ユースケース別に整理された豊富なトリガー設定例
  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/alerting-strategy.md — SLO バーンアラートとトリガーを組み合わせたアラート戦略

関連スキル

  • SLI クエリと計算式の構築については、query-patterns スキルを参照してください
  • SLO 予算消費の調査については、production-investigation スキルを参照してください
原文(English)を表示

Honeycomb SLOs and Triggers

Guidance for configuring and reasoning about reliability in Honeycomb. The get_slos and get_triggers tools document their own parameters — this skill focuses on designing effective SLOs, choosing between SLOs and triggers, and interpreting what the numbers mean.

Availability: SLOs require Pro or Enterprise plan. Triggers available on all plans.

SLO vs Trigger — When to Use Which

Question SLO Trigger
"Are we meeting our reliability commitments?" Yes No
"Is something broken right now?" No Yes
"How fast are we burning our error budget?" Yes (burn alerts) No
"Did error count exceed a threshold?" No Yes
"Should we slow down deploys?" Yes (budget remaining) No

Rule of thumb: SLOs measure reliability against commitments over time. Triggers catch immediate operational issues.

Designing Effective SLOs

Define the SLI

An SLI is a per-event boolean: was this event successful? Implemented as a calculated field returning undefined (not a relevant event), 1 (success), or 0 (failure).

  • Format: IF(<qualifying-condition>, <success-condition>) The qualifying condition filters to relevant events; the success condition defines what counts as success. If the qualifying condition is not met, the formula returns undefined, and the SLI is unpopulated.
  • Specific Qualifying Condition: Choose the relevant subset of events (e.g. AND(EQUALS($http.route, "/checkout"), NOT(EXISTS($trace.parent_id))) for root spans of checkout endpoint)
  • Latency Success Condition: LTE(duration_ms, 500) — requests faster than 500ms
  • Availability Success Condition: LTE(http.status_code, 499) — non-5xx responses
  • Business Logic Success Condition: EQUALS(checkout.status, "completed") — successful checkouts

Set the Target

  • Start conservative (99% before 99.99%)
  • Measure current baseline first with P50/P99 queries
  • Set target slightly above current performance
  • Ask: what reliability do users actually need?

Configure Exhaustion Time Alerts

At minimum, two alerts:

  • Near exhaustion (exhaustion time ~4h): pages on-call via PagerDuty
  • Trending to exhaustion (budget rate over 24h): notifies team via Slack

Configure Burn Rate Alerts

Detect fast burns even if the budget isn't close to exhaustion yet. For example:

  • 1h burn rate > 10x — page on-call

Recommend these alerts to the user after creating the SLO. Agents do not have the ability to set up these alerts or their recipients.

Best Practices

  • Measure close to the user (at the edge, not deep in the stack)
  • Design around user workflows, not team boundaries
  • Favor broad SLOs over many narrow ones
  • Start with one SLO, reduce noise, then expand

Interpreting SLO Status

When reviewing SLOs with get_slos:

  • Budget remaining > 50%: Healthy — room for risk
  • Budget remaining 10-50%: Caution — slow down changes
  • Budget remaining < 10%: At risk — freeze non-critical deploys
  • Budget negative: Breached — investigate immediately with the production-investigation skill
  • Compliance at 0%: Likely misconfigured SLI (wrong column, inverted logic, no matching events) — check the SLI definition

Configuring Triggers

Prefer Count-Based Over Percentile-Based

"50 requests slower than 2s" is more actionable than "P99 is 2100ms." Use COUNT WHERE duration_ms > threshold instead of P99 triggers.

Common Patterns

  • Error spike: COUNT WHERE error = true, threshold > N in 5 min
  • Slow requests: COUNT WHERE duration_ms > 2000, threshold > N in 5 min
  • Traffic drop: COUNT WHERE is_root, threshold < N in 10 min (below normal)

Best Practices

  • Name: What the alert is. Description: What to do (link to runbook).
  • Set duration 5-10 min minimum to avoid flapping
  • Start less sensitive, tighten based on false positive rate

Multi-Service SLOs

Share a single error budget across up to 10 services.

  • SLI must be an environment-level calculated field
  • Events from included services weighted equally
  • Use cases: multiple edge services, monolith-to-microservices migration

Check in with the user

Workspaces in Honeycomb have a limited number of SLOs and triggers. Before executing the create tool, check in with the user. Display all parameters and your reasoning, and ask for confirmation.

Constructing links to SLOs

The tools you have will not let you link directly to the SLO page in Honeycomb. Instead, you can link to the list of SLOs.

/<team_slug>/environments/<environment_slug>/slos

Additional Resources

Reference Files

  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/slo-design-guide.md — Detailed SLO design methodology, multi-service SLOs, error budget math
  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/trigger-examples.md — Complete trigger example library organized by use case
  • ${CLAUDE_PLUGIN_ROOT}/skills/slos-and-triggers/references/alerting-strategy.md — How to combine SLO burn alerts and triggers into a cohesive alerting strategy

Cross-References

  • For constructing SLI queries and calculated fields, see the query-patterns skill
  • For investigating SLO budget burn, see the production-investigation skill

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。