Next.jsアプリケーション監視
Next.jsはWebページとアプリケーションのパフォーマンスを最適化したJavaScriptフレームワークです。これを使用して、サーバー側でレンダリングされるアプリケーションとミドルウェアを開発できます。
APMインサイトNext.jsパッケージのヘルプ(英語版)から、Node.jsエージェントを用いてバックエンドのオブザーバビリティを監視できます。この監視では、アプリケーションの重要メトリックおよびNext.js特有のメトリックを監視できます。
Webバイタル、AJAX要求、ページビュー数などのフロントエンドメトリックを監視したい場合は、監視したいWebページやアプリケーションのIndexページヘッダー部分にRUMスクリプトを挿入して設定します。
- サポートしている最小のNext.jsバージョンは12.0.9です。
- APMインサイトNext.jsパッケージでは、ビルド構築中やクライアントサイド内のコードで発生したアクションの手順について、記載はありません。
目次
APMインサイトNext.jsパッケージをアプリケーションに追加する方法は次のとおりです。
APMインサイトNext.jsパッケージのインストール
APMインサイトNext.jsパッケージのインストール方法は次のとおりです。
- Next.jsプロジェクトで次のコマンドを実行し、APMインサイトNode.js(APM)エージェントとNext.jsのAPMインサイトミドルウェアをインストールします。
npm install apminsight @apminsight/next
- コマンド実行が完了したら、package.jsonがファイルに依存性が表示されます。
"dependencies": {
"@apminsight/next": "^1.0.0",
"apminsight": "^3.1.2",
"next": "latest",
},
設定
方法1:
package.jsonファイルのscripts項目を更新して、devおよびstart npmスクリプトを修正します。
"@apminsight/next"ミドルウェアをロードするための"Node’s -r"オプションを実行できるようにアプリケーションを許可します。
NODE_OPTIONS='-r @apminsight/next' next start
scripts項目は次のようなものがあります。
"scripts": {
"dev": "NODE_OPTIONS='-r @apminsight/next' next",
"build": "next build",
"start": "NODE_OPTIONS='-r @apminsight/next' next start"
},
方法2:
プログラム実行のためのコントロールがない場合、他のモジュールの前に、"@apminsight/next"モジュールをロードしてください。
しかし、この方法は使用しないことをおすすめします。次のビルドを実行する際のバンドル中にに問題が発生し、バンドルが不必要に大きくなることがわかりました。
require('@apminsight/next')
/* ... the rest of your program ... */
方法3:
カスタムNext.jsサーバーの場合
Nextをカスタムサーバーで使用している場合、Next CLIを使用してアプリケーションを実行することができません。この場合、次のコマンドを実行してNext.jsを実装してください。
node -r @apminsight/next your-start-file.js
設定値の設定
ファイル内を設定したい場合、次の手順を行ってください。
- "apminsightnode.json"という名前のファイルを新規作成し、アプリケーションを実行するディレクトリに配置します。
- ファイル内に次のコードを追加します。
{"licenseKey" : "<license-key>",
"appName" : "<application-name>",
"port" : <application-port> }
プロキシを使用している場合は、次のコードを追加します。
{"licenseKey" : "<license-key>",
"appName" : "<application-name>",
"port" : <application-port>,
"proxyServerHost" : "<proxy-server>",
"proxyServerPort" : <proxy-port>,
"proxyAuthUser" : "<proxy-user-name>",
"proxyAuthPassword" : "<proxy-password>"}
バックエンドパフォーマンスデータの表示
メトリックの表示方法は次のとおりです。
- Site24x7にログインします。
- [APM]→[アプリケーション名]をクリックします。
上記手順により、アプリケーションのサーバーサイドのデータフローが表示されます。
フロントエンドパフォーマンスデータの表示
フロントエンドの監視を行いたい場合は、こちらのページをご確認ください。