Articles of 监控

Bosun 0.3.0 / Scollector始终报告错误的文件系统大小

我正在使用bosun来监视我的服务器。 一个奇怪的问题是,在它的默认configuration中,它报告了磁盘空间的荒谬数字。 例如在我的一台服务器上,它说根分区是440%免费的。 真正的数字是大约51%。 在检查这个我发现linux.disk.fs.space_total度量返回两倍的正确大小的磁盘… [root@my-host-name ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 8.0G 3.9G 4.2G 49% / Bosun / scollector声称: linux.disk.fs.space_total{environment=staging,host=my-host-name,role=gordo}: 16.10907G 奇怪的是,使用空间的测量仍然是正确的: linux.disk.fs.space_used{environment=staging,host=my-host-name,role=gordo}: 4.36486G 我没有给scollector任何奇怪的设置文件系统的东西。 任何人都可以给我一个指向正确的数字? 软件版本是: [root@my-host-name ~]# /opt/go/bin/scollector -version scollector version 0.3.0-dev root@bosun:/data/bosun# /opt/bosun-linux-amd64 -version bosun version 0.3.0 (9386abc03b9d074e42dbbe5eb5944ee88ca641f6) built 2015-07-13T15:17:11Z

在plugin-conf.d文件中设置警告/关键阈值

我可以在munin.conf设置警告/临界阈值(对于我写的插件),如下所示: load_per_core.load_per_core.warning 0.2 # Low value to trigger warnings load_per_core.load_per_core.critical 1 这按预期工作,我看到电子邮件通知和图表上的正确的东西。 但是我想把这些configuration项移动到一个单独的文件中,这样我就可以更轻松地在使用Puppet的服务器上pipe理它们。 但是,当我将这两行移动到一个新的文件plugin-conf.d/zz-load_per_core是这样的: [load_per_core] env.load_per_core.warning 0.3 # Low value to trigger warnings env.load_per_core.critical 1 …它不工作。 没有电子邮件,没有在图表上。 我已经猜到了从env.load_per_core开始的行的格式,所以也许这是错的?

Monit sshd二进制校验和检查并重新启动

我正在通过监视configuration文件,看起来不正确。 我使用monit来监视sshd二进制文件的校验和,如果它与预期的不同,它应该重新加载一个已知的二进制文件。 以下部分是否正确检查ssh二进制文件的校验和? monit守护进程将当前的校验和与什么进行比较? 我没有看到其他提到的校验和或外部工具来检查校验和。 check process ssh with pidfile "/var/run/sshd.pid" start program = "/sbin/service sshd start" stop program = "/sbin/service sshd stop" depends on sshd_binary check file sshd_binary with path /usr/sbin/sshd if failed checksum then alert

使HAProxy通过HTTPCHECK中的主机名

我正在尝试使用特定主机名在HAProxy中执行HTTP检查。 这里是我的后端configuration的一个片段: option httpchk HEAD / HTTP/1.1\r\nHost: example.com http-check expect rstatus (2)[0-9][0-9] 当我查看正在检查的服务器上的IIS日志时,主机名( cs-host )为空: #Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) cs-host sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken 2016-04-15 20:24:09 W3SVC3 123.123.123.123 HEAD / – 80 – 456.456.456.456 – – – 302 0 0 365 45 14 与来自浏览器的请求相比,主机名可见: […]

nrpe用户不能正确执行脚本使用lsof远程执行,netstat工程

我为nagios创build了一个简单的脚本来检查远程服务器上的端口。 本来我试图用lsof 。 #!/bin/bash RESULT=$(lsof -i :8080 | grep LISTEN) if [ -n "$RESULT" ] then echo "$RESULT" exit 0 else echo "Check application port is down" exit 2 fi 在本地机器上,nagios用户可以运行并执行脚本并获得预期的输出。 但远程使用check_nrpe ,我总是得到其他的回声 Check application port is down 即使正如我所说的在本地运行脚本,它正常工作 nrpe用户拥有执行该脚本所需的所有权限,SELinux处于宽容模式,但是我永远无法使其工作。 所以我改变了RESULT行来使用netstat 。 RESULT=$(netstat -anp | grep ":8080" | grep LISTEN) 然后我可以使用check_nrpe远程获得预期的响应。 所以我认为这是check_nrpe和lsof的问题。 但我永远无法在日志中find任何东西。 任何人有任何想法或build议,以使这与lsof正确工作?

如何certificate驱动器没有被使用?

我有一个驱动器,我正在努力取代。 我相信它不再被任何系统或用户使用,并且可以被删除。 我已经复制了所有我认为相关的东西。 有没有办法certificate驱动器不再被使用? 思路: 现在检查整个驱动器内容的散列,并在一周内进行比较? 使用lsof或其他内核级别的functionlogging对驱动器的访问? 从驱动器上的SMART使用情况获取最新的读取或写入信息? 任何其他的想法? 理想情况下,我想监视一个星期左右,只是为了确保。 如果在此期间读取或写入任何数据,我想知道这一事实。 看起来像一个简单的概念,但我一直没能find任何好的结果。 更新 – 文件系统是ext4。

抓取pipe理Web界面的数据(交换机,路由器或AP)

我有一个刀片机箱,我想能够从它的networking接口获取功率预算统计,但是这个数据我无法使用SNMP获取,我已经检查;) 但是,我应该能够抓取pipe理Web界面的这个数据,只要启动一个login,获取HTML页面grep出适当的领域。 有任何想法吗?

