Áú»¢¶Ä²©

#5 ±Ê²¹°ù¨¢³¾±ð³Ù°ù´Çs de usuario

¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô general

A veces es posible que desee ejecutar una verificaci¨®n que no viene predefinida con el agente Áú»¢¶Ä²©. Aqu¨ª es donde los par¨¢metros de usuario resultan de ayuda.

Puede escribir un comando que recupere los datos que necesita e incluirlos en el par¨¢metro de usuario en el archivo de configuraci¨®n del agente ('UserParameter' par¨¢metro de configuraci¨®n).

Un par¨¢metro de usuario tiene la siguiente sintaxis:

UserParameter=<clave>,<comando>

Como puede ver, un par¨¢metro de usuario tambi¨¦n contiene una clave. La clave ser¨¢ necesaria al configurar una m¨¦trica. Introduzca una clave de su elecci¨®n que sea f¨¢cil de consultar (debe ser ¨²nica dentro de un equipo).

Reinicie el agente o utilice la opci¨®n de control en tiempo de ejecuci¨®n del agente para considerar el nuevo par¨¢metro, por ejemplo:

zabbix_agentd -R userparameter_reload

Luego, al configurar una m¨¦trica, ingrese la clave para hacer referencia al comando del par¨¢metro de usuario que desea ejecutar.

Los par¨¢metros de usuario son comandos ejecutados por el agente Áú»¢¶Ä²©. Tenga en cuenta que se pueden devolver hasta 16 MB de datos antes de los pasos de preprocesamiento del valor de la m¨¦trica.

/bin/sh se utiliza como int¨¦rprete de l¨ªnea de comandos en sistemas operativos UNIX. Los par¨¢metros del usuario obedecen al tiempo de espera de verificaci¨®n del agente; si se alcanza el tiempo de espera, el proceso ejecutado por los par¨¢metros de usuario finaliza.

Ver tambi¨¦n:

Ejemplos de par¨¢metros de usuario simples

Un comando simple:

Par¨¢metro de usuario = ping, eco 1

El agente siempre devolver¨¢ '1' para un art¨ªculo con la tecla 'ping'.

Un ejemplo m¨¢s complejo:

UserParameter=mysql.ping, mysqladmin -uroot ping | grep -c vivo

El agente devolver¨¢ '1', si el servidor MySQL est¨¢ activo, '0', de lo contrario.

±Ê²¹°ù¨¢³¾±ð³Ù°ù´Çs de usuario flexibles

Los par¨¢metros de usuario flexibles aceptan par¨¢metros con la tecla. De esta manera un El par¨¢metro de usuario flexible puede ser la base para crear varios art¨ªculos.

Los par¨¢metros de usuario flexibles tienen la siguiente sintaxis:

UserParameter=clave[*],comando
±Ê²¹°ù¨¢³¾±ð³Ù°ù´Ç ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô
Clave Clave de elemento ¨²nico. El [*] define que esta tecla acepta par¨¢metros entre corchetes.
Los par¨¢metros se proporcionan al configurar el elemento.
Comando Comando a ejecutar para evaluar el valor de la clave.
Solo para par¨¢metros de usuario flexibles:
Puede usar referencias posicionales $1¡­$9 en el comando para referirse al par¨¢metro respectivo en la clave del elemento.
Áú»¢¶Ä²© analiza los par¨¢metros encerrados en [ ] de la clave del elemento y sustituye $1,...,$9 en el comando en consecuencia.
$0 ser¨¢ sustituido por el comando original (antes de la expansi¨®n de $0,...,$9) que se ejecutar¨¢.
Las referencias posicionales se interpretan independientemente de si est¨¢n encerradas entre comillas dobles (") o simples (').
Para usar referencias posicionales sin modificar, especifique un valor doble signo de d¨®lar - por ejemplo, awk '{print $$2}'. En este caso, '$$2' en realidad se convertir¨¢ en '$2' al ejecutar el comando.

Se buscan referencias posicionales con el signo $ para y reemplazado por el agente Áú»¢¶Ä²© solo para par¨¢metros de usuario flexibles. Para par¨¢metros de usuario simples, dicho procesamiento de referencia se omite y, por lo tanto, no es necesario citar ning¨²n signo $.

Ciertos s¨ªmbolos no est¨¢n permitidos en los par¨¢metros de usuario por defecto. Ver ±Ê²¹°ù¨¢³¾±ð³Ù°ù´Çs de usuario no seguros documentaci¨®n para una lista completa.

Ejemplo 1

Algo muy simple:

Par¨¢metro de usuario = ping [*], eco $ 1

Podemos definir una cantidad ilimitada de elementos para monitorear, todos con formato hacer ping[algo].

  • ping[0] - siempre devolver¨¢ '0'
  • ping[aaa] - siempre devolver¨¢ 'aaa'
Ejemplo 2

?Agreguemos m¨¢s sentido!

UserParameter=mysql.ping[*],mysqladmin -u$1 -p$2 ping | grep -c vivo

Este par¨¢metro se puede usar para monitorear la disponibilidad de MySQL base de datos. Podemos pasar nombre de usuario y contrase?a:

mysql.ping[zabbix,nuestra_contrase?a]
Ejemplo 3

?Cu¨¢ntas l¨ªneas coinciden con una expresi¨®n regular en un archivo?

Par¨¢metro de usuario = wc [*], grep -c "$ 2" $ 1

Este par¨¢metro se puede utilizar para calcular el n¨²mero de l¨ªneas en un archivo.

wc°Ú/±ð³Ù³¦/³¦´Ç²Ô³Ù°ù²¹²õ±ð?²¹,°ù²¹¨ª³ú±Õ
       wc[/etc/servicios,zabbix]

Resultado del comando

El valor de retorno del comando es una salida est¨¢ndar junto con un error est¨¢ndar producido por el comando.

Una m¨¦trica que devuelve texto (car¨¢cter, registro o tipo de informaci¨®n de texto) no dejar¨¢ de ser compatible en caso de que se produzca un error est¨¢ndar.

El valor de retorno est¨¢ limitado a 16 MB (incluidos los espacios en blanco finales truncados); Tambi¨¦n se aplican l¨ªmites de la base de datos.

Los par¨¢metros de usuario que devuelven texto (car¨¢cter, registro o tipo de informaci¨®n de texto) tambi¨¦n pueden devolver un espacio en blanco. En caso de un resultado no v¨¢lido, la m¨¦trica dejar¨¢ de ser compatible.