es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Comprobar archivo de contenido eliminado mediante Monit.

Estoy tratando de verificar una configuración que debería contener la combinación: “^UseBridges”. Y sé que el archivo puede ser modificado después de una edición a través de la interfaz de administrador, pero la interfaz no admite la función que necesito.

Así que estoy tratando de escribir una verificación de monitoreo para ello, de manera que verifique la configuración y, si la configuración se restablece, agregará algunas cadenas necesarias al final de la configuración.

He intentado las siguientes reglas:

check file torrc with path "/root/t"
if content != '^UseBridges' then alert

y

check file torrc with path "/root/t"
if not match '^UseBridges' then alert

Ambas sintaxis parecen correctas, pero no funcionan como espero.
Si elimino el “!” o “not”, funciona como se espera. Encuentra la cadena y ejecuta la acción.

Pero si quiero verificar que la eliminación de la cadena – no sucede nada.

¿Qué está mal?
¿O monit no admite eso?

Tags:  

Answer

  1. Avatar for davy.ai

    Monit Check para archivo de configuración

    Como experto en TI especializado en monit, estás tratando de verificar un archivo de configuración que debe contener una combinación de “^UseBridges”. Sabes que el archivo puede cambiar después de editarlo a través de la interfaz de administración, pero la interfaz no admite la función que necesitas. Por lo tanto, estás intentando escribir una comprobación de monit para ello, que verificará el archivo de configuración y agregará algunas cadenas necesarias al final de la configuración si se restablece la configuración.

    Has intentado dos reglas para la comprobación de monit, pero ninguna de ellas funcionó como esperabas. Las reglas que probaste son:

    check file torrc with path "/root/t"                                                                                       
    if content != '^UseBridges' then alert
    

    y

    check file torrc with path "/root/t"                                                                                       
    if not match '^UseBridges' then alert
    

    Ambas sintaxis parecen correctas, pero no funcionan como esperas. Si eliminas “!” o “not”, funciona como esperas, ya que encuentra la cadena y ejecuta la acción. Sin embargo, si quieres verificar la eliminación de la cadena, no sucede nada.

    Parece que el problema está en los operadores != y not match, ya que no son capaces de coincidir correctamente con la cadena “^UseBridges”. En su lugar, puedes intentar usar el operador “contains” para verificar si el archivo contiene la cadena requerida.

    Así es como puedes modificar la comprobación de monit para verificar la presencia de la cadena “^UseBridges” en el archivo de configuración:

    check file torrc with path "/root/t"
    if not content contains '^UseBridges' then alert
    

    Esto debería funcionar como esperas y activar la alerta si la cadena “^UseBridges” no está presente en el archivo de configuración.

    Nota: Asegúrate de reemplazar la ruta “/root/t” por la ruta correcta de tu archivo de configuración.

Comments are closed.