Monitoreo de transmisión de baja latencia de Amazon IVS - Amazon Interactive Video Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Monitoreo de transmisión de baja latencia de Amazon IVS

Puede monitorear los recursos de Amazon Interactive Video Service (IVS) mediante Amazon CloudWatch. CloudWatch recopila y procesa los datos sin formato de Amazon IVS en métricas legibles y casi en tiempo real. Estas estadísticas se mantienen durante 15 meses, de forma que pueda obtener una perspectiva histórica sobre el rendimiento de su aplicación web o servicio. Puede establecer alarmas que vigilen determinados umbrales y enviar notificaciones o realizar acciones cuando se alcancen dichos umbrales. Para obtener más información, consulte la Guía del usuario de CloudWatch.

La marca de tiempo de una métrica representa el inicio del periodo durante el cual se acumulan los datos de métrica. Por ejemplo, supongamos que obtiene una suma métrica LiveDeliveredTime por minuto de 300 segundos a las 01:02:00. Esto significaría que durante el periodo de 1 minuto de 01:02:00 a 01:02:59 se ofreció a los espectadores un video de 5 minutos.

Para las métricas designadas como de alta resolución, el primer punto de datos aparece varios segundos después del inicio de la transmisión. Le recomendamos especificar un periodo de 5 segundos al realizar las solicitudes de métricas. (Consulte Resolution [Resolución] en la Guía del usuario de Amazon CloudWatch). Para otras métricas, los datos se emiten dentro de 1 minuto después de la marca de tiempo a la que se refiere.

Las métricas de alta resolución se acumulan a lo largo del tiempo. En la práctica, la resolución disminuye a medida que las métricas envejecen. El esquema es el siguiente:

  • Las métricas de 1 segundo están disponibles durante 3 horas.

  • Las métricas de 60 segundos están disponibles durante 15 días.

  • Las métricas de 5 minutos están disponibles durante 63 días.

  • Las métricas de 1 hora están disponibles durante 455 días (15 meses).

Para obtener información actualizada sobre la retención de datos, busque el “periodo de retención” en Preguntas frecuentes sobre Amazon CloudWatch.

Requisitos previos

Acceso a datos de sesión de transmisión

Mediante el punto de conexión listStreamSessions, puede acceder a una lista de transmisiones que un canal ha tenido durante un máximo de 60 días. Esta lista puede incluir una sesión de transmisión en directo (indicada con un endTime vacío).

Puede obtener los datos de sesión de una transmisión específica a través del punto de conexión getStreamSession. Si no especifica el parámetro streamId, el punto de conexión devuelve la última sesión. Además, puede llamar periódicamente al punto de conexión para obtener los últimos eventos de la transmisión (hasta los 500 más recientes).

Instrucciones de la consola

  1. Abra la consola de Amazon IVS.

    (También puede acceder a la consola de Amazon IVS a través de la consola de administración de AWS).

  2. En el panel de navegación, elija Channels (Canales). (Si el panel de navegación está contraído, ábralo primero eligiendo el icono de hamburguesa).

  3. Elija el canal para ir a la página de detalles.

  4. Desplácese hacia abajo en la página hasta que vea la sección Stream sessions (Sesiones de transmisión).

  5. Seleccione el identificador de transmisión de la sesión a la que desea acceder para ver los detalles de la sesión, incluidos los gráficos de las métricas de alta resolución de Amazon CloudWatch.

Alternativamente, si uno o más canales ya están en vivo:

  1. Abra la consola de Amazon IVS.

  2. En el panel de navegación, elija Live channels (Canales en vivo). (Si el panel de navegación está contraído, ábralo primero eligiendo el icono de hamburguesa).

  3. Seleccione un canal en directo de la lista para acceder a los detalles de la sesión en una vista dividida.

Instrucciones del SDK de AWS

El acceso a los datos de sesión de transmisión con el SDK de AWS es una opción avanzada y requiere que descargue y configure primero el SDK en su aplicación. A continuación, se muestran las instrucciones para el SDK de AWS mediante JavaScript.

Requisito previo: para utilizar el ejemplo de código siguiente, debe cargar el SDK de JavaScript de AWS en su aplicación. Para obtener más información, consulte Introducción a SDK de AWS para JavaScript.

