• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

Swift Package Managerのインストール

この手順は、Swift Package Managerを使用するiOSアプリに適用されます。その他のタイプについては、 iOS のインストールと設定 を参照してください。

ご使用のiOSアプリケーションのインストール

インストレーションプロセスの一環として、New Relicはアプリケーショントークンを自動的に生成します。これはNew Relic でモニタリングする各モバイルアプリケーションを認証するための40文字の16進数の文字列です。

iOSアプリケーションをインストールして設定するには:

  1. one.newrelic.comに移動します。
  2. 該当する場合。Mobile Apps」リストから、 「Add a new app」 を選択します。
  3. Get Started ページから、モバイルモニタリングのプラットフォームとして iOS を選択します。
  4. モバイルアプリの名前を入力して、 Continue を選択します。

引き続き、New Relicをモバイルモニタリング用に設定する手順をご紹介します。

Swift Package Managerを使った設定

  1. 選択 ファイル> Swift Packages> Add Package Dependency....

  2. PackageファイルのGithub URLを追加します。

    https://github.com/newrelic/newrelic-ios-agent-spm

    ヒント

    アーティファクトのバイナリターゲット「NewRelic」の抽出に失敗しました。The operation couldn't be completed.(TSCBasic.StringError error 1.) パッケージの抽出時にエラーが発生した場合は、Xcodeを終了し、Derrived Dataフォルダを削除した後、Xcodeを再度開いて、再度お試しください。

  3. NewRelicパッケージ製品を選択し、ターゲットを選択して、「完了」を選択します。

  4. AppDelegate.swift ファイルの中で、 applicationDidFinishLaunchWithOptions の1行目にこの呼び出しを追加し、 APP_TOKENアプリケーション・トークン に置き換えます。

    NewRelic.start(withApplicationToken:"APP_TOKEN")

    重要

    適切なインストゥルメンテーションを確保するために、didFinishLaunchingWithOptions()の先頭行でエージェントを呼び出し、メインスレッドでエージェントを実行する必要があります。呼び出しを後回しにして、バックグラウンドスレッドで実行したり、非同期で実行したりすると、想定外の動作や不安定な動作を引き起こす場合があります。

  5. ビルドスクリプトをターゲットの Build Phases に追加します。この新しいビルドスクリプトが最後のビルドスクリプトであることを確認します。そして、 APP_TOKEN をあなたの アプリケーション・トークン に置き換えて、以下を貼り付けます。

    SCRIPT=`/usr/bin/find "${SRCROOT}" -name newrelic_postbuild.sh | head -n 1`
    
    if [ -z "${SCRIPT}"]; then
    ARTIFACT_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"
  6. アプリをクリーンアップしてビルドし、シミュレーターなどで実行します。

ログレベルの変更(オプション)

モバイルアプリをモニタリングする際は、以下の6つのログレベルを使用できます。

  • なし
  • エラー
  • 警告
  • 情報
  • 詳細
  • ALL

アプリでのロギングレベルを上げるために、 NewRelic.start(withApplicationToken) を呼び出す前に、このメソッドコールを追加します。

NRLogger.setLogLevels(NRLogLevelALL.rawValue)
Copyright © 2022 New Relic Inc.