设为首页 收藏本站
查看: 1719|回复: 0

[经验分享] Cacti获取服务器TCP并发连接数(cacti windows版)

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-1-6 08:31:59 | 显示全部楼层 |阅读模式

因为官方并没有提供的windows 版本cacti监控tcp连接数的脚本,所以这里是借用linux版本cacti监控tcp连接数的bash脚本来写bat批处理文件。


1、首先从http://forums.cacti.net/download/file.php?id=5198下载官方提供的基于inux版本cacti监控tcp连接数的bash脚本和监控模版tcp-connections.zip

2、 解压tcp-connections.zip解压出来,三个文件,一个cacti_graph_template_tcp_connections.xml文件,一个get_tcp_connections 的bash文件,还一张给你YY的图片

此处我们要对cacti_graph_template_tcp_connections.xml文件中的脚本程序的路径和参照get_tcp_connections文件的内容写get_tcp_connections.bat程序

3、修改cacti_graph_template_tcp_connections.xml文件中的脚本程序的路径。如下:
修改cacti_graph_template_tcp_connections.xml文件
用记事本打开xml文件,ctrl + F 查找字符串“input_string”,你会看到一行类似<input_string>/bin/bash /var/www/htdocs/cacti/scripts/get_tcp_connections <host> <community></input_string>
的代码,大约在438行,顾名思义,这个就是执行提供的脚本位置了,比如我的是 C:\Apache24\htdocs\cacti\scripts\get_tcp_connections.bat
根据实际情况修改一下。
因为我们的脚本是windows下的bat脚本 所以前面的/bin/bash 也要删除。最终如下:

原来的内容<input_string>/bin/bash /var/www/htdocs/cacti/scripts/get_tcp_connections &lt;host&gt; &lt;community&gt;</input_string>
修改后的内容<input_string>C:\Apache24\htdocs\cacti\scripts\get_tcp_connections.bat &lt;host&gt; &lt;community&gt;</input_string>

4、导入cacti_graph_template_tcp_connections.xml绘图模版:
登陆cacti监控平台Console(控制台) ---> Import Templates(导入模板)

5、新建C:\Apache24\htdocs\cacti\scripts\get_tcp_connections.bat内容如下:
注意查找的字符,和linux下的脚本查找的有点区别
:: get number of tcp connection
:: $1 = hostname
:: $2 = snmp community
:: lots of ways to do this with more style... ;)
@ECHO off
SET CACTIDIR=C:\Apache24\htdocs\cacti\scripts
SET TMPDIR=C:\Apache24\htdocs\cacti\temp

C:\net-snmp\bin\snmpnetstat.exe -v 2c -c %2 -Can -Cp tcp %1 > %TMPDIR%\%1

type %TMPDIR%\%1 | find /c "ESTABLISHED" > %TMPDIR%\ESTABLISHED
type %TMPDIR%\%1 | find /c "LISTEN" > %TMPDIR%\LISTENING
type %TMPDIR%\%1 | find /c "TIMEWAIT" > %TMPDIR%\TIME_WAIT
type %TMPDIR%\%1 | find /c "TIMECLOSE" > %TMPDIR%\TIME_CLOSE
type %TMPDIR%\%1 | find /c "SYNSENT" > %TMPDIR%\SYNSENT
type %TMPDIR%\%1 | find /c "FINWAIT1" > %TMPDIR%\FIN1
type %TMPDIR%\%1 | find /c "FINWAIT2" > %TMPDIR%\FIN2
type %TMPDIR%\%1 | find /c "SYNRECV" > %TMPDIR%\SYNRECV

SET /p ESTABLISHED= <%TMPDIR%\ESTABLISHED
SET /p LISTENING= <%TMPDIR%\LISTENING
SET /p TIME_WAIT= <%TMPDIR%\TIME_WAIT
SET /p TIME_CLOSE= <%TMPDIR%\TIME_CLOSE
SET /p SYNSENT= <%TMPDIR%\SYNSENT
SET /p FIN1= <%TMPDIR%\FIN1
SET /p FIN2= <%TMPDIR%\FIN2
SET /p SYNRECV= <%TMPDIR%\SYNRECV

ECHO  established:%ESTABLISHED% listen:%LISTENING% time_wait:%TIME_WAIT% time_close:%TIME_CLOSE% syn_sent:%SYNSENT% fin_wait1:%FIN1% fin_wait2:%FIN2% syn_recv:%SYNRECV%
del /Q %TMPDIR%\*

6、测试snmp服务是否正常
使用windows命令行。
C:\Users\Administrator>C:\Apache24\htdocs\cacti\scripts\get_tcp_connections.bat 127.0.0.1 public
#正常情况下会返回tcp状态的相关数据

7、现在我们就可以像添加其他监控对象方法在console->device->主机->Associated Graph Templates进行添加->创建图像了。
8、保存,5分钟之后就可以看到图了。
9、注意,bat脚本不支持含有“=”的snmp community


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-40271-1-1.html 上篇帖子: cacti出图,却没有数据,求哪位大师指教 下篇帖子: cacti-0.8.8c 下安装realtime插件 windows 服务器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表