// This first call lists up to 50 stream sessions for a given channel. const AWS = require("aws-sdk"); const REGION = 'us-west-2'; let channelArn = USE_YOUR_CHANNEL_ARN_HERE; AWS.config.getCredentials(function(err) { if (err) console.log(err.stack); // credentials not loaded else { console.log("Access key:", AWS.config.credentials.accessKeyId); } }); AWS.config.update({region: REGION}); var ivs = new AWS.IVS(); // List Stream Sessions async function listSessions(arn) { const result = await ivs.listStreamSessions({"channelArn": arn}).promise(); console.log(result.streamSessions); } listSessions(channelArn); // Get Stream Session async function getSession(arn, id) { const result = await ivs.getStreamSession({"channelArn": arn, "streamId": id}).promise(); console.log(result); // This function polls every 3 seconds and prints the latest IVS stream events. setInterval(function(){ console.log(result.streamSession.truncatedEvents); }, 3000); } getSession(channelArn);

Instrucciones de la CLI

El acceso a los datos de sesión de transmisión con AWS CLI es una opción avanzada y requiere que descargue y configure primero la CLI en su equipo. Para obtener más información, consulte la Guía del usuario de la interfaz de línea de comandos de AWS.

  1. Lista de sesiones de transmisión:

    aws ivs list-stream-sessions --channel-arn <arn>
  2. Obtenga los datos de sesión de una transmisión específica mediante el streamId:

    aws ivs get-stream-session --channel-arn <arn> --stream-id <streamId>

A continuación, se muestra una respuesta de ejemplo a la llamada get-stream-session:

{ "streamSession": { "startTime": "2021-10-22T00:03:57+00:00", "streamId": "st-1FQzeLONMT9XTKI43leLSo1", "truncatedEvents": [ { "eventTime": "2021-10-22T00:09:30+00:00", "name": "Session Ended", "type": "IVS Stream State Change" }, { "eventTime": "2021-10-22T00:09:30+00:00", "name": "Stream End", "type": "IVS Stream State Change" }, { "eventTime": "2021-10-22T00:03:57+00:00", "name": "Stream Start", "type": "IVS Stream State Change" }, { "eventTime": "2021-10-22T00:03:50+00:00", "name": "Session Created", "type": "IVS Stream State Change" } ], "endTime": "2021-10-22T00:09:31+00:00", "ingestConfiguration": { "audio": { "channels": 2, "codec": "mp4a.40.2", "sampleRate": 48000, "targetBitrate": 160000 }, "video": { "avcLevel": "4.0", "avcProfile": "Baseline", "codec": "avc1.42C028", "encoder": "obs-output module (libobs version 27.0.1)", "targetBitrate": 3500000, "targetFramerate": 30, "videoHeight": 1080, "videoWidth": 1920 } }, "channel": { "name": "", "ingestEndpoint": "3f234d592b38.global-contribute.live-video.net", "authorized": false, "latencyMode": "LOW", "recordingConfigurationArn": "", "type": "STANDARD", "playbackUrl": "https://3f234d592b38.us-west-2.playback.live-video.net/api/video/v1/us-west-2.991729659840.channel.dY7LsluQX1gV.m3u8", "arn": "arn:aws:ivs:us-west-2:991729659840:channel/dY7LsluQX1gV" } } }

Filtrar transmisiones por Estado

Para encontrar fácilmente qué transmisiones tienen problemas, puede utilizar listStreams para filtrar transmisiones en directo por “estado”.

Instrucciones de la consola

  1. Abra la consola de Amazon IVS.

    (También puede acceder a la consola de Amazon IVS a través de la consola de administración de AWS).

  2. En el panel de navegación, elija Live channels (Canales en vivo). (Si el panel de navegación está contraído, ábralo primero eligiendo el icono de hamburguesa).

  3. Seleccione el campo de búsqueda Filter by health (Filtrar por estado).

  4. En la lista desplegable, seleccione el filtrado por Health = STARVING (Estado = INANICIÓN).

Después de filtrar, puede ir a la página de detalles de un canal y seleccionar la sesión de transmisión en directo del canal para acceder a los detalles de configuración de entrada y a los eventos de transmisión.

Instrucciones de la CLI

