mcpField
A
authoring-error-tracking-alerts

authoring-error-tracking-alerts

github.com/posthogクラウド・DevOps95165 回インストール今日更新
リポジトリ

authoring-error-tracking-alerts について

PostHog のエラートラッキングアラートを設定するスキルです。ライフサイクルトリガーを選び、重複を確認して、対応可能な宛先へ通知をルーティングします。エラーの計測やインシデント調査ではなく、アラートの振り分けを扱います。

主な機能

  1. 013種類の課題ライフサイクルトリガーから選択
  2. 02既存アラートの重複確認
  3. 03設定済み宛先へのアラート振り分け
  4. 04課題プロパティによる対象範囲の指定
  5. 05既存アラートの更新と削除

活用シーン

  1. 01課題の再発時にチームへ通知
  2. 02課題の急増をオンコールチャンネルへ通知
  3. 03エラーアラートの重複作成を回避

MCP 対応

PostHog MCP ツールでアラートの一覧表示、作成、更新、削除を行い、インテグレーションや Slack チャンネルを検索します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/posthog/ai-plugin --skill authoring-error-tracking-alerts

インストール後、Claude Code で/authoring-error-tracking-alertsを入力して読み込まれたか確認します。

同梱ファイルreferences/block-templates.mdreferences/event-triggers.md

詳細

エラートラッキングアラートの作成

エラートラッキングアラートの作成は、測定ではなく ルーティング の問題です。トリガーイベントはすでに存在し、取り込みパイプラインで実際の条件に基づいて発火します。ユーザーの意図に合ったトリガーを選び、すでに設定されているものと重複しないようにして、ユーザーが実際に対応できる宛先につなぐのが役割です。

このスキルを使う場面

  • ユーザーが、プロジェクトのエラーや例外に関するアラート/通知の設定を依頼した場合。
  • エラートラッキングを有効にした後、最初に設定するアラートを求めている場合。
  • ユーザーがイシューのリンクを貼り、「これがまた発生したら通知して」と依頼した場合。通常は、イシューごとのプロパティフィルターを使った _reopened です。

このスキルを使わない場面

  • スパイク検出器自体(倍率、ウィンドウ、しきい値)の調整。これはスパイク検出設定エンドポイントで行うもので、現在 MCP からは利用できません。
  • 進行中のインシデントの調査。アラートを追加作成するのではなく、posthog:query-error-tracking-issue と posthog:query-error-tracking-issue-events を使って、イシューやそのイベントを直接クエリしてください。
  • ボリュームしきい値アラート(一定期間内の $exception イベント数)の設定。これはログ形式のアラートであり、ここでは対象外です。エラートラッキングアラートは、代わりにライフサイクルイベントを利用します。

ツール

ツール役割用途
posthog:error-tracking-alerts-list既存のアラートを一覧表示します(ページネーション対応)。作成前に重複を確認します。ステップ 2 — 重複確認。
posthog:integrations-listユーザーの Slack ワークスペース ID を検索します(kind=slack で絞り込み)。ステップ 3 — チャンネル選択。
posthog:integrations-channels-retrieveワークスペース内の Slack チャンネルを一覧表示します。ステップ 3 — チャンネル選択。
posthog:error-tracking-alerts-createアラートを作成します(type=internal_destination の HogFunction)。ステップ 4 — 送信。
posthog:error-tracking-alerts-partial-update既存のアラートの有効/無効を切り替えたり、名前を変更したり、変更を加えたりします。調整する場合。作成時は使用しません。
posthog:error-tracking-alerts-deleteアラートをソフト削除します。ユーザーから「削除して」と言われた場合。

トリガーイベント — アラートごとに必ず1つ選択してください

ライフサイクルイベントは3種類あります。それぞれ「ノイズと緊急性」のバランスが異なります。ここでアラート疲れが起きる最も一般的な原因は、間違ったイベントを選ぶことです。

