Cacti擷取伺服器TCP並發串連數(cacti windows版)

來源:互聯網
上載者:User

標籤:tcp-connections(cacti windows版)


因為官方並沒有提供的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

本文出自 “jedy 網路技術&linux學習” 部落格,請務必保留此出處http://jedy82.blog.51cto.com/425872/1599359

Cacti擷取伺服器TCP並發串連數(cacti windows版)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.