0

我在 kafka 中有特定格式的消息。它们是插入符号 ^ 分隔的。现在要使用宁静来解析这个,我正在使用下面的解析规范。

        "parser" : {
            "type" : "string",
            "parseSpec" : {
              "timestampSpec" : {
                "column" : "datetime",
                "format" : "yyyy-MM-dd HH:mm:ss"
              },
              "dimensionsSpec" : {
                "dimensions" : [],
                "dimensionExclusions" : [
                  "datetime"
                ]
              },
              "format" : "javascript",
              "function" : "function(str) { var parts = str.split('^'); return { key1:parts[0],key2:parts[1],key3:parts[2] } }"
            }
          },

但是,当我通过 kafka 生产者插入一行并检查宁静日志时。它显示droppedCount=1. 所以它正在丢弃消息。我在浏览器中检查了上面的javascript函数。它工作正常。这里有什么问题?

4

1 回答 1

0

我认为它不支持 javascript 格式。

我的经验是 Tranquility 不支持全套 Druid 配置,而文档明确提到“ spec-没有 ioConfig 的 Druid 摄取规范”,并链接到 Druid 配置文档。我花了很多时间在非工作功能上。我什至在调试器中运行它,通过代码来确定。

我建议最近将Kafka 扩展添加到 Druid。你不需要宁静。我相信 Druid 支持的所有格式都可以使用这种方法。请试试。

宁静好久没更新了。我建议继续使用原生 Kafka 摄取。

于 2016-11-11T20:01:15.450 回答