通过 Strata Logging Service > Log Forwarding > AWS S3 Profiles 以 JSON 格式转发到 AWS S3 的日志似乎已损坏。
5666
Created On 01/27/25 01:31 AM - Last Modified 02/20/25 01:31 AM
Symptom
- 客户在“SLS”>“日志转发”>“AWS S3 配置文件”中将日志转发配置为 AWS S3 Bucket
- 在操作检查期间,确认 S3 存储桶中正在生成 .json 格式的文件
- 然而,在从 S3 存储桶下载并检查文件后,内容似乎已损坏
- 尝试使用 Snappy 解压文件,但解压失败
Environment
- Prisma 访问
- 地层测井服务
Cause
- 如将日志转发到 AWS S3 存储桶文档中所述,日志文件在转发之前使用 Snappy 进行压缩。
- 由于缺少 Snappy 解压缩,下载的文件已损坏。
Resolution
- 按照设计,该文件需要使用 Snappy 解压缩才能获取实际的 JSON。
- 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
Strata Logging Service 将日志转发到 AWS S3 存储桶