Le recomendamos que utilice nuestra instalación guiada para configurar el monitoreo de iOS. Sin embargo, si necesita instalar el agente manualmente, siga los pasos a continuación para instalar el agente New Relic iOS con el administrador de paquetes Swift.
Instala tu aplicación iOS
Como parte del proceso de instalación, New Relic genera automáticamente un token de aplicación. Esta es una cadena hexadecimal de 40 caracteres para autenticar cada aplicación móvil que monitor en New Relic.
Para instalar y configurar su aplicación iOS/tvOS:
Vaya a
.
Si corresponde: en la lista
Mobile Apps
, seleccione
Add a new app
.
Desde la página
Get Started
, seleccione
iOS
como plataforma de monitoreo de móviles.
Escriba un nombre para su aplicación móvil y luego seleccione
Continue
.
Continúe con los pasos para configurar New Relic para monitoreo de móviles.
Configurar usando Swift administrador de paquetes
Seleccione File > Swift Packages > Add Package Dependency....
Agregue la URL de Github del archivo del paquete:
https://github.com/newrelic/newrelic-ios-agent-spmSugerencia
Si recibe un error
artifact of binary target 'NewRelic' failed extraction: The operation couldn’t be completed. (TSCBasic.StringError error 1.)
al extraer el paquete, cierre Xcode, elimine la carpeta Datos derivados, vuelva a abrir Xcode y vuelva a intentarlo.Seleccione el producto del paquete NewRelic, seleccione su objetivo y seleccione Finish.
En su archivo
AppDelegate.swift
, agregue esta llamada como la primera línea deapplicationDidFinishLaunchWithOptions
, reemplazandoAPP_TOKEN
con su token de aplicación: (si su aplicación está escrita en SwiftUI, siga estas instrucciones para agregar un AppDelegate a su proyecto).NewRelic.start(withApplicationToken:"APP_TOKEN")Importante
Para garantizar una instrumentación adecuada, debe llamar al agente en la primera línea de
didFinishLaunchingWithOptions()
y ejecutar el agente en el hilo principal. Iniciar la llamada más tarde, en un subproceso en segundo plano o de forma asincrónica puede provocar un comportamiento inesperado o inestable.Según la versión de su agente de iOS, agregue el siguiente script de compilación al Build Phases de su objetivo. Asegúrese de que el script sea el último script de compilación y reemplace
APP_TOKEN
con el token de su aplicación.- Para agente iOS 7.4.0 o superior:
bash$ARTIFACT_DIR="${BUILD_DIR%Build/*}"$SCRIPT=`/usr/bin/find "${SRCROOT}" "${ARTIFACT_DIR}" -type f -name run-symbol-tool | head -n 1`$/bin/sh "${SCRIPT}" "APP_TOKEN"- Para el agente iOS 7.3.8 o bajo:
bash$SCRIPT=`/usr/bin/find "${SRCROOT}" -name newrelic_postbuild.sh | head -n 1`$/bin/sh "${SCRIPT}" "APP_TOKEN"(Opcional) Agregue las siguientes líneas al script de compilación anterior para omitir la carga de símbolos durante la depuración:
bash$if [ ${CONFIGURATION} = "Debug" ]; then$echo "Skipping DSYM upload CONFIGURATION: ${CONFIGURATION}"$exit 0$fiSi hay una casilla de verificación que dice "Ejecutar script: basado en análisis de dependencia", asegúrese de que no esté marcada.
Limpie y cree su aplicación, luego ejecútela en el simulador u otro dispositivo.
¿Te ha ayudado este documento con la instalación?
Resolución de problemas
Es posible que vea los siguientes errores al agregar el paquete Swift:
- El artefacto no coincide con la suma de comprobación
- No se puede descargar framework desde remotoSourceControl
Si ve este tipo de errores, intente lo siguiente:
Desintegre el paquete New Relic Swift del proyecto Xcode.
Ejecute estos comandos desde la terminal para eliminar cachés de spm:
bash$rm -rf ~/Library/Caches/org.swift.swiftpm$rm -rf ~/Library/org.swift.swiftpmEliminar datos derivados usando Xcode.
Vuelva a integrar el paquete New Relic Swift en el proyecto Xcode.
(Opcional) Cambiar el nivel de logging
De forma predeterminada, el agente de iOS inicia sesión en el nivel info
. Puedes cambiar el nivel de logs para recopilar más o menos datos. Hay seis niveles de logs admitidos:
none
error
warning
info
verbose
ALL
Importante
Aumente el nivel de logs solo a verbose
o superior para la depuración, no para las versiones de lanzamiento.
Para cambiar el nivel de logging en su aplicación, agregue esta llamada a método antes de llamar a NewRelic.start(withApplicationToken)
:
NRLogger.setLogLevels(NRLogLevelALL.rawValue)