使用 Logstash JDBC 输入插件获取数据时出现此异常:
error:
26413962
Sequel::InvalidValue
TZInfo::AmbiguousTime: 2017-11-05T01:30:00+00:00 is an ambiguous local time.
这可能是因为我已经在我的 JDBC 插件中使用这个参数转换了我的时区:
jdbc_default_timezone => "America/New_York"
因此,11 月 5 日凌晨 1:30 发生了两次,我怀疑 Logstash 不知道该做什么,它陷入了无限循环。
作为一种解决方法,我删除了 jdbc_default_timezone 参数,而是在 select 语句中将我的值转换为 UTC,如下所示:
DATEADD(hh, DATEDIFF(hh, GETDATE(), GETUTCDATE()), th.[DueDate]) as DueDate
但是这种解决方法很烦人,因为我需要修改所有的 logstash 输入日期列。
有没有办法强制它选择两个可能的时间中的任何一个,或者更优雅的方式?