Grafana: 警报:一天中的时间限制

创建于 2016-11-16  ·  83评论  ·  资料来源: grafana/grafana

一天中的时间限制。

看看这可以实现的两种方式。

1) 作为警报条件
2) 作为通知的过滤器

arealerting typfeature-request

最有用的评论

作为一种解决方法,使用 prometheus 作为后端:

  • 将以下查询添加到您的指标: hour() ,它返回一天中的小时 (0-23)。 您可以将其隐藏在图表中。
  • 在警报中添加额外的AND条件,因此只有在hour()查询在您想要的范围之间(例如:办公时间)时才会发出警报。

day_of_week()也可以这样做。

所有83条评论

有没有人想出解决这种情况的方法? 我很震惊只有 4 人投了这张票,因为除非我的系统 24/7 正常运行,否则整个警报功能对我来说基本上毫无用处。 我觉得我必须错过其他人为规避这个问题而正在做的其他一些功能或技术......

就目前而言,我要么必须关闭所有警报通知,要么接受这样一个事实,即当我的进程关闭 EOD 时我会收到一堆虚假通知。

并没有试图听起来真的很重要,只是混淆了其他人是如何管理这些警报的。 多年来我一直喜欢 Grafana,自从 v4 首次引入警报功能以来,我一直在跟踪它。 但每次有警报更新时都会让人头疼,而且这个限制没有得到解决。

@bblazei你是对的! 这是一个了不起的功能,需要优先考虑,并且肯定会对 ppl 有帮助!
@torkelo你知道这个功能什么时候计划?

不,现在不是 Eta,因为它不在我们接下来两个版本(4.3 和 4.4)的路线图上

嗯,这很不幸。 您如何建议在非 24/7 系统上使用警报框架?

这是我们非常喜欢的,因为我们需要根据一天中的时间设置不同的警报级别

我们也在(不是这样)耐心地等待这个。 我们目前定期使用 curl 到 Slack 图表。

@torkelo torkelo。 已经有一段时间了,我没有看到这方面的更新。 我们也在寻找一些东西,比如我们是否可以在特定时间禁用 grafana 警报。 那可能吗?

有人对此功能进行了一些更新吗?

我可以在“警报列表”页面上手动暂停警报,但是(例如)在我们每天凌晨 2:30 的数据库服务器备份期间,我们会收到有关“网络 I/O 等待进行中”的警报。 创建在特定时间段内不通知的警报肯定会很好。

grafana 是否支持模运算? 然后,您应该能够使用标识函数来获取 unix 时间作为面板中的附加指标。 使用模函数,您可以获得 unix 时间除以 86400(一天中的秒数)的余数。 然后,您可以在警报中的时间指标上添加范围条件。 对?

为此目的添加模运算会很困难吗?

真的很需要这个功能!

对此有何更新? 它是在制品还是现在仍在“考虑”中?

我们真的希望对某些警报(例如使用情况)使用不同的时间范围,我们希望在白天高于某个阈值,但在晚上不会。

+1

+1

+1

为什么人们( @bascarsija和 @maizy)会否决人们对此的要求?

人们正在“否决”这些“+1”消息,这些消息会导致向订阅此线程的每个人发送电子邮件通知。 许多人将这些“+1”消息添加到线程中的累积效应通过显着降低信噪比显着降低了线程订阅功能的价值。

您可以通过反应简单地“赞成”或“反对”来表明您对他人提出的特定建议或评论的兴趣或同意,而无需触发任何此类电子邮件通知。 对问题的团结/共同兴趣最突出的表现通常是对问题的初始/主要描述的反应计数——请考虑在此处添加您的反应。

坦率地说,这是 Github 的一个系统性问题——它同样适用于所有项目中的所有问题线程。 您会在请求此类使用的各个线程中发现许多请求,因为 Github UI 不会通知用户此后果或以任何明显方式阻止它,并且知道该问题(和/或受其负面影响)的用户是可能不愿通过向线程添加另一条消息来提供此类反馈(从而进一步降低信噪比)。

感谢您的解释。 我猜如果发布那些+1的人知道这只是一种烦恼,他们就不会这样做。 发布一个简短的解释可能会阻止其中一些......以及我的问题。 大拇指向下可能意味着很多事情。

在一天、一周、一个月和一年的特定时间有任何关于日程提醒的更新吗?

