Lumberyard
Guía del usuario (Version 1.20)

Uso de Game Metrics Cloud Gem Portal

Después de enviar eventos de prueba con el nivel de muestra de métricas o la línea de comandos, puede ver los datos recopilados en el Cloud Gem Portal.

Para obtener acceso a Game Metrics Cloud Gem Portal

  1. En Lumberyard Editor, elija AWS, Open Cloud Gem Portal (Abrir Cloud Gem Portal).

  2. En Cloud Gem Portal, en la página Cloud Gems (Gemas en la nube), elija Gem Metrics (Gema Metrics).

    
                        Elija Game Metrics en Cloud Gem Portal.
  3. Elija los datos de métrica de juego que desea ver. Las métricas se actualizan automáticamente cada cinco minutos. Puede ver lo siguiente:

Información general

La página Overview (Información general) muestra información acerca de los eventos del juego.

Puede ver las siguientes métricas:

Incoming Game Events (Eventos del juego entrantes)

Número de eventos del juego que Amazon API Gateway recibe de todos los jugadores conectados.


                                    Elija Game Events (Eventos del juego)
Event Bandwidth Consumed (Ancho de banda de eventos consumido)

Eventos representados como bytes que Amazon API Gateway recibe de los jugadores conectados.


                                    Elija Event Bandwidth Consumed (Ancho de banda de eventos consumido)
Event Duplication Error Rate (Tasa de errores de duplicación de eventos)

Nivel de duplicación de eventos que se produce en la base de datos. Este gráfico muestra la consulta de Amazon Athena para examinar si hay duplicados en los datos. Normalmente, todos los eventos deben ser únicos; no debería haber eventos duplicados.

nota

Al habilitar la gema por primera vez, es posible que vea cierto grado de duplicación en la primera hora; sin embargo, el generador de archivos únicos amoeba eliminará los duplicados, ya que combina los archivos de datos.


                                    Elija Event Duplication Error Rate (Tasa de errores de duplicación de eventos)
Time To Save Events to S3 (Tiempo para guardar eventos en S3)

Tiempo necesario para que Lambda agregue los eventos en el consumidor FIFO y envíe los eventos del juego al bucket de Amazon S3. A medida que más jugadores se vayan uniendo al juego, este gráfico mostrará un incremento gradual en el tiempo.


                                    Elija Time to Save Events To S3 (Tiempo para guardar eventos en S3)
SQS

La página SQS muestra el estado actual de los recursos de SQS.

Puede ver las siguientes métricas:

Processed SQS Messages (Mensajes de SQS procesados)

Cantidad de mensajes de SQS que están actualmente en la cola FIFO.


                                    Elija Processed SQS Messages (Mensajes de SQS procesados)
Time To Delete SQS Messages (Tiempo para eliminar mensajes de SQS)

Tiempo necesario para que un consumidor FIFO elimine todos los mensajes de SQS una vez que procese los mensajes de la cola FIFO. Normalmente, este proceso tarda unos segundos.


                                    Elija Time To Delete SQS Messages (Tiempo para eliminar mensajes de SQS)
Lambda

La página Lambda muestra el estado actual de los recursos de Lambda.

Puede ver las siguientes métricas:

Producer Lambda Invocations (Invocaciones de &LAM; del productor)

Cantidad de invocaciones del productor FIFO de Lambda que controlan de forma activa las solicitudes del juego entrantes.


                                    Elija Producer Lambda Invocations (Invocaciones de Lambda del productor)
Producer Lambda Errors (Errores de &LAM; del productor)

Tasa de errores que se producen actualmente mientras el productor FIFO de Lambda procesa las solicitudes del juego entrantes.


                                    Elija Producer Lambda Errors (Errores de Lambda del productor)
Consumer Lambda Invocations (Invocaciones de &LAM; del consumidor)

Cantidad de consumidores FIFO que procesan mensajes en la cola de SQS. De forma predeterminada, se invocan tres consumidores por cada cola FIFO de SQS, que se activa cada cinco minutos.


                                    Elija Consumer Lambda Invocations (Invocaciones de Lambda del consumidor)
