我将尝试解释我想要实现的。我有grok模式来匹配简单的日志行。在日志行中有响应消息json主体,我能够用自定义regex模式解析它,我在kibana Jmeter 板中看到它,正如预期的那样。问题是我想从主体本身提取一些数据。
下面是工作grok模式:
{TIMESTAMP_ISO8601:timestamp}%{SPACE}*%{LOGLEVEL:level}:%{SPACE}*%{DATA}%{BODY:body}
BODY的自订图样:
BODY (Body:.* \{.*})
我看到它是用grok调试器解析的:
{
"timestamp": "2022-11-04 17:09:28.052",
"level": "INFO",
"body": {\"status\":200,\"page\":1, \"fieldToBeParsed\":12 .....//more json conten}
}
有没有办法把一些正文的内容跟整个正文一起解析.这样我可以得到类似的结果:
{
"timestamp": "2022-11-04 17:09:28.052",
"level": "INFO",
"body": {\"status\":200,\"page\":1, \"fieldToBeParsed\":12 .....//more json conten},
"parsedFromBody: 12
}
示例:
{TIMESTAMP_ISO8601:timestamp}%{SPACE}*%{LOGLEVEL:level}:%{SPACE}*%{DATA}%{BODY:body}%
{FROMBODY:frombody}%
谢谢你,谢谢你
1条答案
按热度按时间ui7jx7zq1#
使用grok解析字段后,可以使用第二个grok过滤器解析第一个grok创建的字段。不要在一个grok中同时解析这两个字段,这可能会起作用,也可能不会起作用。匹配是一个哈希,Java哈希没有排序。