作为一种解决方法,使用 prometheus 作为后端:

  • 将以下查询添加到您的指标: hour() ,它返回一天中的小时 (0-23)。 您可以将其隐藏在图表中。
  • 在警报中添加额外的AND条件,因此只有在hour()查询在您想要的范围之间(例如:办公时间)时才会发出警报。

day_of_week()也可以这样做。

如果我们希望能够根据世界上不同的团队提供 24H 服务,我们也需要这个功能……有什么计划吗?

同时此功能已准备就绪,我正在尝试使用解决方法。

例子:

```
指标 A:production.application_a.actual_metric = 123(这是我的实际指标)
指标 B:helper.time_helper.hour = 1 到 24(假时间指标,每分钟发送到一天中的某个小时到石墨)

   alert requirement :

(公制 A 低于 100 并且小时在 10 和 20 范围内)
或者
(公制 A 低于 50 并且小时超出范围 10 和 20)
```

换句话说:

metric A threshold is 100 between 10AM to 8PM and it is 50 for rest of the time

我的问题 :

对于上述情况,我可以使用单个图形面板来实现,还是我真的有两个不同的图形面板,一个用于内部范围和外部范围? 或者在 grafana 中还有其他方法可以实现这一点吗? (注意:我使用的是石墨 0.9。)

image

还在等待这个功能,向 grafana 发送一些错误指标的有趣方法......只是想知道生成指标是一个多么好的、简单的选项?

+1 我们可以有一个任意查询,我们可以使用表达式来限制警报条件吗?

1 到 2 之间的小时 AND

+1 将不胜感激!

只是对一个粗略的工作的评论
我使用collectd / Influxdb
我有一个将小时值写入平面 ext 文件的 cron 进程
收集表插件将此读取为 Table_Value - 实例“小时”
在我只需要使用范围的任何警报中,我将指标小时(最大值)添加到仪表板作为隐藏指标,然后在警报中使用 AND 范围值 - 仅当小时在 X 和 Y 之间时触发
同样的事情也适用于星期几

粗鲁但有效

@torkelo对这可能何时实施有任何猜测吗?

不,抱歉,它不在核心团队路线图上

任何解决方法以防止在 Cloud vm 实例因计划关闭而计划关闭时发送警报。 大多数系统已经有很多年了。
请添加此 ;) 警报疲劳设置。

我有一个将小时值写入平面 ext 文件的 cron 进程
在我只需要使用范围的任何警报中,我将指标小时(最大值)添加到仪表板作为隐藏指标,然后在警报中使用 AND 范围值 - 仅当小时在 X 和 Y 之间时触发

这是一个非常有效的解决方法,与仅仅忽略 X - Y 之间的警报相比,它具有微妙但有用的优势:如果情况在 Y 之前没有得到纠正,我会在 Y 处收到我的第一个警报。如果我只是忽略 X - Y 之间的警报,我即使在 Y 之后也不会收到警报(尽管我猜可以使用“发送提醒”功能)。

事实证明,当使用石墨作为数据源时,不需要 cron 作业:

我添加了timeSlice(isNonNull(identity(1)), '02:30 -9h', '06:00 -9h')的指标C $ 并添加了警报条件AND max() OF query(C, 1m, now) HAS NO VALUE以排除 2:30 - 6:00 之间的警报。 (那-9h是因为我的时区偏移量是 +9:00 并且 timeSlice() 似乎是 UTC。)

编辑:经过几天的尝试,那个timeSlice()技巧似乎不起作用......它似乎被困在我保存仪表板的时间并且没有移动到每一天。

这是一个巨大的缺失功能。 为什么这不在路线图上? 实施起来似乎微不足道

非常感谢@albertvaka使用 Prometheus 的 hour() 函数解决问题。

不幸的是,在使用 hour() 函数时似乎无法自动考虑时区(当有 DST 时这是一个问题)。 我们只能根据月份和日期手动计算时区,但这不是一个好的解决方案。

有关 prometheus/prometheus#4160 的更多信息

能够为不同的日期时间段设置不同的阈值水平会很好
例如,如果晚上几乎没有用户活动事件是可以的,但白天就不行

这个请求有进展吗?

不确定,但我在 Grafana 6.1.3 中找不到与此相关的任何新内容

