Contents
New Relicでアプリパフォーマンスをモニタリングする設定方法を完全解説
モバイル・ウェブアプリ開発者は、ユーザー体験向上のため「New Relic アプリ パフォーマンス モニタリング 設定方法」を検索するケースが近年急増しています。本記事では、React Native・Android・iOS向けに実装例付きでステップバイステップガイドを紹介し、無料アカウント登録からクラッシュレポートの構築まで網羅します。開発環境でも有効な無料プラン活用法も解説するため、ご自身のプロジェクトに最適な導入手順が見つかります。
モニタリング対象システムの選定とNew Relicアカウント作成
アプリケーションの規模や技術スタックによって監視戦略は大きく異なります。WebサービスであればNode.jsやPython、モバイルアプリではReact Native・Android・iOSが代表的です。New Relicはこれらすべてに対応するため、導入前にターゲットを明確化することが重要です。
無料アカウントの作成は以下の手順で完了できます:
- New Relic公式サイトにアクセス
- 「Get started」ボタンを選択し、メールアドレスとパスワードを入力
- プラン選択画面では「Free tier」を選び、個人・開発環境用として登録
無料プランでも月間データ容量の上限(1GB)内で十分なモニタリングが可能です。 本記事ではその活用法も後述します。
APMエージェントのインストール手順(Java/Node.js/Pythonなど)
技術用語の説明
- APM (Application Performance Monitoring): アプリケーションパフォーマンスモニタリング。アプリの性能をリアルタイムで監視する技術です。
- エージェント: New Relicが提供する、アプリケーションに埋め込むモジュールで、トレースデータやメトリクスを収集します。
Java環境への導入
JavaアプリケーションにNew Relicを統合するには、newrelic-apiライブラリの利用が基本です。以下が主な手順になります:
- MavenまたはGradleで依存関係を追加
- Maven:
groupId="com.newrelic.agent.java"をpom.xmlに記述 - Gradle:
implementation 'com.newrelic:agent-java:...'をbuild.gradleに記述 -
newrelic.yml設定ファイルを作成し、インスタンスキーを記載設定ファイルはプロジェクト直下(例:
/src/main/resources/newrelic.yml)に配置 -
サーバー起動時にエージェントを有効化
- ランチャーに
-javaagent:/path/to/newrelic.jarを追加
Node.jsでのセットアップ
Node.jsでは@newrelic/native-metricsパッケージを使用します:
npm install @newrelic/native-metrics-
設定ファイルにAPIキーと収集するメトリクスの種類を指定
Node.js環境では設定ファイルが
newrelic.jsonになります -
アプリ起動時に自動でモニタリングが開始
Pythonプロジェクト向け設定
Python環境ではnewrelicパッケージが利用可能:
pip install newrelic-
newrelic-adminコマンドで設定ファイルを生成設定ファイルは
newrelic.iniになります -
起動スクリプトに
newrelic-admin run-program your_app.pyを追加
| 言語 | インストール方法 | 必要なファイル | 公式ドキュメント |
|---|---|---|---|
| Java | Maven/Gradle | newrelic.yml | 公式Javaガイド |
| Node.js | npm install | newrelic.json | Node.js導入方法 |
| Python | pip install | newrelic.ini | Pythonガイド |
モバイルアプリ向けSDK導入方法(React Native・Android・iOS別)
React Nativeプロジェクトへの統合
npm install new-relic-react-native-
AndroidとiOSの特有設定を
android/app/src/main/assets/NewRelicConfig.jsonに記述注意: iOSではCocoaPods経由でインストールが必要です。以下の手順を参照。
-
ビルド時に
npx react-native linkでライブラリを接続
iOS CocoaPods導入手順
pod initでPodfileを作成-
Podfileに以下を追加:
ruby
target 'YourApp' do
pod 'NewRelicReactNative'
end -
pod installを実行し、Xcodeプロジェクトを開く
Androidネイティブ実装
-
build.gradleに依存関係を追加
gradle
dependencies {
implementation 'com.newrelic.agent.android:android-agent:x.x.x'
} -
AndroidManifest.xmlにNew Relic用のパーミッションを設定例:
<uses-permission android:name="android.permission.INTERNET" /> -
サービス起動時に
NewRelic.start()を呼び出す
iOS Swiftでの初期設定
- CocoaPodsで
pod 'NewRelicReactNative'をインストール -
Info.plistにライセンスキーを登録キー:
NewRelic-LicenseKey, 値: 作成したAPIキー -
アプリ起動時に
NewRelic.start(withConfig:)メソッドを呼び出す
各プラットフォームでは、ネットワークパーサーの設定やビルド時のエラー対応がポイントです。特にReact Nativeの場合、AndroidとiOSで別々の設定ファイルが必要になります。
HTTP通信・ネットワークパフォーマンス監視設定
API呼び出しのトレース設定
New Relicでは「Trace」機能を使用してリクエストを可視化できます:
-
newrelic.setTransactionName()でメソッド名を指定例:
newrelic.setTransactionName("user_login") -
トレースIDをログ出力に組み込むことで、特定のAPI呼び出しを追跡可能
クライアントサイドネットワークメトリクス収集
モバイルアプリでは以下のように設定できます:
- HTTPリクエストのタイムスタンプ取得:
newrelic.startTransaction()で開始時刻を記録し、終了時にendTransaction()で処理時間を計測 - メトリクス可視化: New Relicダッシュボードで「ネットワーク遅延」や「API成功率」のグラフが自動生成される
クラッシュレポートとアラート通知の構成
エラータイプごとの監視ルール作成
New Relicでは「Error Events」という機能でクラッシュを分類できます:
- 致命的エラー(アプリ終了時): アプリが正常に動作不能になった場合
- 非致命的エラー(UIに影響を与えるが動作可能): ログ出力やUIの小さな破損などのケース
Slack/メール通知設定手順
- New Relicダッシュボードの「Alerts」タブからポリシーを作成
- 通知先にSlackワークスペースやメールアドレスを登録
- 個別エラーごとにアラート条件(例:1時間あたり5回以上の発生)を設定
無料プランの有効活用法
月間データ容量の最適化術
無料プランでは月間1GBまでのデータ収集が可能です。以下のような工夫で最大限に活用できます:
-
不要なメトリクスの無効化: ダッシュボードから「Performance」→「Data usage」で収集範囲を調整
-
フィルタリング機能の活用: 特定バージョンや時間帯のみを対象に設定
チーム共有機能の使い方
- 新規ユーザーアカウントの作成は無料プランでも可能です(最大5アカウント)
- 共有ダッシュボードの作成: 「Share」ボタンでURLを生成し、チームメンバーとリアルタイムでデータ確認
まとめ
本記事では、New Relicを用いたアプリパフォーマンスモニタリングの導入手順について以下を解説しました:
- モニタリング対象の選定とアカウント作成
- Java/Node.js/PythonでのAPMエージェントインストール
- React Native・Android・iOS向けSDK導入
- HTTP通信監視とクラッシュレポート構築
- 無料プランの活用法
New Relic公式サイトで無料アカウント登録後、記事内の手順を実施してアプリのパフォーマンス改善を開始してください。開発環境でも有効な無料プランを最大限に利用することで、プロジェクトの品質向上が期待できます。