Consumer Lambda Duration (Duración de &LAM; del consumidor)

Tiempo promedio para que Lambda del consumidor FIFO procese la cola de SQS.


                                    Elija Consumer Lambda Duration (Duración de Lambda del consumidor)
Consumer Lambda Errors (Errores de &LAM; del consumidor)

Tasa de errores de los consumidores FIFO. Normalmente, esta tasa debería ser cero a menos que exista un problema persistente en la canalización.


                                    Elija Consumer Lambda Duration (Duración de Lambda del consumidor)
Amoeba Lambda Invocations (Invocaciones de &LAM; de amoeba)

Cantidad de invocaciones del generador de archivos únicos de amoeba que se producen.


                                    Elija Amoeba Lambda Invocations (Invocaciones de Lambda de amoeba)
Amoeba Errors (Errores de amoeba)

Tasa de errores actual de los generadores de archivos únicos amoeba.


                                    Elija Amoeba Errors (Errores de amoeba)
DynamoDB

La página DynamoDB muestra el estado actual de los recursos de DynamoDB.

Puede ver las siguientes métricas:

Reads Consumed/Provisioned (Lecturas consumidas/aprovisionadas)

Carga de lectura actual de DynamoDB para la canalización de métrica.


                                    Elija Reads Consumed/Provisioned (Lecturas consumidas/aprovisionadas)
Writes Consumed/Provisioned (Escrituras consumidas/aprovisionadas)

Carga de escritura actual de DynamoDB para la canalización de métrica.


                                    Elija Writes Consumed/Provisioned (Escrituras consumidas/aprovisionadas)
Particiones

En la página Partitions (Particiones), puede personalizar los directorios de Amazon S3 en los que se guardan los archivos de datos. Una partición es un segmento de un conjunto de datos. Puede definir que las particiones deben estar fuera de las particiones predefinidas.

En función de la definición de partición, se devuelve una clave de S3. El orden de las particiones es importante.


                        Elija Partitions (Particiones)

Consulte las siguientes particiones predefinidas:

Atributo Tipo Partes Descripción

event

str Ninguno

Define el identificador de eventos para la métrica enviada.

srv_tmutc

datetime.datetime.utcfromtimestamp

.year, .month, .day, .hour

Define la marca temporal del servidor en UTC. El valor del atributo tmutc se añadirá a datetime.datetime.utcfromtimestamp y las partes se evaluarán con respecto al tipo.

ejemplo

Input:

tmutc: "2017-10-03T12:43:12.111Z"

Salida:

Clave de S3: 2017/10/03/12

origen str Ninguno

Define el origen de los datos. Normalmente, esto se define como cloudgemmetric. Sin embargo, puede haber otros orígenes como otra gema en la nube.

bldid

str Ninguno

Define el identificador de compilación para la métrica enviada.

sensitivity

map Ninguno

Define el tipo de cifrado de la métrica. Esta métrica se toma de la asignación de parámetros que especifique. Las métricas sin confidencialidad no tienen cifrado. Las métricas confidenciales utilizan el cifrado AES256 nativo de Amazon S3.

schema_hash

map Ninguno

Define el esquema para organizar los diferentes tipos de esquema dentro de un tipo de métrica determinado.

ejemplo Entrada

Definiciones de partición

[ {key:"source",type:"str",parts:[]}, {key:"srv_tmutc",type:"datetime",parts:['.year','.month','.day','.hour']}, {key:"event",type:"str",parts:[]}, ]

Parámetros de solicitud

?sensitivity=Sensitive&compression=NoCompression

Carga de solicitud

source bldid event move loc msgid pltf seqno tmutc tzh tzm tzs uid cloudgemmetric 1.0.11 sessionStart D2 en d7649fa5a9ff11e79a3b6480998557f4 win64 1 1.52451e+09 3 0 - d7649fa1a9ff11e7914c6480998557f4

ejemplo Salida