希望看到实现此功能。 我们将 Grafana 用于业务关键警报,如果不需要,例如在他们的空闲时间不通知公司中的人员,那就太好了。

+1,希望能实现这一点。

+1 上帝保佑我在周末回家之前忘记暂停监控,我会在周一回来查看数千封电子邮件以了解预期的行为

+1 请尽快实施 - 如果不能很快实施,我将不得不将所有内容移植到 thingsboard https://thingsboard.io/

@torkelo你能给我们一些关于这个问题的信息吗? 有没有任何进展?

嗨,是否有人有足够的知识来实现​​它并提出拉取请求?

我可以告诉你我做了什么来“获得”这个功能。 我不能分享代码,因为它是专有的,但我可以分享一个想法,这不是任何专有公牛* * 的主题。

我已经实现了几个 cron-scheduled [SomeCloudProviderOfYourChoice]Lambda 函数,它们使用 Grafana REST API 从导出的 JSON 有效负载更新整个仪表板,其警报和阈值相应地取决于系统的活动/空闲时间(我们的系统每天活动 8-10 小时)周末以外)。 它工作得很好。

但。

每当您在 Grafana Web GUI 中使用仪表板时,您必须记住,每当您对转储 JSON 仪表板并将它们提交到“Grafana Scheduler”存储库的任何内容进行任何更改时,都是强制性的。 如果您忘记转储您的有效负载(南方公园 S11E09),您的更改将在调度程序启动时丢失(可恢复,但很痛苦)。 而且您必须将您的更改传播到两个活动/空闲 JSON 转储,这基本上意味着加倍努力(如果没有相应记录差异,则还要付出更多努力)。 实际上,此“解决方案”意味着您需要一个有据可查、维护良好、可见且严格遵循的_流程_来处理,从长远来看,这可能比根本没有这个功能更糟糕。 我们很少更改警报阈值,以至于我们处理_process_开销似乎并不麻烦。

反正...

我现在正在使用运行在 SQLite 之上的 Aiven Grafana(由提供者强制执行),因此如果将数据库更改为更并发且功能更丰富的东西,则可以弄清楚如何使用数据库触发器 + 事件来处理那些小的通过 Grafana Web GUI 进行部分更新,因此它可以使整个过程更加无缝。

继续关注,祝你好运!

请添加这个来完成,这是从其他平台迁移绝对需要的。

T-SQL 查询的简单方法是欺骗 GRAFANA(解决方法):

SELECT timestamp AS time,
        CASE 
            WHEN DATEPART(HOUR, SYSDATETIME()) NOT IN (0,1,2,3,4,5,6) 
            THEN COUNT(document_number)
            ELSE 0 
        END AS Receipts
FROM GRAFANA.dbo.ReceiptsErrorsHistory
WHERE timestamp >= DATEADD(DAY, -7, GETDATE())
AND document_type = 'receipt'
GROUP BY timestamp

此实施的状态如何? 我们目前正在使用 seyren 和 cabot 进行警报,并希望迁移到 Grafana 警报。 没有时间限制,我们将无法前进。

在弹性搜索案例中,我找到了解决这个问题的简单方法。
使用日期数学: https://www.elastic.co/guide/en/elasticsearch/client/net-api/7.x/date-math-expressions.htm。

例如,如果您想要范围为 (AM 00:00 ~ PM:12:00) 的数据,那么@timestamp :[now/d TO now/d+12h] 可能会返回想要的结果

@sukjoonhong我无法让它工作。 请问有截图吗?

我有一个解决方法,它使用 cron 来打开和关闭警报。 这仅在您想在一夜之间关闭所有警报时才有效(或者如果您可能会为编写单个警报的脚本而烦恼)。

在 grafana 盒子上的 crontab 中,我添加了:

1 * * * * root /root/do-alert-thing.sh

在 /root/do-alert-thing.sh 中:

#!/bin/bash

#Enable at 6am local
TZ='Somewhere/Sometime' date +%H | grep '06' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":false}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

#Disable at 9pm local
TZ='Somewhere/Sometime' date +%H | grep '21' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":true}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

只需将 Somewhere/Sometime 替换为您的时区(提示:运行timedatectl list-timezones以获得列表),然后添加您的凭据而不是[email protected]根据文档,此管理端点仅适用于基本身份验证模式。

希望这可以帮助那里的人。

