我正在尝试使用QueryDatabaseTable->UpdateAttribute->PutElasticSearchHttpRecord从数据库中获取特定记录
ES处理器正在将错误作为Java.IO.Exception Invalid char在封装的令牌和分隔符之间引发。
请查找附件中的我的配置。怎么解决这个问题?
“UpdateAttribute”之后的队列中得到了正确的结果,但无法将其推送到ES中。我已将schema.name属性添加到适当的架构中。
以下是我在UpdateAttribute processor之后进入队列的正确结果。如何修复标记和分隔符之间的无效字符错误?
[ {
"TimeOfDay" : "2018-09-20T18:10:36.941",
"BMU_Debug_Pack_BlkVolt_Max2" : 4114.0,
"BMU_Debug_Pack_BlkVolt_Max1" : 4114.0,
"BMU_Debug_Pack_BlkVolt_Max3" : 4114.0,
"BMU_Debug_Pack_BlkVolt_Max0" : 4116.0,
"BMU_Debug_Pack_CTemp_Min" : 21.0,
"BMU_Debug_Pack_CurrVolt_Curr" : 2.0,
"BMU_Debug_Pack_Blk_Volt_Delta" : 6.0,
"total_Difference" : 15.0
} ]
谢谢您!请帮忙我该换什么?
最佳答案
您需要配置Avro Reader,而不是PutElasticSearchHttpRecord中的CSV Reader
,因为Querydatabase
表处理器以Avro格式输出流文件。
在Avro读卡器控制器服务中使用embedded avro schema
。
关于mysql - PutElasticsearchHttpRecord:封装的 token 和定界符之间的无效字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52864793/