イベント発生条件使用する場合
$error_tracking_issue_created新しい課題が初めて発生したとき。小規模なプロジェクト、または新しい種類のエラーをすべて確認する価値があるプロジェクト向けです。大規模でノイズの多いプロジェクトでは通知が殺到します。
$error_tracking_issue_reopened以前に解決した課題で、再びイベントが発生したとき。すでにトリアージした課題のリグレッションを検知する場合に使用します。「再発したら知らせてほしい」という用途に最も安全なトリガーです。
$error_tracking_issue_spikingスパイク検出器が課題の異常な発生量を検知したとき。ベースラインの発生量が多い本番環境のプロジェクト向けです。しきい値と倍率はプロジェクト全体で共有されるため、使用前にスパイク設定を確認してください。

ユーザーの指示が曖昧な場合(「エラーを知らせて」など)は、デフォルトで_spikingを選択してください。これは最も多くのシグナルを捉え、アラート疲れを引き起こす可能性が最も低いトリガーです。先に進む前に、必ず明示的に確認してください。

ワークフロー

1. 意図を確認する

作成を始める前に、ユーザーから次の3点を確認してください。

  • トリガーイベント。 指定されていない場合は_spikingを推奨し、確認を求めてください。黙って選択してはいけません。
  • チャンネル。 Slack のチャンネル名、Webhook URL、Linear のチームなどです。本番用チャンネルをハードコードしてはいけません。ユーザーが「開発チャンネル」と言った場合は、正確なチャンネル ID または名前を確認してください。
  • 対象範囲。 すべての課題(最も一般的)、または特定の課題/例外の種類/担当者に限定するかを確認してください。
2. 既存のアラートと重複しないか確認する

判断する前に、すべての送信先を確認します。このエンドポイントはページネーションに対応しており、デフォルトでは1ページあたり100行を返すため、送信先が数百件あるプロジェクトでデフォルトのまま1回呼び出すと、古いアラートを見落とします。

posthog:error-tracking-alerts-list を type: ["internal_destination"] と limit: 1000 を指定して呼び出します。レスポンスの next が null でない場合は、next が null になるまで offset を指定してページを取得し続けます。その後、収集した行をクライアント側で filters.events[].id と filters.properties 内の issue ごとのスコープで絞り込みます。