@Atem18
2019-10-14-094215_3840x1080_scrot

就我而言,这个查询有效。

@sukjoonhong谢谢,我会试一试!

我有一个解决方法,它使用 cron 来打开和关闭警报。这仅在您想在一夜之间关闭所有警报时才有效(或者如果您可能会为编写单个警报的脚本而烦恼)。

在 grafana 盒子上的 crontab 中,我添加了:

1 * * * * root /root/do-alert-thing.sh

在 /root/do-alert-thing.sh 中:

#!/bin/bash

#Enable at 6am local
TZ='Somewhere/Sometime' date +%H | grep '06' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":false}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

#Disable at 9pm local
TZ='Somewhere/Sometime' date +%H | grep '21' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":true}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

只需将 Somewhere/Sometime 替换为您的时区(提示:运行timedatectl list-timezones以获得列表),然后添加您的凭据而不是[email protected]根据文档,此管理端点仅适用于基本身份验证模式。

希望这可以帮助那里的人。

我试过这个并且有效,但在 grafana ui 中它说它只暂停一个小时。所以我必须制作一个每小时重复一次的crontab,直到......?

我从不同的角度解决了这个问题,您可以根据脚本的输出生成 prometheus 开/关指标,例如检查备份脚本是否正在运行的 ps 命令。 然后在我的仪表板中,我有一个“备份活动”来显示备份状态,在我的所有查询和警报的主面板中,我添加了条件检查,如果备份指标 = 1,则不会发出警报。这种方法将还允许您添加一个单独的警报,如果备份运行时间超过您考虑历史指标数据时应该触发的时间。

我有一个解决方法,它使用 cron 来打开和关闭警报。 这仅在您想在一夜之间关闭所有警报时才有效(或者如果您可能会为编写单个警报的脚本而烦恼)。
在 grafana 盒子上的 crontab 中,我添加了:
1 * * * * root /root/do-alert-thing.sh
在 /root/do-alert-thing.sh 中:

#!/bin/bash

#Enable at 6am local
TZ='Somewhere/Sometime' date +%H | grep '06' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":false}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

#Disable at 9pm local
TZ='Somewhere/Sometime' date +%H | grep '21' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":true}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

只需将 Somewhere/Sometime 替换为您的时区(提示:运行timedatectl list-timezones以获得列表),然后添加您的凭据而不是[email protected]根据文档,此管理端点仅适用于基本身份验证模式。
希望这可以帮助那里的人。

我试过这个并且有效,但在 grafana ui 中它说它只暂停一个小时。 所以我必须制作一个每小时重复一次的crontab,直到......?

不知道为什么你会看到这种行为; 对我来说,它会暂停并保持暂停 9 小时,直到我使用早上的 cron 线路取消暂停。

我有一个解决方法,它使用 cron 来打开和关闭警报。 这仅在您想在一夜之间关闭所有警报时才有效(或者如果您可能会为编写单个警报的脚本而烦恼)。
在 grafana 盒子上的 crontab 中,我添加了:
1 * * * * root /root/do-alert-thing.sh
在 /root/do-alert-thing.sh 中:

#!/bin/bash

#Enable at 6am local
TZ='Somewhere/Sometime' date +%H | grep '06' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":false}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

#Disable at 9pm local
TZ='Somewhere/Sometime' date +%H | grep '21' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":true}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

只需将 Somewhere/Sometime 替换为您的时区(提示:运行timedatectl list-timezones以获得列表),然后添加您的凭据而不是[email protected]根据文档,此管理端点仅适用于基本身份验证模式。
希望这可以帮助那里的人。

我试过这个并且有效,但在 grafana ui 中它说它只暂停一个小时。 所以我必须制作一个每小时重复一次的crontab,直到......?

不知道为什么你会看到这种行为; 对我来说,它会暂停并保持暂停 9 小时,直到我使用早上的 cron 线路取消暂停。

并不是说我看到了这种行为,但它确实在 grafana UI 中说明了这一点。 停顿1小时。 所以我假设暂停技巧只适用于 1 小时。

但如果这是错误的,我会纠正。

并不是说我看到了这种行为,但它确实在 grafana UI 中说明了这一点。 停顿1小时。 所以我假设暂停技巧只适用于 1 小时。

但如果这是错误的,我会纠正。