S3 key → p_event_name=sessionStart/p_server_timestamp_strftime=20180423190000/p_server_timestamp_year=2018/p_server_timestamp_month=4 /p_server_timestamp_day=23/p_server_timestamp_hour=19/p_event_source=cloudgemmetric/p_client_build_identifier=1.0.11/p_data_sensitivity=Sensitive /p_event_schema_hash=976284525602131874

Puede crear particiones personalizadas para que Amazon Athena consulte sus datos en las particiones que especifique.

Para crear particiones personalizadas

  1. En Custom Advanced User Area (Área personalizada de usuario avanzado), en Attribute Name (Nombre del atributo), especifique un atributo personalizado como ip_address.

  2. En Type (Tipo), especifique el valor del atributo. Puede especificar un entero, una cadena float, datetime.datetime.utcfromtimestamp o map.

  3. En Parts (Partes), especifique el tipo de función al que se llamará en el tipo. Por ejemplo, si Type (Tipo) es datetime.datetime.utcfromtimestamp, puede llamar a .year, .month, .day u .hour.

  4. Haga clic en Add Option (Añadir opción) para crear más particiones.

  5. Cuando haya terminado, haga clic en Update Custom Partitions (Actualizar particiones personalizadas).

Filtrado

En la página Filtering (Filtrado), puede crear filtros para especificar los datos que ya no desea recopilar. Los clientes del juego utilizan esta configuración para filtrar eventos o atributos. A continuación, puede ordenar los filtros para especificar la prioridad.


                        Elija Filtering (Filtrado)

Creación de filtros para eventos

El filtrado de eventos admite dos tipos diferentes:

Tipo Descripción
All (Todo)

Si se define un atributo, se filtran todos los attribute_name en event_name.

Si no se define un atributo, se filtran todos los event_name.

Atributo

Si se selecciona, se necesita una matriz de atributos.

Se filtran todos los event_name que contengan attribute_name.

ejemplo 1

[{ 'event': 'sessionStart', 'attributes': [], 'type': 'all' }]

Si Event Name (Nombre del evento) es sessionStart y Type (Tipo) es All (Todos), se filtran todos los eventos sessionStart.

ejemplo 2

[{ 'event': 'sessionStart', 'attributes': ['move'], 'type': 'attribute' }]

Si Event name (Nombre del evento) es sessionStart, Type (Tipo) es Attribute (Atributo) y Attributes (Atributos) es move, solo se filtran los atributos denominados move en el evento sessionStart.

ejemplo 3

[{ 'event': 'sessionStart', 'attributes': ['move'], 'type': 'all' }]

Si Event name (Nombre del evento) es sessionStart, Type (Tipo) es All (Todos) y Attributes (Atributos) es move, se filtran todos los eventos que tengan los atributos denominados move.

Para crear un filtro

  1. En la página Filtering (Filtrado), haga clic en Add Filter (Añadir filtro).

  2. En Event Name (Nombre del evento), escriba un valor como sessionstart.

  3. En Platform (Plataforma), especifique All (Todas) o Win64. Por ejemplo, si selecciona Win64, el filtro pasará por alto el evento especificado que generan los clientes del juego en la plataforma Win64.

  4. En Type (Tipo), especifique All (Todos) o Attribute (Atributo).

    1. Si especifica Attribute (Atributo), indique un nombre de atributo.

    2. Haga clic en Add Attribute (Añadir atributo) o Remove Attribute (Quitar atributo) según sea necesario.

Priorizar los filtros para los eventos del juego

Después de crear los filtros, puede priorizar el procesamiento de determinados eventos cuando haya poco espacio disponible en el dispositivo del cliente del juego.

El cliente del juego procesa todos los eventos (excepto los eventos filtrados) en un archivo local, que está monitorizado por un subproceso y se vacía en función de un período de tiempo o de la cantidad de espacio consumido. Cuando solo quede el 40 % del espacio de archivo asignado, solo se procesarán los eventos prioritarios.

Para priorizar los filtros

  1. En Priority (Prioridad), seleccione los nombres de los filtros y arrástrelos para especificar el orden preferido. Solo se puede priorizar por nombre de evento.

  2. Cuando haya terminado, haga clic en Update Filters (Actualizar filtros).

