Welcome to Pandora FMS Community › Forums › Soporte de la comunidad › Uso de alerta con ON CHANGE
-
Uso de alerta con ON CHANGE
Posted by antoq on November 25, 2010 at 01:30Hola a todos!
He definido una alerta que se dispara cuando es modificado un campo cualquiera en una tabla. Para ello utilize la opcion: ON CHANGE.
Anda correctamente, pero necesito saber cual es el registro en donde se ha modificado el campo.
Se podra obtener esta informacion a traves de algun report o con algun query a la BBDD?
Alguien tiene solucionado esto?
Muchas gracias!!!antoq replied 13 years, 9 months ago 2 Members · 10 Replies -
10 Replies
-
-
::
Gracias por la respuesta!!
El problema que tengo es que cuando el alerta se dispara por un cambio en un campo, _data_ me trae un string con todos los campos uno detras del otro. Pero solo uno cambio de valor. Tratandose de por ej miles de registros, como puedo saber cual es el que cambio? -
-
::
Lo que necesito es: dado un campo critico de un archivo, ej monto del sueldo, del archivo SUELDOS, cuando hay una actualizacion de ese campo en cualquier registro, dispare el alerta. O sea que si se actualiza el monto de algun sueldo se dispare el alerta.
Para ello defino un modulo que hace la lectura de todos los montos de sueldos, uno detras del otro, y lo guarda en un string en la base de datos. Con ON CHANGE, el modulo vuelve a leer y armar un nuevo string y al compararlo con el que tiene guardado, si hay algun cambio dispara el alerta. Esto funciona muy bien. Pero el problema que tengo es que no puedo saber CUAL fue el valor que se actualizo y que por lo tanto genero el disparo del alerta.
Muchas gracias -
::
Hola antoq,
Entiendo el problema. Se me ocurren dos opciones para solucionarlo:
– Modificar el módulo para que sólo devuelva el nombre del registro que ha cambiado, en vez del string entero. Para esto tendrÃa que guardar en un archivo temporal el valor anterior del string para poder compararlo en cada ejecución.
– Monitorizar los valores de forma individual con un plugin, que genere un módulo por cada uno de los registros (podrÃa ser poco práctico si hay demasiados registros). -
::
Lo que pensaba hacer es que el string que graba el modulo sea “clave, valor, clave, valor,…”
En donde la clave sea la clave unica y el valor los valores a monitorear. Cuando un valor es modificado el alerta se dispara y graba un nuevo string en el mySql.
En ese momento invocar un programa que compare entre si los 2 ultimos string grabados y determine que valor fue modificado y a que clave corresponde.
Puede ser?
Se puede invocar un programa cuando se dispara un alerta, como si fuese una accion?
En que archivo habria que dejar el resultado para que pueda ser levantado como report?
Muchas gracias -
-
::
Me refiero a que una vez que el programa determino el valor modificado y su respectiva clave, deberia dejar esta informacion en algun archivo para que despues con el reporting de Pandora el usuario pueda crear un informe para ver esta informacion.
Con respecto a la invocacion de un programa,seria ciertamente en el servidor, pero no tengo claro como.
Muchas gracias!!
-
-