Logstash中CSV的CreateOn字段日期格式转换问题求助
修复Logstash日期格式转换问题
你的问题出在日期解析的语言环境不匹配,导致Logstash无法识别英文的星期和月份名称,最终解析失败并丢弃了事件。
修改后的Date过滤器配置
date { match => ["CreateOn", "EEE, MMMM d, yyyy h:mm:ss a z"] target => "CreateOn" locale => "en" # 可选:若不想因解析失败丢弃事件,取消注释下面一行 # tag_on_failure => [] }
关键调整说明
- 添加
locale => "en":强制使用英文环境解析日期,确保Logstash能识别"Thursday"、"March"这类英文日期词汇,避免受JVM默认语言环境影响。 - 原格式字符串
EEE, MMMM d, yyyy h:mm:ss a z本身是正确的,完全匹配你给出的日期格式:EEE:英文完整星期名(如Thursday)MMMM:英文完整月份名(如March)d:一位或两位数字的日期h:mm:ss a:12小时制时间(含AM/PM标识)z:时区缩写(如UTC)
完整Logstash过滤器配置示例
filter { csv { skip_header => "true" separator => "," columns => ["Display Label", "CreateOn", "CommonName", "IsSelfSigned", "Organization", "OrganizationUnit", "Issuer", "IssuerName", "SerialNumber", "ValidTo", "Version", "SignatureAlgorithm", "Subject", "Subject Alternative Names"] } date { match => ["CreateOn", "EEE, MMMM d, yyyy h:mm:ss a z"] target => "CreateOn" locale => "en" } }
内容的提问来源于stack exchange,提问作者Roopesh
相关产品推荐
相关产品推荐

