gpt4 book ai didi

hex - Logstash grok 过滤器帮助 - 十六进制?

转载 作者:行者123 更新时间:2023-12-05 02:23:01 24 4
gpt4 key购买 nike

好的,除其他事项外,我正在使用 grok 过滤器从日志行中找出唯一 ID 的第一段,就像这样(我只关心第一段,扔掉其余部分)。这个段是十六进制的,我想要它是二进制的。

行:

Transaction: 000178ec-XXXX-XXXX-XXXX-XXXXXXXXXXXX

过滤器就像:

Transaction: %{BASE16NUM:transaction_id}-%{GREEDYDATA:otherpartsidontcareabout}

但它只给了我这个结果:

{
"transaction_id": [
[
"000178ec"
],
"otherpartsidontcareabout":
[
"XXXX-XXXX-XXXX-XXXXXXXXXXXX"
]]
}

我期望它被转换成十进制的地方:

{
"transaction_id": [
[
"96492"
],
"otherpartsidontcareabout":
[
"XXXX-XXXX-XXXX-XXXXXXXXXXXX"
]]
}

我做错了吗?我真的卡住了。

最佳答案

BASE16NUM 只是表示文本的模式。要将其转换为整数,您必须执行以下操作:

filter { 
ruby {
code => "event['transaction_id'] = event['transaction_id'].hex"
}
}

或用于 logstash 5

filter { 
ruby {
code => "event.set('transaction_id', event.get('transaction_id').hex)"
}
}

关于hex - Logstash grok 过滤器帮助 - 十六进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25791290/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com