这可能只是警报状态; 例如,如果警报正常,它将显示:

image

我猜它是否已暂停一个小时,它会说“暂停 1 小时”?

愚蠢的我,我想我一定是误解了🍡

感谢您的澄清!

四年后是否有计划在 6.6.x > 版本中实现此功能?

我们仍然期待看到这一点也得到实施。 如果空闲、度假或其他不可用的用户在不需要响应时收到垃圾邮件,这是一个非常无效的警报系统。

我们非常希望包括设置不同时间(对于我们的案例营业时间)来提醒的选项。

这里也一样,如果有这个就好了。

存在一些后端的解决方法(我对 MySQL 使用了一种解决方法,它涉及通过查询过滤特定时间范围之外的事件),但是将其作为“适当的功能”肯定是一个加分项。

我们也希望在未来的版本中看到这个功能。 能够在我们的“下班后”窗口中过滤/抑制警报会很有帮助。 例如,如果我们可以在晚上 8 点之后和第二天早上 8 点之前过滤掉警报。

得到这个功能会很棒,拜托。 就目前而言,就像孩子在晚上哭狼一样。 我只是把手机放在抽屉里。 警报没用。 谢谢你。

我们非常需要 Grafana 的确认功能。 如果没有Acknowledge Alert功能,Grafana Alerting 功能将无法在关键生产服务环境中使用。