什么是一些好的方法来监视IO吞吐量和来自NFS共享客户端的负载?

我有一个ETL进程打开NFS挂载文件来处理它们。 要同时打开的文件数量是可configuration的。 我没有shell访问NFS服务器。 我可以在客户端上使用哪些好的shell实用程序来确定我使用NFS共享的效率? 我想最大限度地提高吞吐量(平衡我的ETL和太多的数据),显然,我不想把太多的压力放在NFS服务器上。 我可以从客户端做多less事,而不必login到NFS服务器并在那里运行IO监视实用程序?

监控一次性服务

我们没有任何适当的服务器监控解决scheme(我想在今年夏天纠正的情况),但我有一个特别的服务,我想监视。 [我们目前的监控系统,等待客户端出现问题,适用于广泛使用的系统,但这不会影响到很多人,比如说DHCP。] 我在OS X 10.3(Panther)盒子上(叹息)运行了所有合适的Type 3 Server [因为它不会自动在新的东西上自动启动,我们的软件采购人员真的不想要更新的软件]。客户端软件正在OS X 10.5(Leopard)下正常工作。 现在,我偶尔接到一个电话,说这个服务器已经closures了(而且机器本身还在上面),而且在有人拿起电话之前,我真的很想知道。 这个过程似乎被称为“atrtserv.osx”。 虽然它确实使用了networking,但是如果它的文档提到了如何发送消息来查看服务是否已经启动,那么我会感到惊讶,因此总是有一些粗糙的东西,比如每五分钟检查一下这个过程是否存在。 有没有简单的方法来监视一个服务,尤其是 在Mac上?

如何在Mac上部署服务器监控软件?

我无法使监视软件在Mac上工作。 这里有很多很棒的监控软件 ,其中大部分是跨平台的。 我不害怕编译器,并试图编译这些工具中的一部分。 他们大多依赖于RRDTool,而现在使用的是开罗,有很多GTK和Gnome依赖。 [有意思的是,你可以在这里下载所有的依赖关系。]其他的,同时也是跨平台的,不要干净地编译或者正常运行。 即使作为程序员,作为一个繁忙的系统pipe理员,也很难花时间去追踪和成功build立所有需要的依赖关系,或者试图debugging一个项目,这使得构build更新的想法变得毫无吸引力。 这是我想念Linux的地方 – 只需调用你的软件包pipe理器,你就可以得到你想要的软件。 我知道用于OS X的 pkgsrc , MacPorts , Fink和Gentoo解决了这个问题,但是他们往往是孤立的,从零开始build立一个系统(包括重buildPython和Perl,还有可能还有更多的基础Unix工具)在我看来,这对于部署由他们制作的软件是一个巨大的阻碍,特别是我也想监视客户端机器 。 所以你会怎么做? find可安装的二进制文件? 你有什么build议干净地build立和与Mac发挥好? 另外,你是否有一个build立东西的地方(例如/ usr / local,/ Library / Monitor)? 至于构build包,我正在使用JAMF Composer ,它将监视文件系统,让我调整文件将包括在.pkg或.dmg它将产生。 尽pipe如此,包装这些软件的提示仍然有价值。