これらの手順は、Swift Package Manager を使用する iOS/tvOS アプリに適用されます。その他のタイプについては、 iOS のインストールと構成を参照してください。
ご使用のiOSアプリケーションのインストール
インストレーションプロセスの一環として、New Relicはアプリケーショントークンを自動的に生成します。これはNew Relic でモニタリングする各モバイルアプリケーションを認証するための40文字の16進数の文字列です。
iOS/tvOS アプリケーションをインストールして構成するには:
- one.newrelic.comにアクセスします。
- 該当する場合。Mobile Apps」リストから、 「Add a new app」 を選択します。
- Get Started ページから、モバイルモニタリングのプラットフォームとして iOS を選択します。
- モバイルアプリの名前を入力して、 Continue を選択します。
引き続き、New Relicをモバイルモニタリング用に設定する手順をご紹介します。
Swift Package Managerを使った設定
選択 ファイル> Swift Packages> Add Package Dependency....
PackageファイルのGithub URLを追加します。
https://github.com/newrelic/newrelic-ios-agent-spmヒント
パッケージの抽出時に
artifact of binary target 'NewRelic' failed extraction: The operation couldn’t be completed. (TSCBasic.StringError error 1.)
エラーが発生した場合は、Xcode を閉じて、派生データ フォルダーを削除し、Xcode を再度開いて、もう一度試してください。NewRelicパッケージ製品を選択し、ターゲットを選択して、「完了」を選択します。
AppDelegate.swift
ファイルで、この呼び出しをapplicationDidFinishLaunchWithOptions
の最初の行として追加し、APP_TOKEN
アプリケーション トークンに置き換えます (アプリが SwiftUI で作成されている場合は、次の 手順 に従って AppDelegate をプロジェクトに追加してください)。NewRelic.start(withApplicationToken:"APP_TOKEN")重要
適切なインストゥルメンテーションを確保するために、
didFinishLaunchingWithOptions()
の先頭行でエージェントを呼び出し、メインスレッドでエージェントを実行する必要があります。呼び出しを後回しにして、バックグラウンドスレッドで実行したり、非同期で実行したりすると、想定外の動作や不安定な動作を引き起こす場合があります。ビルド スクリプトをターゲットのBuild Phasesに追加します。新しいビルド スクリプトが最後のビルド スクリプトであることを確認します。次に、
APP_TOKEN
をアプリケーション トークンに置き換えて、以下を貼り付けます。iOS エージェント 7.4.0 以降:
ARTIFACT_DIR="${BUILD_DIR%Build/*}SourcePackages/artifacts"SCRIPT=`/usr/bin/find "${SRCROOT}" "${ARTIFACT_DIR}" -type f -name run-symbol-tool | head -n 1`/bin/sh "${SCRIPT}" "APP_TOKEN"iOS エージェント 7.3.8 以下:
SCRIPT=`/usr/bin/find "${SRCROOT}" -name newrelic_postbuild.sh | head -n 1`if [ -z "${SCRIPT}"]; thenARTIFACT_DIR="${BUILD_DIR%Build/*}SourcePackages/artifacts"SCRIPT=`/usr/bin/find "${ARTIFACT_DIR}" -name newrelic_postbuild.sh | head -n 1`fi/bin/sh "${SCRIPT}" "APP_TOKEN"オプション:
ビルド スクリプトの既存の行の上に次の行を追加して、デバッグ中にシンボルのアップロードをスキップします。
if [ ${CONFIGURATION} = "Debug" ]; thenecho "Skipping DSYM upload CONFIGURATION: ${CONFIGURATION}"exit 0fi[スクリプトの実行] の下に [スクリプトの実行: 依存関係分析に基づく] というチェックボックスがある場合は、チェックされていないことを確認してください。
アプリをクリーンアップしてビルドし、シミュレーターなどで実行します。
このドキュメントはインストールで役立ちましたか。
トラブルシューティング
Swift パッケージを追加するときに、次のエラーが表示される場合があります。
- アーティファクトがチェックサムと一致しません
- フレームワークを remoteSourceControl からダウンロードできません
これらのタイプのエラーが表示された場合は、次のことを試してください。
Xcode プロジェクトから New Relic Swift パッケージの統合を解除します。
ターミナルから次のコマンドを実行して、spm キャッシュを削除します。
rm -rf ~/Library/Caches/org.swift.swiftpmrm -rf ~/Library/org.swift.swiftpmXcode を使用して派生データを削除します。
New Relic Swift パッケージを Xcode プロジェクトに再統合します。
ログレベルの変更(オプション)
デフォルトでは、New Relic エージェントはinfo
レベルでログを記録します。ログ レベルをverbose
以上に上げることが推奨されるのは、リリース ビルドではなく、デバッグの場合のみです。モバイル アプリの監視には、次の 6 つのログ レベルを使用できます。
none
error
warning
info
verbose
ALL
アプリのログ レベルを上げるには、 NewRelic.start(withApplicationToken)
を呼び出す前に次のメソッド呼び出しを追加します。
NRLogger.setLogLevels(NRLogLevelALL.rawValue)