一覧のレスポンスには inputs が含まれないため、各行の通知先となるチャンネルや URL はわかりません。代わりに name と description から送信先を読み取ります。以下の命名規則では、チャンネルが名前に含まれています。イベントとスコープは一致するものの、名前から通知先がわからない場合は、推測せず、一致した名前をユーザーに提示して、その中に意図したアラートがあるか尋ねてください。

  • 同じイベントを同じチャンネルに同じスコープで通知するアラートが存在する場合は、そこで停止します。すでに存在するとユーザーに伝え、変更するか(その場合は error-tracking-alerts-partial-update を使用します)、スキップするかを尋ねてください。
  • 同じイベントのアラートが同じチャンネルに複数あると、Slack メッセージが重複して届きます。ユーザーがこれを望むことはほとんどありません。
  • 同じイベントのアラートを異なるチャンネルに送信する場合(例:一方は #oncall、もう一方は oncall webhook)は問題ありません。意図的な場合もあるため、確認してください。
  • 同じイベント、同じチャンネルでも、異なるスコープのアラート(例:それぞれ別の $exception_issue_id に固定された2つの _reopened アラート)は重複ではありません。追加する前に確認してください。スコープを指定したアラートと、すべての issue を対象とするアラートを同じチャンネルに送ると、どちらもスコープ対象の issue について発火することに注意してください。

PostHog の「アラートが設定済み」という推奨表示は filters.events のみを確認します。issue ごとの filters.properties を追加しても、アラートバナーに表示されるステータスには影響しません。

3. インテグレーションを選択する

Slack の場合:

  1. posthog:integrations-list を kind=slack で呼び出し、インテグレーションの id(整数)を選択します。
  2. その ID を指定して posthog:integrations-channels-retrieve を呼び出し、チャンネル ID(例:C0123ABC)を選択します。"#oncall" のようなチャンネル名も使用できますが、チャンネル ID を推奨します。ID は名前を変更しても変わりません。

Webhook の場合:ユーザーから https:// URL を1つ指定してもらいます。http:// URL は受け付けません。

Linear / GitHub / GitLab の場合:まず posthog:integrations-list でインテグレーションが接続されていることを確認し、issue を登録するプロジェクト / リポジトリ / チームをユーザーに尋ねます。

4. アラートを作成する

以下を指定して posthog:error-tracking-alerts-create を呼び出します。

{
  "type": "internal_destination",
  "template_id": "template-slack",
  "name": "<short, channel-attributed name>",
  "enabled": true,
  "filters": {
    "events": [{ "id": "$error_tracking_issue_created", "type": "events" }]
  },
  "inputs": {
    "slack_workspace": { "value": <slack_integration_id_int> },
    "channel": { "value": "<channel_id>" },
    "text": { "value": "..." },
    "blocks": { "value": [...] }
  }
}

各イベントに対応する標準の Slack blocks ペイロードは、references/block-templates.md にあります。一致するブロックをそのままコピーしてください。これは製品内のアラートウィザードと一致するため、エージェントが作成したアラートも UI で作成したものと同じ表示になります。

issue ごとのスコープを指定するには、created / reopened の場合に限り(spiking イベントには exception プロパティがありません)、filters に以下を追加します。

"properties": [
  { "key": "$exception_issue_id", "value": "<issue_uuid>", "operator": "exact", "type": "event" }
]

そのほかに使用できるプロパティフィルター:$exception_types(例外クラス名の配列)、name(issue のタイトル)。各イベントで使用できるすべてのプロパティについては、references/event-triggers.md を参照してください。

5. 確認する

アラートの名前、トリガーイベント(人が読みやすい表現)、送信先、メッセージ本文の1行プレビューをユーザーに伝えます。Slack ワークスペース ID や webhook URL は機密情報のため、伝えないでください。無効化する方法として、「error-tracking-alerts-partial-update で enabled: false を設定するか、送信先 UI で切り替えると、このアラートを一時停止できます」と伝えてください。

命名規則

<トリガー> · <チャンネル> (auto) の形式を使うと、ユーザーがアラート一覧を確認して、エージェントが作成した項目を見分けやすくなります。 例:

  • Issue spiking · #oncall (auto)
  • Issue reopened · #regressions-webhook (auto)
  • Issue created · Linear/Eng (auto)

アラートには課題のタイトルを使わないでください。アラートは多くの課題に一致する可能性があり、課題が進展するとタイトルが古くなるためです。

トークン節約のルール

  • 候補ごとではなく、最初に posthog:error-tracking-alerts-list を一度だけ完全にスキャンします。next が null になったときにのみスキャン完了です。一度ページをすべて取得し、収集した行をすべての候補で再利用します。
  • 同じワークスペースに送信する複数のアラートでは、インテグレーションの検索を一度だけ行って再利用します。
  • 各アラートを作成する前に、チャンネル/URLをユーザーに確認します。ユーザーが明示していない宛先へのアラートをまとめて作成してはいけません。
  • アラートごとの反復は最大1ラウンドに制限します。ユーザーが3つのアラートを希望した場合、作成呼び出しは3回です。アラートごとに3回ではありません。

出力

以下の形式で実施内容を報告します。

  • 作成した各アラート:名前、トリガーイベント、宛先(チャンネル名またはWebhookホスト。完全なURLは含めない)、有効状態。
  • スキップした各アラート:トリガー+チャンネル+理由(既存、ユーザーが辞退、インテグレーションが見つからない)。
  • ユーザーが次に行うべきこと:スパイク検出設定を有効にする(_spiking を選択し、検出器が有効になっていない場合)、ソースマップを設定する(アラートのスタックトレースリンクを解決できるようにする)、または1日様子を見てからアラートフィルターを調整する。

関連スキル

  • triaging-error-issues — アラートを設定する前に、実際に重要な課題を見極めます
  • investigating-error-issue — アラートが発火した課題を詳しく調査します
  • authoring-log-alerts — 例外ではなくログ行を対象に、同じアラート設定を行います

コメント