Datadog 监视器可在自另一个指标以来的一段时间内未发生一个指标时发出警报

问题描述 投票:0回答:1

我在设置监视器时遇到问题,该监视器会在某个事件在另一事件发生后一段时间后未发生时向我发出警报。基本上,对于我的应用程序中的给定任务,我有一个指示“正在运行”状态的日志和另一个指示“已完成”状态的日志。根据这些日志,我在 datadog 中定义了两个自定义指标。我正在尝试设置一个监视器,当任务开始运行后 2 小时内尚未完成时,该监视器会向我发出警报。例如,如果在 2:00 观察到运行指标,则监视器不应在 4:00 之前发出未完成的警报。如果在 4:00 之前观察到完成的指标,监视器将不会针对此任务发出警报。

我尝试实现此目的的方法是使用阈值监视器,并从完成的指标计数中减去运行指标的计数。然而,这里的挑战是时间增量部分。

我尝试过使用延迟评估(延迟2小时),但是,在开始评估时,它只会考虑第一个指标。基本上,只是将窗口向后滑动。

datadog
1个回答
0
投票

我遇到了同样的问题,直到我意识到我正在使用的指标可以得到更好的利用。 我决定使用千分尺的量规。 当作业开始运行时,我将仪表的状态设置为 1,当作业未运行时(已停止、中止、已完成),我将仪表的状态设置为 0。

在我的 DataDog 端,我有一个滚动窗口,用于检查该值为 1 的时间是否超过 X 分钟(在我的情况下 X 是 10 分钟)

您的 DD 上将会出现如下所示的查询

avg(last_10m):avg:job_state{env:staging, job_name:some_name} by {job_name} >= 1
© www.soinside.com 2019 - 2024. All rights reserved.