date - 在logstash中解析特定日期
问题描述
我正在尝试在 logstash 2019-08-01T00:00:00Z/2019-08-02T00:00:00Z 中解析以下日期
我尝试了多种方法,但没有任何效果
选项1
date{
match => ["timestamp","ISO8601/ISO8601"]
target => "timestamp"
}
选项 2
date{
match => ["timestamp","ISO8601"]
target => "timestamp"
}
选项 3 - 管道工作,但我得到 dateparsefailure
date{
match => ["timestamp","ISO8601"/"ISO8601"]
target => "timestamp"
}
解决方案
如何使用grok
模式将日期收集到单独的字段中,然后使用mutate
filter {
grok {
match => [ "message", "%{TIMESTAMP_ISO8601:date_1}/%{TIMESTAMP_ISO8601:date_2}" ]
tag_on_failure => [ "_failure", "_grokparsefailure" ]
}
if "_failure" not in [tags] {
mutate {
add_field => { "timestamp" => "%{date_1}/%{date_2}"}
}
}
}
推荐阅读
- c - malloc() 怎么知道你想使用它作为数组提供的内存块?
- c# - 为什么将文本加载到多行文本框中时缺少空格?
- c - 使用 C 从文件中读取字符串。使用 w+ 模式的 Fopen 不起作用
- angular - 使用 CoreUI 2.1 Angular 添加新的组件视图
- powershell - 如何在powershell中停止循环
- reactjs - 使用自定义钩子的 useState 和 useEffect 的困难
- django - 默认迁移表名重命名
- python-3.x - Python 3 和 Sklearn:难以将 NOT-sklearn 模型用作 sklearn 模型
- python - kivy.uix.screenmanager.ScreenManagerException:ScreenManager 只接受 Screen 小部件
- c# - .NET Core 3.0:尝试使用 .Value 检索选项值时出现类型转换错误