vague memory

うろ覚えを無くしていこうともがき苦しむ人の備忘録

New Relic infrastructure agent の guided install には User key も必要

New Relicinfrastructure agent をインストールする際に license key 無効で失敗したのでメモ。

FATAL could not fetch license key for account 9999999: 401 response returned: Invalid credentials provided. Missing API key or an invalid API key was provided.


結論

記載の手順に沿って実施すれば発生しません。

ガイドを勧めていくと表示されるコマンドを実行する際に既存の API key を利用してインストールしようとした所発生しました。 原因は User key ではなく License key を使っていたからです。

コマンド一撃でインストールできる親切設計ですが、エラーメッセージは若干不親切だと思いました。

以上

guided install について

最初に表示されるのは License key です。

次にインストールコマンドが案内され、こちらを監視対象ホストで実行すると infrastructure agent がインストールされます。 ここで変数 NEW_RELIC_API_KEY が入っていますが、これは User key です。

User Key を作成していない状態で上記の画面まで進めると、自動的に User key が生成されます。手動で User Key を生成する必要がありません。 Installer API Key という名称で User key が作成されていました。

"Customize your installation" の部分で proxy URL の指定を追加できます。

監視対象ホストでコマンドを実行すると、経過状況が出力され、

インストールが完了します。

guided install で設定される License key

インストールが完了すると各設定ファイル群が作成されています。License key は newrelic-infra.yml に設定されます。

$ cat /etc/newrelic-infra.yml
enable_process_metrics: true
status_server_enabled: true
status_server_port: 18003
license_key: *****

ガイドの手順を実行する際に既に複数の License key を持っている場合、 必ずしもガイドの最初に表示されていた License key が設定されるわけではないようです。

明示的に特定の License key にしたい場合は、インストール後に newrelic-infra.yml の書き換えが必要になります。 または、インストールコマンドに環境変数 NRIA_LICENSE_KEY を付与することで指定できるようです。

API Key の種類について

License key

ライセンスキーは、ほぼすべてのデータの報告に使用されます

Browser key

ブラウザキーは、 ブラウザモニタリング データを報告するために使用されます。

Mobile app token

モバイルアプリトークンは、 モバイルモニタリング のデータを報告するために使用されます。

User key

NerdGraph 、データの問い合わせや機能の設定に使用するGraphQL APIを使用する際に、ユーザーキーが必要となります。

上の3つは ingest type (データを New Relic に取り込むためのもの)で、 User key だけ API 利用のためのキーとなっています。

User key が必要な理由

よくよく見ると、インストールコマンドで指定している Key の書式が License key (小文字) ではなく User key (大文字ハイフン有り) です。

また、ガイドの Customize の説明部分に infrastructure agent に加え、CLI もインストールするとの記載があります。 インストールコマンドの URL も newrelic-cli/script.sh となっています。

guided install は New Relic CLI を使用している

New Relic command line interface (CLI) の使用には User key が必要です。

For this guide you just need:

Your New Relic user key. An instrumented application in your New Relic account.

guided install は New Relic CLI で行われるため User key の指定が必要ということになります。