Contents
1. はじめに
New Relic の AI 搭載オブザーバビリティ は、APM・Logs・Metrics・Events を統合的に収集し、機械学習で相関分析や予測異常検知を自動化します。この記事では、公式ドキュメントを参照しながら AI Ops Insights と Predictive Anomaly Detection の有効化手順、インテリジェントアラートの作成、Kubernetes/サーバーレスでのベストプラクティスまでを実践的に解説します。
2. AI 機能の全体像とリリース時期
New Relic が AI 機能を本格提供し始めたのは 2023 年(公式ブログ)。その後、2024 年に AI Ops Insights と Predictive Anomaly Detection がプラットフォーム全体に拡張されました。
- AI Ops Insights:収集したテレメトリーデータを自動で相関付けし、異常パターンやトレンドを可視化します(Docs – AI Ops Insights)。
- Predictive Anomaly Detection:時系列データに対し、Facebook Prophet と Amazon DeepAR を組み合わせたハイブリッドモデルで予測異常を検知します(Docs – Predictive Anomaly Detection)。
本稿では 2024 年以降の機能 を前提に説明し、2026 年という未確定情報は削除しました。
3. テレメトリー統合 – 基礎設定手順
AI が正しく動作するためには、APM・Logs・Metrics・Events の すべて を New Relic に集約する必要があります。以下のサンプルは「2024‑04 以降にリリースされた最新版」を想定していますが、実際に使用する前に各エージェントの最新インストール手順を公式ページで確認してください。
3.1 APM エージェント(Java)
ポイント:エージェントは言語ごとに異なるので、対象ランタイムに合わせたパッケージを取得します。
- ダウンロード(最新版 URL は公式リポジトリで随時更新)。
bash
curl -sSL https://download.newrelic.com/newrelic/java-agent/newrelic-java.zip -o newrelic-java.zip
unzip newrelic-java.zip -d /opt/newrelic - 設定:
/opt/newrelic/newrelic.ymlにライセンスキーとアプリ名を記入。 - JVM 起動オプションへ追加(Spring Boot 等の場合は
JAVA_TOOL_OPTIONS環境変数でも可)。
bash
export JAVA_TOOL_OPTIONS="-javaagent:/opt/newrelic/newrelic.jar"
※ バージョン互換性:Java 17 以上を利用する場合はエージェント 8.0+ が必要です。詳細は Java エージェントのインストールガイド を参照してください。
3.2 Logs フォワーダー(Fluentd)
ポイント:New Relic Log API キーは Account settings → Data ingestion で取得できます。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# fluent.conf の抜粋 <source> @type tail path /var/log/app/*.log pos_file /var/log/td-agent/app.pos tag app.logs </source> <match app.logs> @type newrelic api_key YOUR_LOG_API_KEY # ← ここに取得したキーを貼り付け include_timestamp true </match> |
※ 注意:Fluentd のプラグインは
gem install fluent-plugin-newrelicでインストールできますが、Linux ディストリビューションのパッケージ管理システムに合わせてyum/aptを併用することも可能です。
3.3 Metrics(Infrastructure エージェント)
- エージェントインストール(Ubuntu の例)。
bash
curl -Ls https://download.newrelic.com/infrastructure_agent/linux/apt/release/newrelic-infra.gpg | sudo apt-key add -
echo "deb [arch=amd64] https://download.newrelic.com/infrastructure_agent/linux/apt focal main" | sudo tee /etc/apt/sources.list.d/newrelic-infra.list
sudo apt-get update && sudo apt-get install newrelic-infra - カスタムメトリックは
metrics.d/*.yamlに定義します。例:CPU 使用率を 5 分間隔で送信
yaml
# cpu_custom.yaml
name: custom.cpu.percent
type: gauge
value: "{{.cpu_percent}}"
interval_seconds: 300
※ バージョン差異:Enterprise Linux 系は
yumコマンド、Debian 系はaptを使用してください。最新インストール手順は Infrastructure エージェントのドキュメント に掲載されています。
3.4 Events(REST API または Kafka プラグイン)
ビジネスイベント(注文完了・課金成功など)は Insights Events として送信します。
|
1 2 3 4 5 6 7 8 9 10 |
curl -X POST "https://insights-collector.newrelic.com/v1/events" \ -H "Content-Type: application/json" \ -H "Api-Key: YOUR_EVENT_API_KEY" \ -d '{ "eventType": "OrderCompleted", "orderId": "12345", "amount": 2500, "timestamp": 1728000000 }' |
※ 推奨:大量イベントは Kafka Connect の New Relic Sink Connector(公式ガイド)を利用するとスケーラビリティが向上します。
4. AI 機能の有効化と活用
4.1 Predictive Anomaly Detection の学習プロセス
概要:AI が異常予測に必要な最低データ期間は 7 日間(フルメトリックが取得できていること)です。
- データ保持設定確認:Settings → Data Management → Retention で少なくとも 7 日以上の保存が有効かチェック。
- 機能有効化:New Relic One 左サイドバー > AI Ops Insights → Anomaly Detection を選択し、対象サービス(例:
order-service)にチェックを入れる。 - 感度調整:デフォルトは
High。ノイズが多い場合はMediumまたはLowに変更して再学習させます。設定は UI 上部の Settings → Anomaly detection sensitivity から変更可能です。 - 学習完了確認:ステータスが “Training Completed” になるまで待ちます(通常 1‑3 時間)。完了するとダッシュボードに予測スコアが表示されます。
参照:詳細な手順は Predictive Anomaly Detection の設定ガイド に記載されています。
4.2 Root Cause AI の結果閲覧
- アラートが発生すると、対象インシデントの詳細画面に Root Cause タブが自動で追加されます。
- タブを開くと因果関係グラフ(ノード=メトリック・エラー、エッジ=相関度 0‑1)が描画され、AI が算出した上位 3 つの原因がハイライトされます。
- 推奨アクションは右側に Runbook リンクとして表示され、クリックすると自動生成された手順書(Markdown)を取得できます。
注意点:Root Cause AI は学習データが十分でないと精度が低下します。新規サービスはデプロイ後 48 時間以上のデータ収集を推奨します。
5. インテリジェントアラートと自動修復ワークフロー
5.1 AI 推薦条件を組み込んだアラートポリシー
手順概要:New Relic One の Alerts & AI メニューからポリシー作成し、AI が提案した条件も併せて追加します。
- ポリシー作成 →
Create alert policy→ 名前例CPU‑Anomaly‑Policy - 条件追加(Predictive)
- カテゴリ: Applied Intelligence → Predictive Anomaly Detection
- メトリック:
CPU Utilization、閾値:anomalyScore > 0.8 - AI 推薦条件のインポート:
Add AI suggested conditionボタンをクリックし、表示された候補(例:DB Connection Errors)を選択。
5.2 Runbook(自動修復)との連携例
以下は GitHub Actions を利用した Kubernetes デプロイメントのスケールアップ のサンプルです。Webhook URL は New Relic の Notification channels に設定します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# .github/workflows/auto-remediate.yaml name: Auto‑Remediate CPU Spike on: workflow_dispatch: inputs: alert_id: description: 'New Relic Alert ID' required: true jobs: remediate: runs-on: ubuntu-latest steps: - name: Scale up deployment run: | kubectl scale deployment order-api \ --replicas=5 -n production |
- 通知チャネル設定:Alerts & AI → Notification channels に Slack・PagerDuty と共に
Webhookを追加し、GitHub Actions の workflow_dispatch エンドポイント URL を貼り付けます。 - ポリシーのインシデントレスポンスで「Execute webhook」→先ほど作成した Webhook を選択します。
安全策:自動実行前に
approval: trueフラグを設定し、手動承認が必要になるように構成できます(Runbook のベストプラクティス)。
6. ダッシュボードでの SLO と Business KPI 可視化
6.1 カスタムダッシュボード作成手順
- Dashboards → Create dashboard →
SLO & Business KPIと命名。 - ウィジェット例(NRQL クエリ)
- SLO 完了率
sql
SELECT percentage FROM Metric
WHERE metricName = 'service.slo.completion'
SINCE 30 days ago TIMESERIES - 売上 KPI(Orders イベント)
sql
SELECT sum(amount) FROM OrderCompleted
SINCE 1 week ago -
予測異常スコア(Predictive Anomaly Detection の出力)
sql
SELECT max(anomalyScore) FROM Metric
WHERE metricName = 'cpu.utilization'
SINCE 24 hours ago TIMESERIES -
ウィジェット右上の Add AI recommendation ボタンで、AI が自動提案する改善アクション(例:
Increase replica count)をカード形式で表示させます。
公式情報: NRQL の構文とサンプル
7. 実践ユースケース:Kubernetes とサーバーレス環境
7.1 Kubernetes クラスタ監視フロー
| 手順 | 内容・コマンド |
|---|---|
| ① | New Relic の Kubernetes Integration を Helm でインストールhelm install newrelic-bundle newrelic/nri-bundle --set global.clusterName=prod-cluster(公式ヘルムリポジトリは newrelic/nri-bundle) |
| ② | Pod、Node、Deployment のメトリックが自動収集。AI Ops Insights が「Pod Restart Spike」や「Node Disk Pressure」の相関を検知 |
| ③ | 予測異常が出たら Runbook(例:kubectl delete pod <name>)を Webhook 経由で実行し、再スケジュールさせる |
7.2 サーバーレス(AWS Lambda)パフォーマンス分析
- New Relic Extension for Lambda をレイヤーとして追加し、環境変数
NEW_RELIC_LICENSE_KEYとNEW_RELIC_APP_NAMEを設定。公式手順は Lambda のインテグレーションガイド にあります。 - Cold Start とエラーレート:AI が「ColdStart Duration > 500 ms」かつ「Error Rate ↑」を検知したら、デプロイパッケージの依存関係削減や Provisioned Concurrency の導入を推奨。
- MTTR 計測:NRQL で以下クエリを実行し、月次レポートに組み込む。
sql
SELECT average(mttd), average(mttr)
FROM Metric WHERE metricName = 'lambda.invocation' SINCE 30 days ago
ベストプラクティスまとめ
- 統一タグ付与:K8s の
service,team、Lambda のfunction_nameを共通ラベルにし、AI が横断的に相関分析できるようにする。 - 学習期間確保:新規リソースはデプロイ後最低 48 時間はフルメトリックを取得させ、モデルの精度向上を図る。
- 自動修復は段階的に:Runbook 実行前に「承認」ステップや「ロールバック」スクリプトを用意し、誤操作による障害拡大を防止する。
8. 結論
- AI Ops Insights と Predictive Anomaly Detection(2024 年リリース)は、テレメトリー全体の相関と予測異常検知を自動化し、インシデント対応時間(MTTR)を大幅に短縮します。
- APM・Logs・Metrics・Events の統合 が前提となるため、各エージェントの最新版インストールと設定は必須です。
- Root Cause AI による因果関係可視化と、AI 推薦条件を組み込んだアラート + Runbook の自動修復フローで、手作業を最小限に抑えられます。
- SLO と Business KPI を同一ダッシュボードで表示 すれば、技術チームと経営層の意思決定がスピーディーになります。
- Kubernetes/サーバーレス環境でも有効 なベストプラクティス(統一タグ、学習期間確保、段階的自動修復)を導入すれば、モダンなマイクロサービス基盤でも AI 可観測性の恩恵を最大化できます。
これらの手順とベストプラクティスを自社環境に適用することで、New Relic の AI 搭載オブザーバビリティがシステム全体の可視性と信頼性を向上させ、ビジネス価値創出へ直結します。