El agente Roku New Relic está diseñado para monitorear el comportamiento de la aplicación Roku, centrar en eventos a nivel del sistema y relacionados con el video. Emplea la API de eventos para enviar datos a través de una interfaz REST, admitiendo cinco tipos de eventos:
- ConnectedDeviceSystem: Evento del sistema
- VideoAction: Video del evento
- VideoErrorAction: evento de error
- VideoAdAction: Anuncio de evento
- VideoCustomAction: evento personalizado
Requisitos previos
Antes de instalar el agente de Streaming Video & Ads para Roku, asegúrese de tener:
- Su ID de cuentade New Relic
- Tu New Relic
- Revisó los requisitos de compatibilidad del agente de Streaming Video & Ads
Instalar el agente de Roku
Descargar y extraer el paquete
Descargue el paquete del agente de Roku Video y descomprímalo para acceder a la siguiente estructura de archivos:
components/NewRelicAgent/ NRAgent.brs NRAgent.xml NRTask.brs NRTask.xmlsource/ NewRelicAgent.brsCopia archivos a tu proyecto
Copie la carpeta NewRelicAgent al directorio components y el archivo NewRelicAgent.brs al directorio source de su proyecto de aplicación Roku.
Inicializar el agente
Inicializa el agente de New Relic en tu archivo principal de BrightScript (por ejemplo, Main.brs):
m.nr = NewRelic("ACCOUNT ID", "LICENSE KEY")Sugerencia
Configuración avanzada: Opcionalmente, puede especificar el nombre de la aplicación, el token de la aplicación, la región del endpoint y el logging:
m.nr = NewRelic("ACCOUNT ID", "LICENSE KEY", "APP NAME", "APPLICATION TOKEN", "US", true)El endpoint predeterminado es US. Para los centros de datos de la UE, utilice EU.
Habilitar capturas de eventos
El agente de medios de New Relic para dispositivos Roku captura los eventos que ocurren durante la reproducción de contenido de video. Para habilitar la captura automática de eventos, agregue estas llamadas a su aplicación:
Registrar el inicio de la aplicación
Después de inicializar el agente, registre el evento de inicio de la aplicación:
nrAppStarted(m.nr, aa)Habilitar el seguimiento del sistema y de video
Activar el seguimiento de eventos del sistema y de video:
m.syslog = NewRelicSystemStart(m.port)Para el seguimiento de video, llama a NewRelicVideoStart(m.nr, m.video) en tu componente de escena.
Procesar mensajes en bucle de espera
Maneje los eventos del sistema en su bucle de espera principal:
if nrProcessMessage(m.nr, msg) = false ' Process other messagesend ifEjemplo completo
A continuación se muestra un ejemplo completo de cómo integrar el agente de New Relic en una aplicación de Roku:
Principal.brs
sub Main(aa as Object) screen = CreateObject("roSGScreen") m.port = CreateObject("roMessagePort") screen.setMessagePort(m.port)
'Create the main scene that contains a video player scene = screen.CreateScene("VideoScene") screen.show()
'Init New Relic Agent m.nr = NewRelic("ACCOUNT ID", "LICENSE KEY")
'Send APP_STARTED event nrAppStarted(m.nr, aa)
'Pass NewRelicAgent object to the main scene scene.setField("nr", m.nr)
'Activate system tracking m.syslog = NewRelicSystemStart(m.port)
while (true) msg = wait(0, m.port) if nrProcessMessage(m.nr, msg) = false 'It is not a system message captured by New Relic Agent if type(msg) = "roPosterScreenEvent" if msg.isScreenClosed() exit while end if end if end if end whileend subVideoEscena.xml
<?xml version="1.0" encoding="utf-8" ?><component name="VideoScene" extends="Scene"> <interface> <!-- Field used to pass the NewRelicAgent object to the scene --> <field id="nr" type="node" onChange="nrRefUpdated" /> </interface>
<children> <Video id="myVideo" translation="[0,0]" /> </children>
<!-- New Relic Agent Interface --> <script type="text/brightscript" uri="pkg:/source/NewRelicAgent.brs"/>
<script type="text/brightscript" uri="pkg:/components/VideoScene.brs"/></component>VideoEscena.brs
sub init() m.top.setFocus(true) setupVideoPlayer()end sub
function nrRefUpdated() m.nr = m.top.nr
'Activate video tracking NewRelicVideoStart(m.nr, m.video)end function
function setupVideoPlayer() videoUrl = "http://..." videoContent = createObject("RoSGNode", "ContentNode") videoContent.url = videoUrl videoContent.title = "Any Video" m.video = m.top.findNode("myVideo") m.video.content = videoContent m.video.control = "play"end function¿Que sigue?
Después de instalar el agente de Roku, explore estos recursos para aprovechar al máximo su monitoreo de video en streaming:
- Referencia de la API del agente de Roku: Explore la API completa para eventos personalizados, métricas y configuración avanzada
- Seguimiento de anuncios para Roku: Configura el monitoreo para eventos de anuncios de RAF y Google IMA
- Ver tus datos en New Relic: Explora la telemetría de reproducción de video y anuncios en todas las plataformas