Configuración

En la página Settings (Configuración), puede especificar los parámetros de la canalización de métrica.


                        Elija Settings (Configuración)

Puede especificar los siguientes parámetros para los clientes del juego.

Parámetros del cliente del juego

Nombre Descripción Tipo Valores válidos
Flush To Local File (Vaciar en archivo local)

Tamaño en bytes del búfer de memoria antes de enviar las métricas del búfer de memoria al archivo local.

Entero

De 128 a 1048576

Valor predeterminado: 204800

Flush To Local File (Vaciar en archivo local)

Periodo de tiempo en segundos antes de enviar las métricas del búfer de memoria al archivo local.

Entero De 5 a 600

Valor predeterminado: 60

Max Local File Size (Tamaño máximo del archivo local)

Tamaño máximo del archivo local en MB antes de borrar todas las métricas.

Entero De 2 a 20

Valor predeterminado: 5

Flush To AWS (Vaciar en AWS)

Periodo de tiempo en segundos antes de vaciar el archivo local en AWS.

Entero De 150 a 1800

Valor predeterminado: 300

Max Payload Size (Tamaño máximo de carga)

Tamaño máximo, en MB, de la carga que se puede enviar a AWS.

Entero De 2 a 9

Valor predeterminado: 5

Prioritization Threshold (Umbral de priorización)

Umbral de porcentaje del tamaño máximo de archivo en MB en el que se priorizan eventos. Los eventos con menor prioridad se borran a medida que el disco se queda sin espacio.

Entero De 20 a 100

Valor predeterminado: 60

Puede especificar lo siguiente para AWS.

Parámetros del backend de AWS

Nombre Descripción Tipo Valores válidos:
Growth Rate Trigger Percent (Porcentaje del desencadenador de la tasa de crecimiento)

Umbral de la tasa de crecimiento de los mensajes de SQS que cuando se supere se creará un nuevo consumidor.

Float

De 0 a 100

Valor predeterminado: 0.05

CSV Parquet Compression Ratio (Relación de compresión de CSV a Parquet)

Relación de compresión estimada del formato CSV al formato parquet. Esta relación se usa con fines de estimación.

Entero De 1 a 50

Valor predeterminado: 13

Backoff Max Seconds (Segundos máximos de interrupción)

Umbral del tamaño de la cola de mensajes de SQS antes de que se genere automáticamente un nuevo consumidor para ayudar a procesar el mayor volumen.

Entero

De 1 a 15

Valor predeterminado: 5

Target Amoeba aggregation file size (Tamaño del archivo de agregación de Amoeba de destino)

Tamaño del archivo de agregación de destino en MB. El generador de archivos amoeba intenta generar archivos parquet de S3 con este tamaño. El límite de tamaño de archivo ideal es 128 MB.

Entero

De 1 a 256

Valor predeterminado: 128

Number Of Initial Consumers (Cantidad de consumidores iniciales)

Cantidad de consumidores de SQS iniciales que se activarán durante cada fecha de ejecución de programación. Lambda del consumidor se replica a sí mismo cuando se cumple una de las siguientes condiciones:

  • Se supera el umbral de la tasa de crecimiento.

  • Se supera el umbral del tamaño de cola de SQS.

Entero De 1 a 10

Valor predeterminado: 3

Backoff Base Seconds (Segundos base de interrupción)

Periodo de interrupción inicial, en segundos para las solicitudes erróneas de AWS.

Entero De 1 a 15

Valor predeterminado: 5

Max In-flight Messages (Mensajes máximos en tránsito)

Mensajes máximos en tránsito permitidos (número de mensajes que se están procesando) para cualquier cola de SQS. Si una cola alcanza este umbral, los mensajes no se procesan hasta que el número de mensajes en tránsito esté por debajo del umbral.

Entero De 1000 a 15000

Valor predeterminado: 12000

Frequency To Check SQS State (Frecuencia de comprobación del estado de SQS)

Frecuencia con la que se va a comprobar el estado de SQS. Para ello, es necesario consultar el servicio SQS.

