nginxの接続を監視するZABBIX

#; nginxの(コンパイル時には、このオプションを追加する必要があります--with-ダウンロードhttp_stub_status_module)
の公式ウェブサイトのアドレス:HTTP:// nginx.org/en/docs/http/ngx_http_stub_status_module.html 

Ubuntuの@ルート:は/ usr / local / srcに番号をwgetの HTTP:// nginx.org/download/nginx-1.16.1.tar.gz 
Ubuntuの@ルート:は/ usr / local / srcに番号のタール XF nginx- 1.161タール.gzを
Ubuntuの@ルート:は/ usr / local nginx- /のsrcます。#cd 1.161 / 

#:nginxののコンパイルとインストール

Ubuntuの@ルートを:は/ usr / local / srcに/ nginx- 1.161#は./configure --prefix = /アプリ/ nginxの--with-http_stub_status_module 
ルートUbuntuの@:は/ usr / local / srcに/ nginx- 1.161メイク && makeが インストール

#:nginxの設定ステータスページ

Ubuntuの@ルート:は/ usr / local / srcに/ nginx- 1.161#のvimの/アプリ/ nginxの/ CONF / nginx.conf 
LOCATION = / nginx_status { 
    stub_status; 
} 

#:サービス開始
Ubuntuの@ルート:は/ usr / local / SRC / nginx- 1.161。#/アプリ/ nginxの/ sbinに/ nginxのの

nginxのを監視#の構成接続スクリプト

Ubuntuの@ルート:。の/ opt#Vimのnginx_status SH !/ binに/バッシュ

nginx_status_fun(){#関数の内容
        NGINX_PORT = $ 1つの第1のパラメータ#ポート、2番目のパラメータは、スクリプトの関数であり、二番目のパラメータであるスクリプトは、セグメントのポート番号である
        NGINX_COMMAND = $ 2 #コマンドの機能2つの第3のパラメータは、第三のパラメータであるスクリプトはコマンドで、スクリプトのパラメータである
        {#開いているが、唯一の状態nginxのネイティブから分かる数nginx_active、以下同様、GET)nginx_active(
        の/ usr / binが/カール" http://127.0.0.1の:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | grepを ' アクティブ' | awkの ' {} NFプリント$の' 
        } 
        nginx_reading(){#nginx_reading状態量取得
         / USR / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | grepの ' 読書' | awkの ' {$ 2を印刷} ' 
       } 
        )({nginx_writing
        は/ usr / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | grepの ' ライティング' | awkは ' {$ 4印刷します} '
        / usr / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | grepの ' 待機' | awkの ' {$ 6印刷} ' 
       } 
        nginx_accepts(){
        は/ usr / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | awkの NR == 3 | awkは ' {$ 1印刷します} '
        / usr / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | awkの NR == 3 | awkの ' {$ 2を印刷} ' 
       } 
        nginx_requests(){
        は/ usr / binに/カール" http://127.0.0.1:" $ NGINX_PORT " / nginx_status "  2 >は/ dev / nullを | awkの NR == 3 | awkの ' {$ 3印刷} ' 
       } 
        ケース $ NGINX_COMMAND
                アクティブ)
                        nginx_active。
                        ;; 
                読み)
                        nginx_reading。
                        ;; 
                書き込み)
                        nginx_writing。
                        ;; 
                待っている)
                        nginx_waiting。
                        ;; 
                )受け入れ
                        nginx_acceptsを。
                        ;; 
                )取り扱い
                        nginx_handled。
                        ;; 
                リクエスト)
                        nginx_requests;
                 ESAC 
} 

メイン(){#主な機能の内容
        ケース $ 1  #分岐構造、ユーザの入力操作に応答を決定するため
                nginx_status)は#は、入力nginx_status nginx_status_funを呼び出し、第2および第3のパラメータを送信します
                        $ nginx_status_fun 2 $ 3 ; 
                        ;;
                 * )#印刷ヘルプ他の入力
                         エコー $ " :$ 0} {nginx_statusキー使用法" 
        ESACの#ブランチ終末
} 

メイン$ 1 $ 2 $ 3 

#:テストスクリプト

ルート@ Ubuntuの場合:/ opt#88 bashのnginx_status.shアクティブnginx_status

#:次のエージェントプロファイルディレクトリに移動するためのスクリプト
Ubuntuの@ルート:〜#mvの/opt/nginx_status.sh /etc/zabbix/zabbix_agentd.conf.d/



#:内のカスタムMonitor Agentの構成ファイルの

ルートUbuntuの@:/etc/zabbix/zabbix_agentd.confの/ opt#のvimの
UserParameter nginx.status = [*]は、/ etc / ZABBIX / zabbix_agentd.conf.d / nginx_status.sh "$ 1" "$ 2" "$ 3"

#:サービスの再起動
ルート@ Ubuntuを使用します。/ opt#systemctl再起動ZABBIX-agent.service



テンプレートを作成します。

 

 

 

 

 

 

 

 ホストを追加した後の商品を監視する追加

 

グラフィックスを作成追加した後

 

 

 

おすすめ

転載: www.cnblogs.com/maxuebin/p/11568376.html