立即开始使用Pagerduty
尝试免费使用Pagerduty 14天 - 无需信用卡。
Pagerduty代理是您在监视系统上安装的助手程序,以将监视工具与PagerDuty集成。
该代理还包括命令行工具,以接受监视系统中的事件以及处理这些事件向Pagerduty发送的守护程序。守护程序的过程会处理对Pagerduty的缓冲,重试和节流活动。支持的事件是在Pagerduty事件API文档。
Pagerduty代理当前可用Deb
和RPM
包装格式并在Ubuntu 12.04、14.04和16.04以及CENTOS 6上支持。请升级到最新的默认版本Python,然后进行安装。
该代理不会在CentOS 5或更低的情况下运行,因为它需要比CentOS 5包含的版本更新版本的Python。请使用基于Perl的Nagios集成或年龄较大基于Python的Zabbix集成在较旧的CentOS系统上。
如果您使用PagerDuty代理建立自定义集成,则代理支持将事件发送到“通用API”服务。如果您没有设置通用API服务,则可以创建如下:
Pagerduty代理是开源的(以及其集成),可以在万博pc版下载github,但是大多数用户只想从我们的易于
或者百胜
存储库如下所述。
安装了代理后,请记住定期更新代理软件包,以确保您拥有最新的修复程序。您可以使用常规软件包更新更新代理软件包,或单独使用:如图所示:
sudo apt-get安装apt-transport-https
wget -o -https://packages.pagerduty.com/gpg-key-pagerduty |sudo apt -key add -sudo sh -c'echo“ deb https://packages.pagerduty.com/pdagent deb/> /etc/apt/sources.list.list.d/pdagent.list.list.list'
sudo apt-get更新万博pc版下载
笔记:Pagerduty剂与CentOS 5或更低的兼容,因此该装置将无法在Centos 5上成功。
sudo sh -c'cat> /etc/yum.repos.d/pdagent.repo << eof [pdagent] name = pdagent baseurl = https://packages.pagerduty.com/pdagent/pdagent/pdagent/rpm= https://packages.pagerduty.com/gpg-key-rpm-pagerduty eof'
sudo yum安装pdagent pdagent融合万博pc版下载
sudo yum更新pdagent pdagent融合万博pc版下载
pdagent.Service
文件来自/var/lib/pdagent/scripts/pdagent.service
至/etc/systemd/system/pdagent.service
。重新加载Systemctl守护程序以刷新Systemctl
服务SystemCtl守护程序重电。
安装代理后,请运行以下命令以启动代理:systemctl启动pdagent.service
。您可以使用Systemctl
(对于基于系统D的系统,例如Ubuntu 16.04)或服务
(对于基于SYSV的Init系统,例如Ubuntu 14.04)命令启动,停止和检查代理的状态。
Systemd示例:
sudo systemctl状态pdagent
SYSV初始示例:
sudo服务状态
如果守护程序未运行并且不会启动,请检查/var/log/pdagent/pdagentd.log
错误。
要将事件发送到Pagerduty,您可以使用pd-send
命令。此命令在本地磁盘上招募事件。代理守护程序将实际将事件实际发送到Pagerduty Integration API。如果是pdagentd
服务停止,直到再次开始服务之前,将不会将事件发送到Pagerduty。
使用-H
或者- 帮助
选项将返回使用信息:
$ pd-send - -help用法:pd-send [-h] -k service_key -t {触发,确认,reclove,resolve} [-d description} [-i Invest_Key] [-f字段]排队触发器,确认或确认或将事件解析为Pagerduty。...
这service_key
上面是集成密钥这显示在Pagerduty网站的服务页面上。
这是一个示例命令,如果您的服务的集成密钥是65D9CD0E14C04DAE8EF86867277D138C
:
$ export pd_service_key = 65d9cd0e14c04dae8ef86867277d138c $ pd -send -k $ pd_service_key -t触发-d trigger -d“ server in fire” fire' -i server.i server.fire.fire evented evented evented evented evented evented。事件密钥:server.fire
这是一个示例命令,它触发具有多个字段(键/值对)的Pagerduty中的事件。注意-F
在每对之前使用:
$ export pd_service_key = 65d9cd0e14c04dae8ef86867277d138c $ pd -send -k $ pd_service_key-t触发-d trigger -d“ server in fire'S in Fire” -i server.i server.fire.fire -f msg1 = test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -f test1 -ft
如果复制此示例,请记住将正确的集成API密钥替换为PagerDuty服务!
笔记:运行PD-Send和其他PD-*集成脚本的用户最好具有一个符号,该符号允许使用用户创建的文件(即022)。如果umask更具限制性,则pd-*脚本在内部更改umask(仅适用于本身),因此可以使用正确的权限创建Enqueue-Event文件。
要检查传出警报的队列,您可以使用pd-quesue
命令。该命令可用于快速了解队列状态,并重试集成密钥。请注意,该命令需要作为根而运行,以便访问该命令Pdagent
用户(即SudoPD标准状态
)。
以下是命令的示例用途和输出:
$ pd-quesue -h用法:pd-queue [-h] {状态,重试} ...访问pagerduty代理的本地队列。可选参数:-h, - help显示此帮助消息和退出子命令:{状态,重试}重试设置“死” pagerduty事件进行重试。状态打印出本地事件队列的状态。
显示当前代理队列中的待处理,成功和误差事件,作为由服务密钥键起的表。
$ pd-quesue状态-H用法:pd-queue状态[-h] [-k service_key]打印本地事件队列的状态。可选参数:-h, - help显示此帮助消息和退出-K service_key, - service -key service_key print evish service api键$ pd quesue状态$ pd -quesue状态服务键悬在错误中=======================================================================================键1 0 0 0 key2 1 0 1 $ pd -quesue状态-K键2服务键悬在错误中=======================================================================================1
将错误状态中的事件移至挂起状态EN质量,以获取指定的集成密钥。希望该用户首先纠正了任何引起错误的用户引起的问题,因此再次尝试事件不会导致错误。例如,如果事件太长,则用户已经编辑了该事件以减少其长度。如果事件再次导致错误,则将再次移至错误状态。
$ pd-queue retry -h用法:pd-queue retry [-h] [-k service_key] [-a]为重试设置“死” pagerduty事件。可选参数:-h, - help显示此帮助消息和退出-K service_key, - service -key service_key重试API键(不与-a一起使用-a)-a,-a, - all -keys retry所有Service API键中的事件(不与-K一起使用)$ PD -QUEUE RETRY -K KEY2 1事件为重试设置。$ pd -queue重试-A 0事件(S)设置进行重试。
Pagerduty代理包括脚本,以帮助您与一些常见的监视工具集成。请参阅适当的指南以获取更多详细信息:
如果您的环境需要为出站HTTP/HTTPS连接设置代理,则可以通过编辑指定代理配置sudo nano/lib/systemd/system/pdagent.service
(在基于系统D的系统上)或/etc/init.d/pdagent
(在基于SYSV Init的系统上)作为root用户。
sudo nano/lib/systemd/system/pdagent.service
只需添加两行,在此之后替换您的代理信息,以替换URLexecstartpre =/bin/chown -r pdagent:pdagent/var/run/pdagent
线大约是第8行。完成后看起来应该像以下内容。
execstartpre =/bin/chown -r pdagent:pdagent/var/run/pdagent环境=“ http_proxy = http://proxy:3128/“ emoverition =” https_proxy = https_proxy = http:// proxy:// proxy:3128/
笔记:确保使用命令重新启动Pagerduty代理SystemCtl重新启动pdagent
。
sudo nano /etc/init.d/pdagent
只需添加两行,在此之后替换您的代理信息,以替换URLpid_file = $ pid_dir/pdagentd.pid
线大约是第48行。完成后看起来应该像以下内容。
pid_file = $ pid_dir/pdagentd.pid export http_proxy = http://proxy:3128/export https_proxy = http:// proxy:3128/
笔记:确保使用命令重新启动Pagerduty代理服务pdagent重新启动
。
如果您在将事件发送到Pagerduty时很难,请查看我们的Pagerduty代理故障排除指导。
尝试免费使用Pagerduty 14天 - 无需信用卡。