问题标签 [pagerduty]

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 回答
420 浏览

jenkins - 连接到 events.pagerduty.com:443 连接超时

詹金斯 2.82

Jenkins master - 从这台机器上,我无法访问互联网/外部世界。

Jenkins 从属服务器,运行 docker 容器(用于从属服务器),可以访问外部世界/互联网。

我安装了 PagerDuty 插件并在作业中正确配置了它,以便在每次失败以及状态恢复正常时发送通知。

当我运行这项工作时,我收到以下错误消息com.mashape.unirest.http.exceptions.UnirestException: org.apache.http.conn.ConnectTimeoutException: Connect to events.pagerduty.com:443 [events.pagerduty.com/54.244.255.45, events.pagerduty.com/54.241.36.66, events.pagerduty.com/104.45.235.10] failed: connect timed out

我首先登录从机并尝试 ping events.pagerduty.com 服务器旁边的 IP(如上所列)并且 ping 工作正常。在端口 443 (ssh) 上执行 telnet 也提供了有效的输出。

由于从属服务器实际上是 docker 容器,我进入其中一个容器从属服务器并做了同样的事情(对于这些 events.pagerduty.com IP、nslookup 和 nc / ncat 等,在 443 上进行 ping、telnet 和输出看起来不错)。

在这里,我在 docker slave 容器的主机内,即我跑了docker exec -it shenazi_ninza bash,现在我在容器的主机/IP 内:

Jenkins 作业配置中的 PagerDuty 集成在POST Built Actionsarea 下可用。

我的问题是,整个工作不是在从服务器上运行吗(又名容器的从服务器,我可以从那里访问外部世界并且我能够连接到 events.pagerduty.com 服务器)?

似乎 JenkinsPOST Build Data在我无法访问 events.pagerduty.com(ping/telnet 等)的主 Jenkins 实例上运行该部分下的任何内容?由于我们不希望 Jenkins master 具有外部世界访问权限,如何解决此问题,以便在该作业的构建失败时收到警报?

0 投票
1 回答
2732 浏览

python - 如何为特定的气流任务静音失败?

我在这里描述的气流中设置了一个条件任务。它所做的只是检查配置单元分区是否存在。如果是,则继续其余任务,如果不是,请先添加分区,然后再继续。条件检查任务可以失败也可以成功,两者都可以。但是,我为 dag 设置了寻呼机职责电子邮件通知,因为我想知道下游任务何时失败。如何在该特定条件任务上静音失败通知,以免在寻呼机职责时收到误报?

0 投票
1 回答
1068 浏览

sensu - Sensu:仅在发生 n 次后处理检查的最佳实践

我最近从 Sensu 0.24 升级到 1.2 并注意到检查立即触发到引用的处理程序。

在旧的检查中(使用 v0.24),检查有一个“发生”属性来过滤掉噪音。我只希望处理程序在每 n次出现时处理检查,即 http 检查必须失败 5 次,然后才会触发 pagerduty 处理程序。这种行为似乎随着 sensu 升级而改变。

据我了解,处理程序应该包含一个过滤器来根据属性对事件进行排序。所以假设这是我的支票:

在以前的版本中(或者至少这是我的理解),这个检查只会在失败 5 分钟(60 秒间隔 5 次)后处理。这不再起作用了,所以现在处理程序应该包含一个过滤器来处理事件:

“发生”过滤器看起来像这样:

但是,无论在该eval部分之后发生什么,无论是value >= 5还是value < 5,效果都是一样的,并且 pagerduty 处理程序会被执行。我已经尝试使用该negate指令,truefalse似乎我对过滤和发生如何进行检查的理解是不正确的。也许检查根本不计算它们的出现?

有人可以帮忙解释一下吗?

0 投票
1 回答
2074 浏览

terraform - 如果输入是非空列表或空列表,我需要我的模块返回项目列表

我的模块将 apossibly-empty-list作为输入,如果该列表不为空,则创建一些资源并返回我在模块之外需要的特定属性,如下所示:

我遇到的麻烦是,当这个模块首先使用非空列表运行时,从而创建资源,它工作正常。如果我再次运行它,它会失败并出现以下异常:

如果为空,我想不出一个好方法让它output返回一个空列表possibly_empty_resource_list

有任何想法吗?

编辑:

我尝试对输出执行三元检查,但由于某种原因,不支持使用列表,因此这不起作用,但我希望它说明我正在尝试做的事情:

解决方案:

0 投票
2 回答
538 浏览

amazon-web-services - 是否有 AWS / Pagerduty 服务在未收到通知时会提醒我

我们在 AWS ECS 上运行了一个小型 Java 调度程序。它正在做 cron 过去在我们旧的单体架构上所做的事情。它在 docker 容器中启动(fargate)任务。我们有一个每小时运行的任务,这对我们来说非常重要。我想知道它是否因任何原因崩溃或无法运行(例如,java 调度程序失败,或者有人关闭了任务)。

