我遇到了Oracle SQL语句和logstash组合的问题。自动转义字符,如\和"。
在SQL语句中我定义了ie。:
to_char(milliseconds_to_date(m.originationtime),'yyyy-mm-dd\"T\"hh24:MI')
但在弹性搜索中,它保存为:
"接收":" 2016年1月5日\ t \ 18:46"
我对listagg生成的值范围有同样的问题:
'{' || (select listagg('\"' || cd.name || '\"' || ':'|| '\"' || cd.DATAVALUE || '\"', ', ') within group (order by cd.oid) from customdata cd where cd.messageoid = m.oid) || '}' as MsgAtt
我得到的输出是这样的:
" msgatt":" {\\\" CycloneIntegrationRegion \\\":\\\" AMIS \\\&#34 ;, \\\" ToSystem \\\":\\\" FW \\\",...
我试图通过case 22534325
的解决方案进行启发filter {
mutate {
gsub => [
"msgatt","[\\\\\\]", "",
"received","[\\]", "",
"delivered","[\\]", ""
]
}
}
但没有取得圆满成功。时间戳已解决,但msgatt仍包含反斜杠。
" msgatt":" {\" CycloneIntegrationRegion \":\" AMIS \",\" ToSystem \&# 34;:\" FW \",... 知道怎么处理这个问题吗?
非常感谢,问候,Rudo