Minecraft 1.21.124 Bedrock Edition Android Problemas de ingesta de logs S3 en Elasticsearch

Hola comunidad, estoy trabajando en un proyecto de análisis de datos para una aplicación móvil específica y me he encontrado con un problema de latencia y permisos al intentar indexar los logs de acceso desde AWS CloudFront hacia mi clúster de Elastic.

Para contexto, estoy revisando este caso similar en AWS sobre el acceso público y problemas de buckets, que es donde almaceno los binarios y logs de telemetría:

Entorno del Despliegue

Actualmente, estoy intentando visualizar métricas de rendimiento y errores de conexión. La arquitectura que estoy utilizando para el monitoreo es la siguiente:

  • Versión del Cliente: 1.21.124 (Bedrock)
  • Plataforma de Origen: Android (Logs de crashlytics y acceso)
  • Fuente de Datos: AWS S3 (Logs comprimidos .gz)
  • Herramienta de Ingesta: Filebeat + Logstash
  • Destino: Elasticsearch 8.x

Configuración Actual del Pipeline

He configurado el input de S3 en Logstash, pero parece que los eventos no se están parseando correctamente cuando el User-Agent proviene de dispositivos móviles específicos. Aquí están los puntos clave de mi configuración:

  • Input S3: Configurado para leer cada 60 segundos.
  • Filtro Grok: Patrón estándar para logs de CloudFront.
  • GeoIP: Activado para analizar la procedencia de las conexiones.

El Problema Técnico

A pesar de que la conexión parece exitosa según la referencia de AWS que puse arriba, en Kibana los campos client_device y app_version aparecen como unknown o generan conflictos de mapeo (mapping explosion) cuando llegan datos de la versión 1.21.124.

¿Alguien ha tenido problemas similares al indexar logs de aplicaciones Android que usan CloudFront? ¿Debería forzar el mapeo de los campos en el template del índice antes de iniciar la ingesta masiva?

Cualquier sugerencia sobre la configuración del pipeline es bienvenida.