Los registros reenviados a AWS S3 en formato JSON a través de Servicio de registro de Strata > Reenvío de registros > Perfiles de AWS S3 parecen estar dañados.
5682
Created On 01/27/25 01:31 AM - Last Modified 02/20/25 01:28 AM
Symptom
- El cliente configuró el reenvío de logs a AWS S3 Bucket en SLS > Reenvío de registros > Perfiles de AWS S3
- Durante la verificación de la operación, se confirmó que los archivos se estaban generando en formato .json en el depósito S3
- Sin embargo, después de descargar e inspeccionar los archivos del depósito S3, el contenido parecía estar dañado.
- Intenté descomprimir los archivos con Snappy, pero la descompresión no tuvo éxito.
Environment
- Acceso Prisma
- Servicio de registro de estratos
Cause
- Como se describe en la documentación de Reenviar registros a AWS S3 Bucket , el archivo de registro se comprime mediante Snappy antes de reenviarlo.
- Los archivos descargados se dañaron debido a la falta de descompresión de Snappy.
Resolution
- El archivo debe descomprimirse usando Snappy para obtener el JSON real, por diseño.
- Our engineering team provided an example of the script to decode the file in a similar case.
import snappy import sys file = sys.argv[1] with open(file, 'rb') as f: index = 0 data = f.read() for b in data: if b == 10: #separator break; index = index + 1 payload = data[index+1:] print(snappy.uncompress(payload))
Additional Information
El servicio de registro Strata reenvía registros al depósito S3 de AWS