Configuration de la surveillance des canaux Roku avec RUM
Le RUM pour Roku n'est pas disponible sur le site US1-FED de Datadog.
Section Overview
Le Real User Monitoring (RUM) de Datadog vous permet de visualiser et d’analyser les performances en temps réel et les parcours des utilisateurs de votre canal.
Le SDK Roku Datadog prend en charge les canaux BrightScript dans la version 10 et les versions ultérieures du système d’exploitation Roku.
Audit Trail
- Déclarez le SDK en tant que dépendance.
- Ajoutez les détails de l’application dans Datadog.
- Initialisez la bibliothèque.
- Instrumentez le canal.
Déclarer le SDK en tant que dépendance
Utiliser ROPM (recommandé)
ROPM
est un gestionnaire de packages pour la plateforme Roku (basé sur NPM). Si vous n’utilisez pas encore ROPM
dans votre projet Roku, consultez le guide de prise en main du gestionnaire de packages. Une fois votre projet configuré pour tirer parti de ROPM
, vous pouvez utiliser la commande suivante afin d’installer la dépendance Datadog :
ropm install datadog-roku
Si votre projet n’utilise pas ROPM
, installez la bibliothèque manuellement en téléchargeant l’archive du SDK Roku au format zip et en la décompressant dans le dossier racine de votre projet.
Vérifiez que vous disposez bien d’un sous-dossier roku_modules/datadogroku
dans les dossiers components
et source
de votre projet.
Ajouter les détails de l’application dans Datadog
Accédez à UX Monitoring > Setup & Configurations > New Application.
Sélectionnez le type d’application *Roku et attribuez un nom à l’application afin de générer un ID d’application Datadog unique ainsi qu’un token client.
Pour désactiver la collecte automatique des IP client ou des données de géolocalisation, décochez les cases correspondant à ces paramètres. Pour en savoir plus, consultez la section Données RUM recueillies (Roku).
Pour assurer la sécurité de vos données, vous devez utiliser un token client. Si vous vous contentez d’utiliser des clés d’API Datadog pour configurer la bibliothèque dd-sdk-roku
, ces clés seront exposées côté client dans le code BrightScript du canal Roku.
Pour en savoir plus sur la configuration d’un token client, consultez la documentation à ce sujet.
Initialiser la bibliothèque
Dans l’extrait d’initialisation, définissez un nom d’environnement. Pour en savoir plus, consultez la section Utiliser des tags.
sub RunUserInterface(args as dynamic)
screen = CreateObject("roSGScreen")
scene = screen.CreateScene("MyScene")
screen.show()
datadogroku_initialize({
clientToken: "<TOKEN_CLIENT>",
applicationId: "<ID_APPLICATION>"
site: "us1",
env: "<NOM_ENVIRONNEMENT>",
sessionSampleRate: 100, ' le pourcentage (nombre entier) de sessions à suivre
launchArgs: args
})
' terminer la configuration de votre canal ici
end sub
sub RunUserInterface(args as dynamic)
screen = CreateObject("roSGScreen")
scene = screen.CreateScene("MyScene")
screen.show()
datadogroku_initialize({
clientToken: "<TOKEN_CLIENT>",
applicationId: "<ID_APPLICATION>"
site: "eu1",
env: "<NOM_ENVIRONNEMENT>",
sessionSampleRate: 100, ' le pourcentage (nombre entier) de sessions à suivre
launchArgs: args
})
' terminer la configuration de votre canal ici
end sub
sub RunUserInterface(args as dynamic)
screen = CreateObject("roSGScreen")
scene = screen.CreateScene("MyScene")
screen.show()
datadogroku_initialize({
clientToken: "<TOKEN_CLIENT>",
applicationId: "<ID_APPLICATION>"
site: "us3",
env: "<NOM_ENVIRONNEMENT>",
sessionSampleRate: 100, ' le pourcentage (nombre entier) de sessions à suivre
launchArgs: args
})
' terminer la configuration de votre canal ici
end sub
sub RunUserInterface(args as dynamic)
screen = CreateObject("roSGScreen")
scene = screen.CreateScene("MyScene")
screen.show()
datadogroku_initialize({
clientToken: "<TOKEN_CLIENT>",
applicationId: "<ID_APPLICATION>"
site: "us5",
env: "<NOM_ENVIRONNEMENT>",
sessionSampleRate: 100, ' le pourcentage (nombre entier) de sessions à suivre
launchArgs: args
})
' terminer la configuration de votre canal ici
end sub
sub RunUserInterface(args as dynamic)
screen = CreateObject("roSGScreen")
scene = screen.CreateScene("MyScene")
screen.show()
datadogroku_initialize({
clientToken: "<TOKEN_CLIENT>",
applicationId: "<ID_APPLICATION>"
site: "ap1",
env: "<NOM_ENVIRONNEMENT>",
sessionSampleRate: 100, ' le pourcentage (nombre entier) de sessions à suivre
launchArgs: args
})
' terminer la configuration de votre canal ici
end sub
Instrumenter le canal
Consultez la section Suivre les ressources RUM afin d’activer le suivi automatique de toutes vos ressources, ainsi que la section Enrichissement des sessions utilisateur pour ajouter des informations utilisateur ou globales personnalisées à vos événements.
Suivre les vues RUM
Pour décomposer les sessions utilisateur en étapes logiques, créez une vue manuellement en utilisant le code ci-dessous. Chaque passage à un nouvel écran au sein de votre canal doit correspondre à une nouvelle vue RUM.
viewName = "VideoDetails"
viewUrl = "components/screens/VideoDetails.xml"
m.global.datadogRumAgent.callfunc("startView", viewName, viewUrl)
Suivre les actions RUM
Les actions RUM représentent les interactions de vos utilisateurs avec votre canal. Vous pouvez transmettre des actions à Datadog comme suit :
targetName = "playButton" ' le nom du nœud SG avec lequel l'utilisateur a interagi
actionType = "click" ' le type d'interaction, doit correspondre à « click », « back » ou « custom »
m.global.datadogRumAgent.callfunc("addAction", { target: targetName, type: actionType})
Suivre les erreurs RUM
Lorsque vous effectuez une opération susceptible de générer une exception, vous pouvez transmettre l’erreur à Datadog comme suit :
try
doSomethingThatMightThrowAnException()
catch error
m.global.datadogRumAgent.callfunc("addError", error)
end try
Pour aller plus loin
Documentation, liens et articles supplémentaires utiles: