zabbix實戰監控WEB網站性能


一直在糾結用什么實例來給大家演示呢?想來想去還是官方的好,那我們怎么用zabbix監控web性能和可用性呢?我們這邊分為幾個步驟:打開網站、登陸、登陸驗證、退出,一共4個小step,看實例。

檢測流程

1. 打開網站:如果http code為200,並且響應的html中包含Zabbix SIA表示打開成功(zabbix頁面有這個標示)

2. 登陸后台:post用戶名和密碼到index.php,如果響應200,那表示post成功。並且通過正則表達式從響應的html中匹配sid,這個sid也就是一個宏變量,退出可以使用到

3. 驗證登陸:打開首頁,檢索html中是否包含Profile(只有登陸成功,才會有Profile出現)

4.退出賬號:傳遞參數sid給index.php即可退出,響應200即表示退出成功。

我們可以使用上節講到的item key來獲取每個step的速度以及響應時間或者說最新的一個錯誤消息,大家自己去研究吧,不難

創建WEB場景

configuration->Host->你的主機->web->右上角Create scenario

nagios

Create scenario - 01

Name:監控項的名稱

Application:放到哪個應用中,《什么是Application

Authentication:是否有http的基本認證,大部分情況下是None,難不成用戶進來還需要經過一次認證?

Update interval:更新周期,默認60秒,多久跑一次

Retries:重試次數

Agetn:模擬瀏覽器

HTTP proxy:代理,如果你的站點有多台服務器,那么請寫上你目標服務器ip和端口,例如http://10.9.0.2:80,默認端口可不是80,別忘記80了

Variables:宏變量,后面會用到。想了解請點《zabbix用戶宏macro

web監控階段1:打開首頁

nagios

Create scenario - 02

對step做一個說明:

name:當前step名稱,item key中可以用到

url:需要檢測的網址

POST:你需要post提交上去的內容,例如user=123&password=123456,,或者使用宏變量user={user}&password={password},如果支持GET,那么可以直接寫到URL里面

variables:變量,這邊定義宏變量后續的step可以使用

Timeout:超時時間,默認15秒

Required string:響應的內容中必須包含的字符串,否則失敗

Required status codes:響應代碼必須包含在里面,多個響應代碼用逗號分隔,例如200,301,302

 

web監控階段2:登陸

 

nagios

Create scenario - 03

post賬號和密碼上去,關於post在前面已經提過了。

WEB監控階段3:驗證登陸

nagios

Create scenario - 04

WEB監控階段4:退出賬號

nagios

Create scenario - 05

 

WEB網站檢測配置完成

記得保存賬號

nagios

Create scenario - 06

 

查看結果

monitorning->web->篩選出你的主機->查看“WEB性能監控_FOR_TTLSA”,結果如下圖

各個階段的響應時間、速度、返回狀態碼以及總的響應時間

nagios

Create scenario - 07

下圖是下載速度的圖表,包含各個階段

nagios

Create scenario - 08

下圖是響應時間的圖表

nagios

Create scenario - 09

以上是沒問題的信息,那么出現故障是什么樣子呢?我把密碼改掉,演示給大家看看下圖,在LOGIN IN這個step就出錯了,拿不到SID

nagios

Create scenario - 10

那么Required String不匹配又是什么樣子呢?我們把階段3Login CHECK的required string的Profile改成Profile1試試。看看結果

nagios

web scenario - 11

 

好了,web監控的實例就完成了。

來源:http://www.ttlsa.com/zabbix/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM