问题标签 [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.
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 给了我所有可能的命中。
例如 :
这也适用于模式
输出如下:
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'。
你能帮我调试这个异常吗?
wso2 - 如何获取 siddhi 的最新/官方代码和 jar?
我看到在http://dist.wso2.org/maven2有一个单独的 maven 存储库,但是 siddhi 的版本 - 你的 CEP 与这里的不匹配:https ://github.com/wso2/product-cep
哪些是最新的,哪些可以使用?此外,该网站有一个潜在客户捕获表格。该产品是真正的 apache2 开源还是只是名义上的?
siddhi - Siddhi CEP 作为库:每个 SiddhiManager 实例的 ExecutionPlan 数量
我是 Siddhi CEP 的新手。我们计划将其用作独立的 java 库。我们计划让一个 SiddhiManager 实例使用不同的事件流,每个事件流映射到一个带有查询的执行计划。
在下面的邮件线程中,提到了每个场景使用一个 SiddhiManager 实例。
http://mail.wso2.org/mailarchive/architecture/2014-March/015501.html
那么每个 Siddhi Manager 实例的执行计划数量是否有任何限制。
wso2 - 带有 WSO2 cep 引擎的分布式缓存
基本信息:
使用tomcat server7.0 搭配JDK1.7
我有两台服务器,我使用 Hazlecat 3.0 版进行缓存。
我的问题是 CEP 引擎。使用 WSO2 引擎
我在 pom.xml 中添加了以下内容:
我将 siddhiConfig 设置为 DistributedProcessing(true) + 将 instanceIdentifier 设置为与我的 HazelcastInstance 具有相同的 ID。
每台服务器都有一个 siddihiManager 实例。
我的问题是,2 服务器是否读取/写入相同的缓存?
我在其他地方看到需要在两台服务器之间进行同步。知道怎么做吗?
谢谢
siddhi - Siddhi CEP 模式查询性能
使用 Siddhi CEP 独立库的模式查询在 10k 事件上每 5 分钟定期检测未发生的事件。观察记忆逐渐增加。为什么会发生这种情况?
java - Siddhi 支持哪种对象的“对象”属性类型?
我正在对使用 Siddhi 作为 CEP 引擎的原型进行一些实验,并且想知道输入流是否仅支持平面事件数据,或者还可以支持类似 JSON 的数据层次结构进行查询。
Siddhi 的文档引用了一种object
属性类型,但我在任何地方都找不到这种类型所指的内容。
在源存储库中提供的代码示例中,也从未使用过此属性类型。
扩展这些示例中编写的查询之一,我希望能够执行以下操作:
Siddhi 是否支持任何类型的 JSON 类数据?如果是,应该将哪些 Java 对象类型传递给InputHandler
?
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;";
但是当我尝试编译它们时,我得到:
我可以编译查询的唯一方法是isOutgoingCall
从group by
子句中删除。Siddhi 文档指出应该可以按多个变量进行分组。这是一个错误吗?
这是在版本 3.0.0-alpha 上。
wso2 - Siddhi 中的 StreamCallback 和 QueryCallback 有什么区别?
siddhi中有很多回调,我想知道它们之间的区别。比如,我们什么时候应该使用streamCallback,什么时候我们应该使用queryCallback。
我找不到任何关于此的文件。
谢谢。
wso2 - 如何使用window.frequent?
任何人都可以给我一个关于如何使用window.frequent的例子吗?例如,我写了一个测试,
但是从 outputStream 中,我找不到规则。
谢谢。