You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写CloudWatch Log Insights查询替换UUID并统计503日志数量

CloudWatch Log Insights 替换UUID并统计503错误数量

核心思路

由于日志格式不统一,依赖固定分隔符的parse函数无法适配,改用正则匹配替换处理UUID——利用UUID的固定格式(8-4-4-4-12位十六进制字符),通过regex_replace函数全局替换所有UUID为*,再分组统计503错误的出现次数。

示例日志与期望结果

原始日志

GET /api/v1/users/123e4567-e89b-12d3-a456-426614174000 HTTP/1.1 503 123
POST /api/v1/orders/98765432-1234-5678-90ab-cdef01234567 HTTP/1.1 503 456
GET /api/v1/products?traceId=abc123-def4-56gh-ijkl-mnopqrstuvwx HTTP/1.1 503 789

替换后效果

GET /api/v1/users/* HTTP/1.1 503 123
POST /api/v1/orders/* HTTP/1.1 503 456
GET /api/v1/products?traceId=* HTTP/1.1 503 789

最终查询语句

fields @timestamp, regex_replace(@message, '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}', '*') as cleaned_message
| filter cleaned_message contains '503'
| stats count(*) as error_count by cleaned_message
| sort error_count desc

语句说明

  • regex_replace(@message, ...):匹配日志中所有符合标准UUID格式的字符串,替换为*,生成清理后的日志字段cleaned_message
  • filter cleaned_message contains '503':筛选出包含503错误的日志
  • stats count(*) as error_count by cleaned_message:按清理后的日志模式分组,统计每组的错误数量
  • sort error_count desc:按错误数量降序排列,快速定位高频错误模式

内容的提问来源于stack exchange,提问作者Sumant_02

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 01:16:10