New Relic 自動化
New Relic の可観測性ワークフローを自動化 -- アラートポリシーの作成・管理、通知チャネル(メール、Slack、Webhook、PagerDuty)の設定、APM アプリケーションの監視、アラート条件の確認、そしてクロスアプリケーションパイプラインへの New Relic アラート統合を実現します。
ツールキットドキュメント: composio.dev/toolkits/new_relic
セットアップ
- Composio MCP サーバーをクライアントに追加:
https://rube.app/mcp - プロンプトに従い New Relic アカウントを接続(API キー認証)
- 以下のワークフローを使い始める
コアワークフロー
1. アラートポリシーの一覧表示
NEW_RELIC_GET_ALERT_POLICIES を使用して、既存のアラートポリシーをオプションのフィルタリングと共に取得します。
ツール: NEW_RELIC_GET_ALERT_POLICIES
入力:
- name: 文字列 (省略可能、部分一致対応)
- incident_preference: "PER_POLICY" | "PER_CONDITION" | "PER_CONDITION_AND_TARGET"
- page: 整数 (1始まりのページネーション)
2. アラートポリシーの作成
NEW_RELIC_CREATE_ALERT_POLICY を使用して、アラート条件を格納する新しいポリシーコンテナを設定します。
ツール: NEW_RELIC_CREATE_ALERT_POLICY
入力:
- name: 文字列 (必須) -- アカウント内で一意である必要があります
- incident_preference: "PER_POLICY" | "PER_CONDITION" | "PER_CONDITION_AND_TARGET" (デフォルト: PER_POLICY)
インシデントプリファレンスの説明:
PER_POLICY-- ポリシーごとに 1 件の問題(ほとんどのユースケースで推奨)PER_CONDITION-- アラート条件ごとに 1 件の問題PER_CONDITION_AND_TARGET-- 条件とシグナル/ターゲットの組み合わせごとに 1 件の問題
3. アラート通知チャネルの作成
NEW_RELIC_CREATE_ALERT_CHANNEL を使用して、アラート配信の通知エンドポイントを登録します。
ツール: NEW_RELIC_CREATE_ALERT_CHANNEL
入力:
- type: "email" | "slack" | "webhook" | "pagerduty" | "opsgenie" | "victorops" (必須)
- name: 文字列 (必須) -- 人間が読めるチャネル名
- configuration: オブジェクト (必須) -- タイプによって異なります:
メール: { recipients: "[email protected],[email protected]" }
Slack: { url: "<slack_webhook_url>", channel: "alerts" }
Webhook: { url: "https://hooks.example.com/alerts", auth_username, auth_password }
PagerDuty: { service_key: "<integration_key>" }
OpsGenie: { api_key, recipients, tags, teams }
VictorOps: { key: "<api_key>", route_key: "<routing_key>" }
4. ポリシーのアラート条件を取得
NEW_RELIC_GET_ALERT_CONDITIONS を使用して、特定のポリシーに設定されている条件を確認します。
ツール: NEW_RELIC_GET_ALERT_CONDITIONS
入力:
- policy_id: 整数 (必須)
5. アプリケーションの監視
NEW_RELIC_GET_APPLICATIONS と NEW_RELIC_GET_BROWSER_APPLICATIONS を使用して、APM およびブラウザ監視アプリの一覧を取得します。
ツール: NEW_RELIC_GET_APPLICATIONS
入力:
- name: 文字列 (省略可能、大文字小文字を区別しない部分一致)
- host: 文字列 (省略可能、大文字小文字を区別しない部分一致)
- ids: 文字列 (省略可能、カンマ区切りのアプリIDリスト)
- page: 整数 (1始まり)
ツール: NEW_RELIC_GET_BROWSER_APPLICATIONS
入力:
- filter[name]: 文字列 (省略可能、大文字小文字を区別しない部分一致)
- page: 整数 (1始まり)
6. チャネルとポリシーの管理
NEW_RELIC_UPDATE_ALERT_CHANNEL で既存のチャネルを変更し、NEW_RELIC_DELETE_ALERT_POLICY でポリシーを削除します。
ツール: NEW_RELIC_UPDATE_ALERT_CHANNEL
入力:
- alert_channel_id: 整数 (必須)
- name: 文字列 (省略可能)
- type: 文字列 (省略可能、タイプ変更時のみ)
- configuration: オブジェクト (省略可能、フィールドはタイプにより異なる)
ツール: NEW_RELIC_DELETE_ALERT_POLICY
入力:
- policy_id: 文字列 (必須) -- 削除するポリシーのID
既知の落とし穴
| 落とし穴 | 詳細 |
|---|---|
| 一意のポリシー名 | NEW_RELIC_CREATE_ALERT_POLICY では、名前がアカウント内で一意である必要があります。 |
| チャネル設定はタイプにより異なる | NEW_RELIC_CREATE_ALERT_CHANNEL の configuration オブジェクトは、チャネルタイプごとに必須フィールドが異なります(例: メールは recipients、PagerDuty は service_key)。 |
| ページネーションが必要 | すべての一覧エンドポイントはページネーションされた結果を返します。結果がなくなるまでページを繰り返します。 |
| ポリシーIDの型の不一致 | NEW_RELIC_GET_ALERT_CONDITIONS は policy_id を整数として期待しますが、NEW_RELIC_DELETE_ALERT_POLICY は文字列として期待します。 |
| チャネルとポリシーのリンク | チャネルを作成した後、アラートがそのチャネルに流れるようにするには、別途ポリシーに紐付ける必要があります。 |
クイックリファレンス
| ツールスラッグ | 説明 |
|---|---|
NEW_RELIC_GET_ALERT_POLICIES | オプションのフィルタリングでアラートポリシーを一覧表示 |
NEW_RELIC_CREATE_ALERT_POLICY | 新しいアラートポリシーを作成 |
NEW_RELIC_DELETE_ALERT_POLICY | アラートポリシーをIDで削除 |
NEW_RELIC_CREATE_ALERT_CHANNEL | 通知チャネルを作成(メール、Slack、Webhook など) |
NEW_RELIC_GET_ALERT_CHANNELS | 設定済みのすべてのアラートチャネルを一覧表示 |
NEW_RELIC_UPDATE_ALERT_CHANNEL | 既存のアラートチャネルを更新 |
NEW_RELIC_GET_ALERT_CONDITIONS | ポリシーのアラート条件を取得 |
NEW_RELIC_GET_APPLICATIONS | APM アプリケーションを一覧表示 |
NEW_RELIC_GET_BROWSER_APPLICATIONS | ブラウザ監視アプリケーションを一覧表示 |
Powered by Composio