zabbixカスタムユーザーkey


監視側がzabbixに予め定義されていない検出項目を実行する必要がある場合があり、zabbixのユーザカスタムパラメータ機能はこの方法を提供する.クライアントプロファイルzabbix_angentd.conf内にUserParameterを配置するか/etc/zabbix/zabbix_agentd.d/ディレクトリの下でプロファイルを編集します.構文は同じです.
UserParameter=key,command

ユーザーのカスタムパラメータにはkeyとコマンドが含まれています.keyはシステム全体が一意でなければなりません.構成が終わったら、クライアントを再起動します.
次にitemを構成し、keyの位置にカスタムkeyを記入すればいいです.
ユーザカスタムパラメータで指定されたスクリプトはzabbix agentで実行され、最大512 KBのデータを返すことができます.
単純点のコマンド例:UserParameter=ping,echo 1 pingというkeyを呼び出すと戻り値1が受け取る.より複雑なコマンドの例:UserParameter=mysql.ping,mysqladmin-uroot ping|grep-c alive 1を返すとMySQL実行中、0を返すとMySQLが保留中
次のように、柔軟なユーザーのパラメータをカスタマイズします.
UserParameter=key[*],command

key唯一[*]は、複数のパラメータを渡すことができることを示します.
commandはスクリプトを実行する必要があります.keyの[]のパラメータは$1から$9に対応し、合計9つのパラメータです.$0はスクリプトコマンド
注意:
  • コマンドラインに$2という変数が表示される必要がある場合は、awk'{print$$2}などの2つの$2を使用します.前にこの問題に遭遇し、自分のスクリプト出力が正常であることをテストし続けましたが、zabbixはデータを手に入れることができませんでした.パラメータとの衝突を防ぐためにzabbixがこの規定をしました.
  • zabbixは、次のような不安全なパラメータの使用を禁止しています.[ ] { } ~ $ ! & ; ( ) < > | # @
  • zabbix 2.0から始まり、zabbixが返すテキストデータは、スペース
  • であってもよい
    例1:
    UserParameter=ping[*],echo$1 ping[0]-0 ping[aaa]を返します-aaa'を返します
    例2:
    UserParameter=mysql.ping[*],mysqladmin-u$1-p$2 ping|grep-c aliveは、MYSQLをモニタし、ユーザー名とパスワードを渡すためのパラメータです.mysql.ping[zabbix,our_password]
    例3:
    1つのファイルのどの行が一致しているかを統計します.UserParameter=wc[*]、grep-c'$2'$1は、ファイルに指定した文字が表示される行数wc[/etc/passwd,root]wc[/etc/services,zabbixを返します.