很高兴在 Grafana 中看到此功能。 只有特定时间的警报与我们相关,工作时间 +-2 小时,夜间监测值(计划)上升,目前导致警报:-(

对功能请求 +1

如果我们可以为特定时间区域添加警报,这将是一个很棒的功能。 警报规则应仅适用于特定时间区域。

有一种方法来配置有关时间段的不同通知渠道可能会很棒,例如:

  • 一个正常的星期一 -> 通过 Slack 通知
  • 1 月 1 日星期一 -> 通过短信通知

时间段可以由用户定义并链接到通知通道。

我浏览了大部分评论,如果有人阐明了以下用例,我深表歉意,但我没有注意到。

支持警报的时间限制的一个原因是稀疏数据系列。 考虑一个批处理作业每天执行一次的设置,在午夜和凌晨 2 点之间的某个时间,以便为每天早上 8 点的简报准备数据。 “作业完成”的单个数据点在完成时发出。

在没有时间限制的情况下,没有一种很好的方法来提醒这一点。

“在过去 X 小时内没有数据点时发出警报”在任何 X 小时内都不起作用。 例如,如果我警告“过去 24 小时内没有数据点”,那么只要所有作业每天都正确执行,它就会起作用。 但是,如果我失败了,然后在上午 11 点重新运行作业以赶上进度。 然后我第二天的警报被打破(因为它直到上午 11 点之后才会触发)。 这是我的时间限制的主要用例。 唯一可行的警报是从凌晨 2 点到 8 点开启警报评估逻辑,并在“过去 8 小时内没有数据点”时发出警报。

此用例与在工作时间抑制警报或减少一天中特定时间的噪音无关。 即使有 24/7 待命响应,如果没有时间限制,上述警报也无法准确表达。

对此功能 +1。
在我们的例子中,有必要每天/每小时/每周发送一次包含过去 N 天信息的警报。 由于通讯必须在严格固定的时间(8:00、13:00 等)完成这一事实,一切都变得复杂起来。

作为一种解决方法,我们计划通过 HTTP Api 管理警报,但我们希望在 grafana 的客户端部分看到此功能。

需要这个功能。 示例:具有维护时间的 PROD 网络 - 现在希望在此维护时段内停止一些通知。 例如,特定时间范围之间的每个星期天晚上。 暂时不可能。

如果可用,我会非常喜欢这个功能。 我想在 24 小时范围内的特定时间段内停止提醒。

+100000

👍 +1
我认为将 Grafana 用作真正的警报引擎是必不可少的功能。

尽管实际服务保持不健康状态,但指标可能会根据指定的时间表发生变化。
我们需要一种通用的方法来控制该计划期间的警报。

+1

这将是客户端的一个不错的功能。 现在我们必须在 Logstash 中派生诸如 hourOfDay、dayOfWeek 之类的字段,以便让它们出现在 ES 中,以便为度量集添加额外的度量,并将其添加到警报规则中。

如果 1m 的平均指标 A(即 CPU 使用率)超过 90%,请提醒我

如果作为相同文档的最大 hourOfDay 的度量 B 在 RANGE 之间。

它可以工作,但是作为一种解决方法,像这样工作感觉很尴尬。
最特别的是,自 2016 年以来 Grafana 在其他领域取得了巨大的发展,但自 2016 年以来,这一点就被遗忘了。

我有一个解决方法,它使用 cron 来打开和关闭警报。 这仅在您想在一夜之间关闭所有警报时才有效(或者如果您可能会为编写单个警报的脚本而烦恼)。

在 grafana 盒子上的 crontab 中,我添加了:

1 * * * * root /root/do-alert-thing.sh

在 /root/do-alert-thing.sh 中:

#!/bin/bash

#Enable at 6am local
TZ='Somewhere/Sometime' date +%H | grep '06' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":false}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

#Disable at 9pm local
TZ='Somewhere/Sometime' date +%H | grep '21' && (
  curl http://localhost:3000/api/admin/pause-all-alerts -d '{"paused":true}' -u [email protected]:letmein -H 'Content-Type: application/json'
)

只需将 Somewhere/Sometime 替换为您的时区(提示:运行timedatectl list-timezones以获得列表),然后添加您的凭据而不是[email protected]根据文档,此管理端点仅适用于基本身份验证模式。

希望这可以帮助那里的人。

你好
你能告诉我如何获取个人警报网址吗?

你好
你能告诉我如何获取个人警报网址吗?

遗憾的是,4 年后这个明显需要的功能还没有实现。 我的用例是一个简单的家庭自动化,其中路由器必须不时重新启动(它是 ISP 的一个,并且不能超过一周的正常运行时间)。 我有一个简单的插座适配器,带有一个每天晚上重置路由器的表盘。 所以每天晚上我都会收到很多关于我的传感器在 Telegram 中出现故障的警报。 在特定时间间隔内禁用警报的简单功能会派上用场。

它不必立即进行超级复杂的调度。 在此功能的第一个版本中,它可能只是一天中的某个时间。 在后期添加更复杂的时间表

我们有没有办法在特定时间安排警报。

+1 此功能。

grafana 是否支持模运算? 然后,您应该能够使用标识函数来获取 unix 时间作为面板中的附加指标。 使用模函数,您可以获得 unix 时间除以 86400(一天中的秒数)的余数。 然后,您可以在警报中的时间指标上添加范围条件。 对?

为此目的添加模运算会很困难吗?

这听起来很疯狂,但它有效,对于我的用例来说已经足够了。 😅

time() % 86400

尽管如此,没有一个更方便的解决方案不是一个明显的黑客,这仍然是一个痛苦。 🤦

这听起来很疯狂,但它有效,对于我的用例来说已经足够了。 😅

time() % 86400

尽管如此,没有一个更方便的解决方案不是一个明显的黑客,这仍然是一个痛苦。 🤦

@ochrstn当我在 v6.6.1 上尝试此操作时,您拥有什么版本的 grafana,并且查询中基本上忽略了模运算?

这听起来很疯狂,但它有效,对于我的用例来说已经足够了。 😅

time() % 86400

尽管如此,没有一个更方便的解决方案不是一个明显的黑客,这仍然是一个痛苦。 🤦

@ochrstn当我在 v6.6.1 上尝试此操作时,您拥有什么版本的 grafana,并且查询中基本上忽略了模运算?

v6.6.2 🙈

grafana 是否支持模运算? 然后,您应该能够使用标识函数来获取 unix 时间作为面板中的附加指标。 使用模函数,您可以获得 unix 时间除以 86400(一天中的秒数)的余数。 然后,您可以在警报中的时间指标上添加范围条件。 对?
为此目的添加模运算会很困难吗?

这听起来很疯狂,但它有效,对于我的用例来说已经足够了。

time() % 86400

尽管如此,没有一个更方便的解决方案不是一个明显的黑客,这仍然是一个痛苦。

@ochrstn :) 您能否提供有关您如何做到这一点的详细信息?

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

jackmeagher picture jackmeagher  ·  3评论

ahmetkakici picture ahmetkakici  ·  3评论

royemmerich picture royemmerich  ·  3评论

Azef1 picture Azef1  ·  3评论

SATHVIKRAJU picture SATHVIKRAJU  ·  3评论