这是我的FluentD解析器配置:
<filter format.3.**>
@type parser
format /^\[(?<module>[^\]]+)\] (?<time>.+): (?<msg>.*)$/
time_format %Y-%m-%d %H:%M:%S
key_name log
keep_time_key true
reserve_data false
</filter>
这是一个示例日志行:
[Macaron] 2017-04-26 16:54:26: Started GET / for 172.20.0.0
在FluentD错误日志中我得到:
2017-04-27 12:01:58 +0000 [warn]: plugin/filter_parser.rb:69:rescue in block in filter_stream: invalid time format: value = 2017-04-27 12:01:58, error_class = ArgumentError, error = invalid strptime format - `%Y-%m-%d %H:%M:%S'
重要的是这个:
invalid time format: value = 2017-04-27 12:01:58, error_class = ArgumentError, error = invalid strptime format - `%Y-%m-%d %H:%M:%S'
但我看不出%Y-%m-%d %H:%M:%S
与2017-04-27 12:01:58
的匹配程度,或者这种格式无效的原因。
答案 0 :(得分:0)
我想通了,在日志中设置颜色有一些特殊字符。显然,当将它们复制粘贴到fluentular.herokuapp.com时,它们没有被复制,这就是它在那里工作的原因:
mysql.escape(userdata)