鹰式警报触发器不触发
hawkular alert triggers do not fire
这是我的测试环境:
- Hawkular 服务 0.30
- Ubuntu Desktop 16.04.1 LTS 运行 基于 VMWare
- 阿帕奇卡桑德拉 3.9
我可以毫无错误地将数据发送到指标引擎,并且数据已正确存储。我用 grafana 插件和 csql cassandra 客户端检查了它。
我的问题是在尝试警报引擎时,触发器没有被触发。我从 Quick Start Guide from Hawkular Services 中的第一个示例开始,即 ADD Metrics 点。
我可以创建触发器,我可以在 cassandra 存储中看到它,我可以从其余部分恢复它 api,但是当发送满足条件的数据时它永远不会被触发。
我一直在尝试创建另一个租户,各种触发器、事件和警报,发送大量数据......但结果完全一样,触发器没有被触发。
我知道问题不在倾倒配置中,正如documentation
中所说
Note that default dampening for triggers is Strict(1). Which just
means that by default a trigger fires every time it’s condition set
evaluates to true.
触发器的代码是这个。但是我试过创建另一个,结果相同。
我知道电子邮件插件默认配置为使用 localhost:25 smtp 服务器,但我的环境中并未安装它。但我应该在日志中看到一些东西。执行的操作至少如文档中所述。澄清一下,这些日志不是来自我,而是来自文档。我还更改了 wildfly standalone.xml 文件中的邮件配置,以使用我的 gmail 帐户及其 smtp 服务器,但没有再次收到邮件。
11:59:37,361 INFO [org.hawkular.alerts.actions.api] (Thread-251
(ActiveMQ-client-global-threads-1118700939)) HAWKALERT240001: Plugin
[email] has received an action message:
[BusActionMessage[action=Action[eventId='temperature-trigger-1472551176767-dc41aaf3-bdd7-4a89-a950-44dc92f10c8b',
ctime=1472551176769, event=Alert
[alertId=temperature-trigger-1472551176767-dc41aaf3-bdd7-4a89-a950-44dc92f10c8b,
status=OPEN, ackTime=0, ackBy=null, resolvedTime=0, resolvedBy=null,
context={}], result='null']]] 11:59:37,385 INFO
[org.hawkular.alerts.actions.api] (Thread-242
(ActiveMQ-client-global-threads-1118700939)) HAWKALERT240001: Plugin
[email] has received an action message:
[BusActionMessage[action=Action[eventId='temperature-trigger-1472551176770-300fda0d-2c82-46e3-9f09-f4e9ed4ffa3a',
ctime=1472551176771, event=Alert
[alertId=temperature-trigger-1472551176770-300fda0d-2c82-46e3-9f09-f4e9ed4ffa3a,
status=OPEN, ackTime=0, ackBy=null, resolvedTime=0, resolvedBy=null,
context={}], result='null']]]
{
"triggers": [
{
"trigger": {
"id": "temperature-trigger",
"name": "Trigger for the temperature sensor",
"severity": "HIGH",
"enabled": true,
"actions": [
{
"actionPlugin": "email",
"actionId": "notify-admin"
}
]
},
"conditions": [
{
"triggerMode": "FIRING",
"type": "threshold",
"dataId": "temperature",
"operator": "LT",
"threshold": 0
}
]
}
],
"actions": [
{
"actionPlugin": "email",
"actionId": "notify-admin",
"properties": {
"to": "admin@example.org"
}
}
]
}
我想我遗漏了一些非常明显的东西,但我看不到它。
如果您从指标中获取数据,条件中的 dataId 应该需要一个前缀来定义类型。
http://www.hawkular.org/blog/2016/10/06/hawkular-metrics-0.20.0.Final-released.html
所以,dataId = "temperature" 应该是 dataId = "hm_g_temperature"(如果温度定义是一个量表)。
请告诉我们这是否是您问题的根本原因。
如果您需要进一步的帮助,可以通过#hawkular (Freenode) 联系我们。
谢谢。
这是我的测试环境: - Hawkular 服务 0.30 - Ubuntu Desktop 16.04.1 LTS 运行 基于 VMWare - 阿帕奇卡桑德拉 3.9
我可以毫无错误地将数据发送到指标引擎,并且数据已正确存储。我用 grafana 插件和 csql cassandra 客户端检查了它。
我的问题是在尝试警报引擎时,触发器没有被触发。我从 Quick Start Guide from Hawkular Services 中的第一个示例开始,即 ADD Metrics 点。
我可以创建触发器,我可以在 cassandra 存储中看到它,我可以从其余部分恢复它 api,但是当发送满足条件的数据时它永远不会被触发。
我一直在尝试创建另一个租户,各种触发器、事件和警报,发送大量数据......但结果完全一样,触发器没有被触发。
我知道问题不在倾倒配置中,正如documentation
中所说Note that default dampening for triggers is Strict(1). Which just means that by default a trigger fires every time it’s condition set evaluates to true.
触发器的代码是这个。但是我试过创建另一个,结果相同。
我知道电子邮件插件默认配置为使用 localhost:25 smtp 服务器,但我的环境中并未安装它。但我应该在日志中看到一些东西。执行的操作至少如文档中所述。澄清一下,这些日志不是来自我,而是来自文档。我还更改了 wildfly standalone.xml 文件中的邮件配置,以使用我的 gmail 帐户及其 smtp 服务器,但没有再次收到邮件。
11:59:37,361 INFO [org.hawkular.alerts.actions.api] (Thread-251 (ActiveMQ-client-global-threads-1118700939)) HAWKALERT240001: Plugin [email] has received an action message: [BusActionMessage[action=Action[eventId='temperature-trigger-1472551176767-dc41aaf3-bdd7-4a89-a950-44dc92f10c8b', ctime=1472551176769, event=Alert [alertId=temperature-trigger-1472551176767-dc41aaf3-bdd7-4a89-a950-44dc92f10c8b, status=OPEN, ackTime=0, ackBy=null, resolvedTime=0, resolvedBy=null, context={}], result='null']]] 11:59:37,385 INFO [org.hawkular.alerts.actions.api] (Thread-242 (ActiveMQ-client-global-threads-1118700939)) HAWKALERT240001: Plugin [email] has received an action message: [BusActionMessage[action=Action[eventId='temperature-trigger-1472551176770-300fda0d-2c82-46e3-9f09-f4e9ed4ffa3a', ctime=1472551176771, event=Alert [alertId=temperature-trigger-1472551176770-300fda0d-2c82-46e3-9f09-f4e9ed4ffa3a, status=OPEN, ackTime=0, ackBy=null, resolvedTime=0, resolvedBy=null, context={}], result='null']]]
{
"triggers": [
{
"trigger": {
"id": "temperature-trigger",
"name": "Trigger for the temperature sensor",
"severity": "HIGH",
"enabled": true,
"actions": [
{
"actionPlugin": "email",
"actionId": "notify-admin"
}
]
},
"conditions": [
{
"triggerMode": "FIRING",
"type": "threshold",
"dataId": "temperature",
"operator": "LT",
"threshold": 0
}
]
}
],
"actions": [
{
"actionPlugin": "email",
"actionId": "notify-admin",
"properties": {
"to": "admin@example.org"
}
}
]
}
我想我遗漏了一些非常明显的东西,但我看不到它。
如果您从指标中获取数据,条件中的 dataId 应该需要一个前缀来定义类型。
http://www.hawkular.org/blog/2016/10/06/hawkular-metrics-0.20.0.Final-released.html
所以,dataId = "temperature" 应该是 dataId = "hm_g_temperature"(如果温度定义是一个量表)。
请告诉我们这是否是您问题的根本原因。
如果您需要进一步的帮助,可以通过#hawkular (Freenode) 联系我们。
谢谢。