El uso de la CLI de AWS es una opción avanzada y requiere que primero descargue y configure la CLI en su equipo. Para obtener más información, consulte la Guía del usuario de la interfaz de línea de comandos de AWS.

Para filtrar transmisiones por estado (p. ej., STARVING):

aws ivs list-streams --filter-by health=STARVING

Dimensión Health de CloudWatch para ConcurrentStreams

Puede filtrar ConcurrentStreams por un Health específico. Consulte Métricas de CloudWatch: streaming de baja latencia de IVS.

Acceso a métricas de CloudWatch

Amazon CloudWatch recopila y procesa los datos sin procesar de Amazon IVS en métricas legibles y casi en tiempo real. Estas estadísticas se mantienen durante 15 meses, de forma que pueda obtener una perspectiva histórica sobre el rendimiento de su aplicación web o servicio. Puede establecer alarmas que vigilen determinados umbrales y enviar notificaciones o realizar acciones cuando se alcancen dichos umbrales. Para obtener más información, consulte la Guía del usuario de CloudWatch.

Tenga en cuenta que las métricas de CloudWatch se acumulan a lo largo del tiempo. En la práctica, la resolución disminuye a medida que las métricas envejecen. El esquema es el siguiente:

  • Las métricas de 1 segundo están disponibles durante 3 horas.

  • Las métricas de 60 segundos están disponibles durante 15 días.

  • Las métricas de 5 minutos están disponibles durante 63 días.

  • Las métricas de 1 hora están disponibles durante 455 días (15 meses).

Cuando llama a getMetricData, puede especificar un período de 1, 5 (recomendado), 10, 30 o cualquier múltiplo de 60 segundos para métricas de alta resolución.

Instrucciones de la consola de CloudWatch

  1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.

  2. En el panel de navegación lateral, expanda el menú desplegable Metrics (Métricas) y, a continuación, seleccione All metrics (Todas las métricas).

  3. En la pestaña Explorar, mediante el menú desplegable sin etiqueta de la izquierda, seleccione su región de “inicio”, donde se crearon los canales. Para obtener más información sobre las regiones, consulte Solución global, control regional. Para obtener una lista de las regiones admitidas, consulte la Página de Amazon IVS en la Referencia general de AWS.

  4. En la parte inferior de la pestaña Explorar, seleccione el espacio de nombres de IVS.

  5. Haga una de las acciones siguientes:

    1. En la barra de búsqueda, ingrese el ID de recurso (parte del ARN, arn:::ivs:channel/<resource id>).

      Seleccione IVS > Por canal.

    2. Si IVS aparece como un servicio seleccionable en Espacios de nombres de AWS, selecciónelo. Se mostrará si utiliza Amazon IVS y envía métricas a Amazon CloudWatch. (Si IVS no está en la lista, no tiene ninguna métrica de Amazon IVS).

      Luego, elija la agrupación de dimensiones que desee; las dimensiones disponibles se muestran a continuación en Métricas de CloudWatch.

  6. Elija métricas para agregarlas al gráfico. Las métricas disponibles se muestran a continuación en Métricas de CloudWatch.

También puede acceder al gráfico de CloudWatch de la sesión de transmisión desde la página de detalles de la sesión de transmisión, seleccionando el botón View in CloudWatch (Ver en CloudWatch).

Instrucciones de la CLI

También puede obtener acceso a las métricas mediante la AWS CLI. Esto requiere que primero descargue y configure la CLI en su equipo. Para obtener más información, consulte la Guía del usuario de la interfaz de línea de comandos de AWS.

A continuación, para obtener acceso a las métricas de transmisión de baja latencia de Amazon IVS mediante AWS CLI:

  • En el símbolo del sistema, ejecute:

    aws cloudwatch list-metrics --namespace AWS/IVS

Para obtener más información, consulte Uso de las métricas de Amazon CloudWatch en la Guía del usuario de Amazon CloudWatch.

Métricas de CloudWatch: streaming de baja latencia de IVS

Amazon IVS proporciona las siguientes métricas en el espacio de nombres de AWS/IVS.

Métrica Dimensión Descripción

ConcurrentViews

Ninguna

