Iam尝试使用WSO2 Stream Processor上的siddhi app解压缩传入的事件。 在早期版本(例如DAS)上有siddhi扩展名esbAnalytics:decompress,但是如果我在SP中使用此扩展名,则会出现错误" esbAnalytics不存在扩展名:解压缩"
from FlowEntry#esbAnalytics:decompress(meta_compressed, meta_tenantId, flowData, messageId)
select messageFlowId, host, hashCode, componentName, componentType, componentIndex, componentId, startTime, endTime, duration, beforePayload, afterPayload, contextPropertyMap, transportPropertyMap, children, entryPoint, entryPointHashcode, faultCount,metaTenantId, _timestamp
group by messageFlowId
insert into TestOutputFlowEntry;
有没有办法如何使用esbAnalytics:在SP或任何其他方式解压缩如何解压缩传入的flowEntry事件?提前谢谢。
答案 0 :(得分:2)
esbAnalytic:解压缩是用Siddhi 3写的custom extension。为了在SP中使用它,需要将其移植到Siddhi 4,因为有API更改。
尝试编写guide的自定义扩展程序来移植它。此外,Siddhi 4使用注释标识扩展,这在生成的代码上被注释掉以便于使用。将以下内容添加到扩展流处理器中,如math extension
中所示@Extension(
name = "decompress",
namespace = "esbAnalytics",
description = "decompress function",
examples = {
@Example(
syntax = "FlowEntry" +
"#esbAnalytics:decompress(meta_compressed, meta_tenantId, flowData, messageId)\n",
description = "the above syntax can be used"
)
}
)
编写扩展名后,将jar放在{SP_HOME} / lib目录中,以便在Siddhi App中使用它。
答案 1 :(得分:0)
实际上我将此扩展程序移植到Siddhi 4并进行了所有必要的更改,构建了jar文件并将其放到lib目录中,但仍存在相同的错误" esbAnalytics没有扩展名:解压缩"。是否有关于该jar文件的名称或其他任何可能做错的规则?
答案 2 :(得分:0)
以上扩展名已默认从WSO2 Stream Processor 4.3.0开始发布。