用于Nagios中监控服务器连接数脚本

最近因为服务器不断有增加新的业务,需要对服务器的最大连接数进行调整评估,所以就利用Nagios去监控相应的连接数,脚本也是利用Nagios发送相应的转态来实现监控,实现也很简单

#/bin/bash
#Used to monitor the number of socket connections in Nagios
#writer jim
#histor
#2017.6.15
STATE_OK=0
STATE_WARNING=1
STATE_CRITICALLL=2
STATE_UNKNOWN=3

declare -i socket_num=$(ss -an|wc -l)
declare -i max_num=65535

if [ $socket_num -le $max_num ] ; then
        echo "The number of socket connections is $socket_num.OK"
        exit $STATE_OK
else
        echo "error!!!The number of socket connections is too much.the number is $socket_num"
        exit $STATE_CRITICALL
fi
时间: 2024-08-14 21:29:23

用于Nagios中监控服务器连接数脚本的相关文章

用于Nagios中监控服务器进程的最大线程数

最近在刚好一些业务经常把线程跑满,导致服务器资源用完,所以就写了一个脚本用于Nagios下相关进程的最大线程数的监控,Unix的服务器上最大的线程数默认的是1024,当然在业务繁忙的服务器中这样肯定是不够用的,当然在实际生产环境中做初始化调优时一般都会有做过修改,如开启打开文件的最大句柄数等等,一般情况下我们都是修改/etc/security/limits.conf文件,但是要修改最大线程树就要修改/etc/security/limits.d/90-nproc.conf文件了,修改就和修改lim

用于Nagios中监控elasticsearch健康状态脚本

在Nagios社区中上找了下相关用于监控elasticsearch索引的脚本,再经过修改下,可以在平时用于传入elasticsearch的监听ip用于在Nagios中使用监控elasticsearch健康状态的脚本 #!/bin/bash #check_elasticsearch_health.sh #Memo for Nagios outputs STATE_OK=0 STATE_WARNING=1 STATE_CRITICAL=2 STATE_UNKNOWN=3 #Position para

Nagios中官方iptables监控脚本调整

在Nagios的官方网站上有提供一个用于监控iptables的状态的脚本,但是官方提供的脚本直接是不能使用的需要修改才能使用,在这里就大致所以下,因为Nagios的中命令机制是使用Nagios用户运行的,所以在官网上提供的脚本没有做出调整前是无法正常使用的,官网提供的iptables监控脚本很简单,是使用iptables的指令统计出INPUT上实时的条数的有多少,如果条数-1小于0就告警.但是在普通用户是无法正常使用iptables的命令,如果没有做出调整在Nagios中会出现NRPE:Unab

使用Nagios搭建监控服务器

第二十四章 使用Nagios搭建监控服务器 [关于Nagios] Nagios是一款用于监控系统和网络的开源应用软件,它的模式是服务器-客户端,也就是说首先要在在一台服务器上(server)部署相应的主要套件,然后在要监控的服务器上部署客户端程序,这样server会和client通信,从而监控client端的各项资源.Nagios功能十分强大几乎所有的项目都可以监控,大到服务器的存活状态,小到服务器上的某一个服务(web).这些功能都是通过自定义插件(或者叫做脚本)来实现. 当Nagios监控到

一个用python简单的封装了aria2的jsonrpc中adduri的脚本

aria2是一个十分牛逼的下载神器,有时候项目需要一个很牛逼的下载中间件的话,aria2是一个不错的选择.其中支持jsonrpc和websocket的特性尤其诱人.但是python用起来还是有点不爽,所以简单封装一下aria2的jsonrpc. 所以,用python简单的封装了aria2的jsonrpc中adduri的脚本. 使用起来非常简单,仅需要三行代码. from pyaria2 import Jsonrpc jsonrpc = Jsonrpc('localhost', 6800) res

【JSP】JSP中的Java脚本

前言 现代Web开发中,在JSP中嵌入Java脚本不是推荐的做法,因为这样 不利于代码的维护.有很多好的,替代的方法避免在JSP中写Java脚本.本文仅做为JSP体系技术的一个了解. 类成员定义 1.将定义的代码放在<%! %>之间即可. 定义的成员将被转换为servlet类的成员. 2.可以定义任何成员方法和成员字段,static 成员 或者 实例成员都可以. 3.注意JSP/Servlet是工作在多线程环境下的,定义的成员变量要注意线程安全问题.一般建议使用_jspService方法中 的

Nagios中NSClient++监控Windows主机

Nagios中自身是不提供相应的监控,它实现监控是依赖于SNMP协议或者是相关的插件来完成相应的监控的,而平时为了部署快速方便,在Linux主机上一般多用NRPE扩展,而在Windows的主机上使用比较多的是NSClient++扩展,两者的区别是NRPE还是通过插件完成监控,而NSClient++没有插件,是由Nagios监控主机发送监控请求给NSClient++来完成监控任务的,使用NSClient++可以满足日常的Windows主机监控,但是缺点是不够灵活.这个具体可以参看:http://j

linux c程序中获取shell脚本输出的实现方法

linux c程序中获取shell脚本输出的实现方法 1. 前言Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作.比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 system函数来调用shell命令.但是,system函数仅返回命令是否执行成功,而我们可能需要获得shell命令在控制台上输出的结果.例如,执行外部

inux C程序中获取shell脚本输出(如获取system命令输出)

转载自 http://blog.csdn.net/hjxhjh/article/details/7909518 1. 前言 Unix 界有一句名言:"一行shell脚本胜过万行C程序",虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作.比如实现一个 ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 system函数来调用shell命令.但是,system函数仅返回命令是否执行