El parámetro Frequency To Check Spawning Threshold (Frecuencia de comprobación del umbral de generación) debe ser un múltiplo de este parámetro.

Entero De 1 a 45

Valor predeterminado: 5

Threshold Before Spawning New Consumer Lambda (Umbral antes de que se genere una nueva Lambda del consumidor)

Umbral del tamaño de cola de SQS antes de que se genere automáticamente un nuevo consumidor.

Entero

De 1000 a 15000

Valor predeterminado: 3000

Frequency To Check Spawning Threshold (Frecuencia de comprobación del umbral de generación)

Frecuencia con la que se va a comprobar el umbral para generar una nueva función Lambda del consumidor.

Entero

De 1 a 30

Valor predeterminado: 5

Backoff Max Trys (Reintentos máximos de interrupción)

Número máximo de intentos de solicitudes erróneas de AWS.

Entero De 1 a 15

Valor predeterminado: 5

Max Message Retry (Reintentos máximos de mensajes)

Número máximo de intentos antes de que un mensaje se registre como un error. Los mensajes que se procesan varias veces se consideran errores.

Entero De 1 a 15

Valor predeterminado: 10

CSV Separator (Separador de CSV)

Separator que codifica el CSV cliente y descodifica la carga de mensajes de SQS.

Cadena ;
FIFO Limit Before New Queue (Límite FIFO antes de crear una cola nueva)

Umbral a partir del cual se genera una nueva cola de SQS. El umbral se basa en mensajes en tránsito. Las colas FIFO de SQS están limitadas a 20 000 mensajes en tránsito.

Entero

De 1000 a 15000

Valor predeterminado: 3000

Memory Trigger (Desencadenador de memoria)

Umbral de memoria, en porcentaje, de cuándo guardar en S3.

Entero

De 1 a 90

Valor predeterminado: 75

Amoeba Memory Trigger (Desencadenador de memoria de amoeba)

Porcentaje del umbral de memoria a partir del cual el generador de archivos únicos amoeba debe guardar en S3.

Entero

De 1 a 70

Valor predeterminado: 60

Max Lambda Execution Time (Tiempo máximo de ejecución de Lambda)

Tiempo de ejecución máximo de la función Lambda. Se utiliza como temporizador interno para determinar las ventanas de proceso para cada paso del proceso: análisis de mensajes de SQS, guardado en S3 y eliminación de mensajes.

Entero

De 1 a 275

Valor predeterminado: 275

Aggregation Period (Periodo de agregación)

Tamaño de la ventana de agregación de destino. Es el tamaño predeterminado de la ventana de agregación. Esta característica se puede anular en función de la información contextual que los datos de telemetría proporcionan.

Entero

De 1 a 275

Valor predeterminado: 220

Save Longitude/Latitude (Guardar longitud/latitud)

Guarda las coordenadas de longitud y latitud.

nota

En algunos países, Longitude/Latitude (Longitud/Latitud) puede considerarse información de identificación personal. Esta configuración se admitirá en una versión futura. De forma predeterminada, este parámetro está deshabilitado.

Booleano True: False

Valor predeterminado: False

En la página Settings (configuración), puede realizar lo siguiente.


                        Elija Extra Settings (Configuración adicional) en la página Settings (Configuración).

Para habilitar acciones adicionales

  1. En Consume SQS Messages (Consumir mensajes de SQS), puede hacer clic en Consume (Consumir). Este comando invoca el consumidor de mensajes de SQS, que después agrega y escribe las métricas en cada mensaje de SQS en S3.

  2. En Amoeba Generator (Generador Amoeba), haga clic en Unleash Amoeba (Lanzar Amoeba). Este comando invoca el generador Amoeba, que rastrea el bucket de S3 para combinar los archivos pequeños en otros mayores. Esto ayuda a que Amazon Athena consuma los datos. Los archivos combinados tienen el sufijo _combined.

  3. En AWS Glue, haga clic en Crawl (Rastrear). Este comando invoca el rastreador de Lambda de GLUE, que consulta la tablas de base de datos, intenta recuperar las particiones dañadas e inicia el rastreador de AWS Glue.