Un recuento de vistas simultáneas en todos sus canales en directo. Una vista es una sesión de visualización única que está descargando o reproduciendo video activamente. (Para obtener una definición más detallada, consulte el Glosario). Si los canales están activos, pero en conjunto no tienen vistas, el valor de esta métrica es 0. Si no hay canales activos, la métrica no tiene puntos de datos.

Unidad: recuento

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de vistas simultáneas durante el intervalo configurado.

ConcurrentViews

Channel

Filtra las ConcurrentViews por ARN del canal. Si un canal está activo, pero no tiene vistas, el valor de esta métrica es 0. Si un canal no está activo, la métrica no tiene puntos de datos.

Esta métrica proporciona datos para un canal, no para una transmisión. Para ver vistas simultáneas de una sesión de streaming concreta en un canal determinado, evalúe la métrica de ConcurrentViews para ese canal entre las horas de inicio y finalización de la sesión de transmisión.

Unidad: recuento

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de vistas simultáneas durante el intervalo configurado.

ConcurrentStreams

Ninguna

Un recuento de los canales que están transmitiendo en directo. Si no hay canales activos, esta métrica no tiene puntos de datos.

Unidad: recuento

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de transmisiones simultáneas durante el intervalo configurado.

ConcurrentStreams

Health

Filtros ConcurrentStreams por estado del canal. Si no hay canales activos, esta métrica no tiene puntos de datos.

Unidad: recuento

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de transmisiones simultáneas Health durante el intervalo configurado.

IngestAudioBitrate

Channel

(Métricas de alta resolución) La cantidad de datos de audio que Amazon IVS recibe durante la transmisión. Una tasa de bits más alta ocupa más del ancho de banda de Internet disponible.

Unidad: bits por segundo

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de tasas de bits de captura de audio durante el intervalo configurado

IngestFramerate

Channel

(Métricas de alta resolución) Frecuencia con la cual Amazon IVS recibe los fotogramas de animación durante la transmisión.

Unidad: fotogramas por segundo

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de tasas de captura de fotogramas durante el intervalo configurado

IngestVideoBitrate

Channel

(Métricas de alta resolución) La cantidad de datos de video que Amazon IVS recibe durante la transmisión. Una tasa de bits más alta ocupa más del ancho de banda de Internet disponible. Una mayor tasa de bits puede mejorar la calidad del video, pero solo hasta cierto punto.

Unidad: bits por segundo

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de tasas de bits de captura de video durante el intervalo configurado

KeyframeInterval

Channel

(Métricas de alta resolución) El punto de la transmisión de video al que se envía todo el fotograma en lugar de solo las diferencias con respecto al fotograma anterior.

Unidad: segundos

Estadísticas válidas: promedio, máximo, mínimo: número medio, número mayor o menor (respectivamente) de intervalo de fotogramas clave durante el intervalo configurado

LiveDeliveredTime

Ninguna

Duración total en tiempo real del video ofrecido a todos los espectadores.

Unidad: segundos

Estadística válida: suma

LiveDeliveredTime

Channel

Filtra el LiveDeliveredTime por canal. Los valores de canal son los del canal resource-id, que es la última parte de un ARN.

Unidad: segundos

Estadística válida: suma

LiveDeliveredTime

Channel, ViewerCountryCode

Filtra el LiveDeliveredTime por canal y código de país del espectador. Los valores de canal son los del canal resource-id, que es la última parte de un ARN. Los valores de país son códigos de país ISO 3166-1 de dos caracteres. Esto le permite responder a la pregunta: ¿desde dónde están viendo mis espectadores? Si no se puede determinar el país del espectador, se muestra como UNKNOWN.

Unidad: segundos

Estadística válida: suma

LiveInputTime

Ninguna

Duración en tiempo real de la transmisión de video.

Unidad: segundos

Estadística válida: suma

LiveInputTime

Channel

Filtra el LiveInputTime por canal. Los valores de canal son los del canal resource-id, que es la última parte de un ARN.

Unidad: segundos

Estadística válida: suma

RecordedTime

Ninguna

Duración del video grabado en tiempo real.

Unidad: segundos

Estadística válida: suma

RecordedTime

Channel

Filtra el RecordedTime por canal. Los valores de canal son los del canal resource-id, que es la última parte de un ARN.

Unidad: segundos

Estadística válida: Suma