• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

instrumentez votre projet watchOS avec New Relic

Ce document vous explique comment mettre à jour votre projet watchOS afin que vous puissiez le monitorer avec New Relic. Étant donné que les projets watchOS ne contiennent pas déjà de classe ApplicationDelegate ou ExtensionDelegate , vous devrez ajouter l'une ou l'autre à votre projet. Ces délégués sont nécessaires pour configurer et démarrer l'agent New Relic dans un projet watchOS.

Exigences

Avant d'ajouter le WatchAppDelegate, installez d'abord l'agent New Relic.

Important

Pour garantir une instrumentation appropriée, vous devez configurer et démarrer l'agent comme première étape de applicationDidFinishLaunching() , puis exécuter l'agent sur le thread principal. Démarrer l'appel ultérieurement, sur un thread d'arrière-plan ou de manière asynchrone, peut provoquer un comportement inattendu ou instable.

Après avoir installé l'agent, consultez les instructions ci-dessous pour utiliser WatchAppDelegate ou l'extension watchOs.

Activer New Relic avec WatchAppDelegate

  1. Créez un fichier WatchAppDelegate.swift dans votre projet, puis ajoutez une classe nommée WatchAppDelegate qui hérite de NSObject. Cette classe doit être conforme au protocole WKApplicationDelegate .

  2. Ajoutez le applicationDidFinishLaunching à la classe WatchAppDelegate . Au plus près du début de la fonction applicationDidFinishLaunching , ajoutez NewRelic.start(withApplicationToken: "APP_TOKEN"). Assurez-vous de remplacer APP_TOKEN par votrejeton d'application. Votre code pourrait ressembler à ceci :

    import WatchKit
    import NewRelic
    class WatchAppDelegate: NSObject, WKApplicationDelegate {
    func applicationDidFinishLaunching() {
    NewRelic.start(withApplicationToken: "APP_TOKEN")
    return true
    }
    }
  3. Dans l’objet de structure de l’application principale, ajoutez le snippet suivant :

    import NewRelic
    @main
    struct Watch_App: App {
    @WKApplicationDelegateAdaptor var appDelegate: WatchAppDelegate
    }

Activer New Relic avec l'extension watchOS

  1. Ajoutez la clé WKExtensionDelegateClassName dans le fichier Info.plist de votre extension WatchKit. Cela crée automatiquement un objet délégué nommé ExtensionDelegate. Pour plus d'informations, voir WKExtensionDelegate.

  2. Dans la classe ExtensionDelegate que vous avez créée, ajoutez la fonction applicationDidFinishLaunching .

  3. Le plus près possible du début de applicationDidFinishLaunching , ajoutez NewRelic.start(withApplicationToken: "APP_TOKEN") en remplaçant APP_TOKEN par votre jeton d'application. Votre code pourrait ressembler à ceci :

    import WatckKit
    import NewRelic
    class ExtensionDelegate: NSObject, WKExtensionDelegate {
    func applicationDidFinishLaunching() {
    NewRelic.start(withApplicationToken: "APP_TOKEN")
    return true
    }
    }

Limitations de la plateforme watchOS

Apple ne fournit pas les mêmes API iOS à la plateforme watchOS. Cela signifie que certaines fonctionnalités de l'agent iOS ne sont pas encore disponibles sur watchOS. Nous cherchons à avoir la parité dans notre plateforme, donc au fur et à mesure qu'Apple sortira de nouvelles fonctionnalités, nous continuerons à mettre à jour l'agent. Voici quelques fonctionnalités connues, actuellement non prises en charge :

  • Gestion des crashs : PLCrashReporter est une bibliothèque tierce utilisée par l'agent, qui n'est pas compatible avec watchOS.
  • Nombre de plantages : étant donné que les plantages ne sont pas signalés sur watchOS, nous ne pouvons pas collecter le nombre de plantages.
  • Exceptions gérées : l'agent capture et télécharge les exceptions gérées, mais New Relic ne peut actuellement pas les afficher.
  • Collecte en arrière-plan : si NRFeatureFlag_BackgroundReporting est activé, l'agent continuera à monitorer l'application, mais ne collectera ni ne téléchargera sur New Relic en arrière-plan.
  • Événement marqué hors ligne : si NRFeatureFlag_OfflineStorage est activé, l'agent peut stocker les récoltes hors ligne, puis les envoyer lorsqu'il est en ligne. L'événement créé dans un état hors ligne ne sera cependant pas marqué comme tel au niveau de l'attribut.
  • Heures de démarrage de l'application à chaud/froid : l'agent dépend de la notification UIKit pour capturer les heures de démarrage à chaud/froid, mais ces informations ne sont pas encore disponibles pour watchOS.

Si vous avez besoin d'aide supplémentaire, vous pouvez contacter l'assistance à l'adresse support.newrelic.com.

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.