如果你已经阅读了前面的如何监控 nginx,你应该知道从你网络环境的几个指标中可以获取多少信息。而且你也看到了从 nginx 特定的基础中收集指标是多么容易的。但要实现全面,持续的监控 nginx,你需要一个强大的监控系统来存储并将指标可视化,当异常发生时能提醒你。在这篇文章中,我们将向你展示如何使用
datadog 安装 nginx 监控,以便你可以在定制的仪表盘中查看这些指标:
nginx dashboard
datadog 允许你以单个主机、服务、流程和度量来构建图形和警告,或者使用它们的几乎任何组合构建。例如,你可以监控你的所有主机,或者某个特定可用区域的所有nginx主机,或者您可以监视具有特定标签的所有主机的一个关键指标。本文将告诉您如何:
在 datadog 仪表盘上监控 nginx 指标,就像监控其他系统一样
当一个关键指标急剧变化时设置自动警报来通知你
配置 nginx为了收集 nginx 指标,首先需要确保 nginx 已启用 status 模块和一个 报告 status 指标的 url。一步步的配置开源 nginx 和 nginx plus 请参见之前的相关文章。
整合 datadog 和 nginx安装 datadog 代理datadog 代理是一个开源软件,它能收集和报告你主机的指标,这样就可以使用 datadog 查看和监控他们。安装这个代理通常仅需要一个命令
只要你的代理启动并运行着,你会看到你主机的指标报告在你 datadog 账号下。
datadog infrastructure list
配置 agent接下来,你需要为代理创建一个简单的 nginx 配置文件。在你系统中代理的配置目录应该在这儿找到。
在目录里面的 conf.d/nginx.yaml.example 中,你会发现一个简单的配置文件,你可以编辑并提供 status url 和可选的标签为每个nginx 实例:
init_config:
instances:
- nginx_status_url: http://localhost/nginx_status/
tags:
- instance:foo
当你提供了 status url 和任意 tag,将配置文件保存为 conf.d/nginx.yaml。
重启代理你必须重新启动代理程序来加载新的配置文件。重新启动命令在这里,根据平台的不同而不同。
检查配置文件要检查 datadog 和 nginx 是否正确整合,运行 datadog 的 info 命令。每个平台使用的命令看这儿。
如果配置是正确的,你会看到这样的输出:
checks
======
[...]
nginx
-----
- instance #0 [ok]
-collected8 metrics &0 events
安装整合最后,在你的 datadog 帐户打开“nginx 整合”。这非常简单,你只要在 nginx 整合设置中点击“install integration”按钮。
install integration
指标!一旦代理开始报告 nginx 指标,你会看到一个 nginx 仪表盘出现在在你 datadog 可用仪表盘的列表中。
基本的 nginx 仪表盘显示有用的图表,囊括了几个我们的 nginx 监控介绍中的关键指标。 (一些指标,特别是请求处理时间要求进行日志分析,datadog 不支持。)
你可以通过增加 nginx 之外的重要指标的图表来轻松创建一个全面的仪表盘,以监控你的整个网站设施。例如,你可能想监视你 nginx 的主机级的指标,如系统负载。要构建一个自定义的仪表盘,只需点击靠近仪表盘的右上角的选项并选择“clone dash”来克隆一个默认的 nginx 仪表盘。
clone dash
你也可以使用 datadog 的主机地图在更高层面监控你的 nginx 实例,举个例子,用颜色标示你所有的 nginx 主机的 cpu 使用率来辨别潜在热点。
nginx 指标警告一旦 datadog 捕获并可视化你的指标,你可能会希望建立一些监控自动地密切关注你的指标,并当有问题提醒你。下面将介绍一个典型的例子:一个提醒你 nginx 吞吐量突然下降时的指标监控器。
监控 nginx 吞吐量datadog 指标警报可以是“基于吞吐量的”(当指标超过设定值会警报)或“基于变化幅度的”(当指标的变化超过一定范围会警报)。在这个例子里,我们会采取后一种方式,当每秒传入的请求急剧下降时会提醒我们。下降往往意味着有问题。
创建一个新的指标监控。从 datadog 的“monitors”下拉列表中选择“new monitor”。选择“metric”作为监视器类型。
nginx metric monitor
定义你的指标监视器。我们想知道 nginx 每秒总的请求量下降的数量,所以我们在基础设施中定义我们感兴趣的 nginx.net.requestpers 之和。
nginx metric
设置指标警报条件。我们想要在变化时警报,而不是一个固定的值,所以我们选择“change alert”。我们设置监控为无论何时请求量下降了30%以上时警报。在这里,我们使用一个一分钟的数据窗口来表示 “now” 指标的值,对横跨该间隔内的平均变化和之前 10 分钟的指标值作比较。
nginx metric change alert
自定义通知。如果 nginx 的请求量下降,我们想要通知我们的团队。在这个例子中,我们将给 ops 团队的聊天室发送通知,并给值班工程师发送短信。在“say what’s happening”中,我们会为监控器命名,并添加一个伴随该通知的短消息,建议首先开始调查的内容。我们会 @ ops 团队使用的 slack,并 @pagerduty 将警告发给短信。
nginx metric notification
保存集成监控。点击页面底部的“save”按钮。你现在在监控一个关键的 nginx 工作指标,而当它快速下跌时会给值班工程师发短信。
结论在这篇文章中,我们谈到了通过整合 nginx 与 datadog 来可视化你的关键指标,并当你的网络基础架构有问题时会通知你的团队。
如果你一直使用你自己的 datadog 账号,你现在应该可以极大的提升你的 web 环境的可视化,也有能力对你的环境、你所使用的模式、和对你的组织最有价值的指标创建自动监控。
以上就介绍了如何使用 datadog 监控 nginx,包括了方面的内容,希望对php教程有兴趣的朋友有所帮助。
以上就是如何使用 datadog 监控 nginx的内容。