我正在寻找一种服务,如果它没有得到通知,它会提醒我。每次脚本成功运行时,我都想调用通知系统。然后,如果警报系统没有按预期收到“OK”通知,它就会发出警报。

我认为这种服务必须存在,我不想重新发明轮子试图自己构建它。我想我的问题是,它叫什么?我在哪里可以得到那种东西?(我们显然在使用 AWS,并且我们有一个 pagerDuty 帐户)。

0 投票
1 回答
68 浏览

node.js - 我想使用 Node js 在 Pagerduty 中创建一个用户。但我做不到。有人可以帮助我吗?

我是 Node js 的新手。下面是我写的代码。它没有显示任何输出。

0 投票
1 回答
229 浏览

slack-api - 监控 Slack 和 PagerDuty 的连接性

我们正在使用 PRTG 来监控许多内部资源,并且我们已将其设置为在 Slack 频道和/或通过 PagerDuty(取决于严重性)使用它们各自的 API 向我们发出警报。考虑到 Slack 和 PagerDuty 对我们来说是外部的,我们还想监控我们的 PRTG 实例是否可以访问它们——基本上,一种自我监控的形式或谁在看守望者?

到目前为止,我们为Slack找到的唯一可靠方法是将实际消息发布到私有“测试”Slack 频道,例如(已编辑 Slack URL 详细信息):

同样,PagerDuty 的事件 API似乎只是 POST,有效操作仅限于触发、确认和解决:

有没有一种很好的方法来测试 HTTPS 连接而不发布实际的 Slack 消息/创建实际的 PagerDuty 警报?我在任何一项服务的文档中都找不到任何内容,也找不到在 PRTG 中创建适当传感器的创造性方法。

0 投票
1 回答
157 浏览

php - PHP中JSON多维数组的访问值

我尝试使用两者来解析以下($var)

但似乎无法通过 $array->messages->event 之类的方式访问值(通常看不到任何内容/null)。

我一直在交叉引用https://gist.githubusercontent.com/eurica/6034108/raw/10e7fbce580e515db0f0b74d49c812da4e5ce40b/PagerDutyWebhookToEmail.php上的一些示例代码。但是,它似乎已过时(v1 有效负载而不是 v2)。

我的目标是在不同级别提取不同的值来创建自定义电子邮件。文档表明“消息”下可能有多个“消息”,因此可能需要一个 foreach?

X-REF https://community.pagerduty.com/t/how-do-i-notify-a-distribution-list-or-shared-group-email-address/1519 & https://v2.developer.pagerduty .com/docs/webhooks-v2-overview

答案测试:

0 投票
1 回答
5863 浏览

monitoring - Prometheus-Alertmanager 警报的复杂规则/过滤器

情况:我设置了 Prometheus 和 Alertmanager 来监控各种设备的 CPU 温度等。Alertmanager 将警报从生产设备发送到 PagerDuty。

我正在监控的设备有不同的型号和不同的操作规格。型号 1-5 的正常 CPU 温度为 50C,而型号 6 为 70C。目前 CPU 温度警报的阈值为 60C,因此 PagerDuty 不断收到来自在正常温度下运行的 6 型设备的警报。

如果温度低于 80C,是否有办法仅从 6 型设备中过滤出 CPU 温度警报,并且在 60C 时仍会收到 1-5 型设备的 CPU 温度警报?

注意:还有许多其他指标正在被监控,但对于除 CPU 温度之外的所有指标,所有设备型号都具有完全相同的阈值。

这是我的一个片段,alertmanager.yml它向 PagerDuty 发送刺激警报

诚然,我没有太多的 YML 经验。但这是我希望做的,但我不确定正确的语法:

期望的结果:

  • 除 device_cpu_temperature 之外的所有关键产品警报都发送到 PagerDuty
  • 如果型号不是 6(uuid 包含型号后跟“X”),则仅将关键产品 device_cpu_temperature 警报发送到 PagerDuty
  • 仅当 cpu 温度高于 80C 时,来自 6 型设备的关键 prod device_cpu_temperature 警报才会发送到 PagerDuty。

或者在普罗米修斯中有两个不同的警报规则会更好吗?某些规则能否仅适用于某些设备?如果是这样,怎么做?

0 投票
5 回答
5453 浏览

amazon-web-services - 将 AWS SNS 消息发布到 Pagerduty

我已将pagerdutyAWS cloudwatch集成,我正在尝试手动将消​​息发布到由pagerdutyemail订阅的SNS 主题。但我无法在pagerduty中发生事件。但是,cloudwatch 警报正在使用同一主题触发pagerduty中的事件。

我参考了一些有关pagerduty消息有效负载的文档。但无法使其工作。我的SNS消息 JSON 如下,

它不会触发pagerduty中的事件。我不确定请求正文中缺少什么。我正在从同一邮件正文正确接收电子邮件。有人可以指出错误吗?

提前致谢。