问题标签 [siddhi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
306 浏览

java - WSO2 CEP 序列和外部时间

我想改进我的产品,我想为它编写一个复杂的分析器界面。我使用elasticsearch存储日志,每天存储超过5000万条日志。所以重要的是可以在上述界面上创建不同的查询,这将显着限制要分析的日志数量。wso2 cep 组件将获取要测试的日志,然后它将结果作为 json 返回,该结果将显示在我的应用程序上。如果我可以使用日志的时间戳而不是内部时间( System.currentTimeMillis() ),WSO2 cep 库会很棒。

https://docs.wso2.com/display/CEP300/Windows

如果有一种方法可以将属性用作时间戳或使用 send 方法的时间戳参数,那就太好了。

与此同时,我发现了另一个问题:我需要那些后面跟着指定事件的事件。

例子 :

上述查询没有结果。尽管如此,它似乎应该很成功,因为以下日志已发送到 siddhiManager。输出 :

以下事件应该与“查询”匹配,但 instaed 什么也没给我。以下日志应该是输出:

此外,如果查询类型是序列,我只想要一对作为结果。假设以下日志将被发送到队列:

我只需要指定事件之后的那些事件。我只需要那些后跟 ip 192.10.1.1 的日志(如果有一个事件被分析,那么它不应该被再次分析)。所以结果应该是 6-7 的命中,但 siddhi 给了我所有可能的命中。

例如 :

这也适用于模式

输出如下:

0 投票
1 回答
156 浏览

wso2 - WSO2 CEP 4.0.0 执行计划中的异常定义表

我正在尝试从 WSO2 CEP 3.1.0 迁移到 WSO2 CEP 4.0.0。

我已将现有执行计划转换为新的 SiddhiQL 语法:

不幸的是,当我尝试验证查询表达式时,WSO2 CEP 4.0.0 抛出以下异常:

无法为表“slowestQueryTimeTable”创建更新,引用流:在执行计划“occurredFailure”中找不到queryTimeStream

错误消息并不是很有用,因为如果我删除表'slowestQueryTimeTable' 和与之相关的任何表达式,剩余的查询表达式将成功验证,这意味着确实找到了流'queryTimeStream'。

你能帮我调试这个异常吗?

0 投票
1 回答
53 浏览

wso2 - 如何获取 siddhi 的最新/官方代码和 jar?

我看到在http://dist.wso2.org/maven2有一个单独的 maven 存储库,但是 siddhi 的版本 - 你的 CEP 与这里的不匹配:https ://github.com/wso2/product-cep

哪些是最新的,哪些可以使用?此外,该网站有一个潜在客户捕获表格。该产品是真正的 apache2 开源还是只是名义上的?

0 投票
2 回答
284 浏览

siddhi - Siddhi CEP 作为库:每个 SiddhiManager 实例的 ExecutionPlan 数量

我是 Siddhi CEP 的新手。我们计划将其用作独立的 java 库。我们计划让一个 SiddhiManager 实例使用不同的事件流,每个事件流映射到一个带有查询的执行计划。

在下面的邮件线程中,提到了每个场景使用一个 SiddhiManager 实例。
http://mail.wso2.org/mailarchive/architecture/2014-March/015501.html

那么每个 Siddhi Manager 实例的执行计划数量是否有任何限制。

0 投票
1 回答
338 浏览

wso2 - 带有 WSO2 cep 引擎的分布式缓存

基本信息:

使用tomcat server7.0 搭配JDK1.7

我有两台服务器,我使用 Hazlecat 3.0 版进行缓存。

我的问题是 CEP 引擎。使用 WSO2 引擎

我在 pom.xml 中添加了以下内容:

我将 siddhiConfig 设置为 DistributedProcessing(true) + 将 instanceIdentifier 设置为与我的 HazelcastInstance 具有相同的 ID。

每台服务器都有一个 siddihiManager 实例。

我的问题是,2 服务器是否读取/写入相同的缓存?

我在其他地方看到需要在两台服务器之间进行同步。知道怎么做吗?

谢谢

0 投票
1 回答
436 浏览

siddhi - Siddhi CEP 模式查询性能

使用 Siddhi CEP 独立库的模式查询在 10k 事件上每 5 分钟定期检测未发生的事件。观察记忆逐渐增加。为什么会发生这种情况?

未发生流检测的内存占用

0 投票
2 回答
779 浏览

java - Siddhi 支持哪种对象的“对象”属性类型?

我正在对使用 Siddhi 作为 CEP 引擎的原型进行一些实验,并且想知道输入流是否仅支持平面事件数据,或者还可以支持类似 JSON 的数据层次结构进行查询。

Siddhi 的文档引用了一种object属性类型,但我在任何地方都找不到这种类型所指的内容。

源存储库中提供的代码示例中,也从未使用过此属性类型。

扩展这些示例中编写的查询之一,我希望能够执行以下操作:

Siddhi 是否支持任何类型的 JSON 类数据?如果是,应该将哪些 Java 对象类型传递给InputHandler

0 投票
1 回答
351 浏览

java - Siddhi 不能按多个变量分组吗?

我有以下流定义:

String eventStreamDefinition = "define stream cdrEventStream (nodeId string, phone string, timeStamp long, isOutgoingCall bool); ";

和查询:

String query = "@info(name = 'query1') from cdrEventStream#window.externalTime(timeStamp,5 sec) select nodeId, phone, timeStamp, isOutgoingCall, count(nodeId) as callCount group by phone,isOutgoingCall insert all events into outputStream;";

但是当我尝试编译它们时,我得到:

我可以编译查询的唯一方法是isOutgoingCallgroup by子句中删除。Siddhi 文档指出应该可以按多个变量进行分组。这是一个错误吗?

这是在版本 3.0.0-alpha 上。

0 投票
1 回答
223 浏览

wso2 - Siddhi 中的 StreamCallback 和 QueryCallback 有什么区别?

siddhi中有很多回调,我想知道它们之间的区别。比如,我们什么时候应该使用streamCallback,什么时候我们应该使用queryCallback。

我找不到任何关于此的文件。

谢谢。

0 投票
2 回答
123 浏览

wso2 - 如何使用window.frequent?

任何人都可以给我一个关于如何使用window.frequent的例子吗?例如,我写了一个测试,

但是从 outputStream 中,我找不到规则。

谢谢。