Zabbix, monitorizar el CRC de un fichero descargado

Me toca mucho las narices que alguien cambie cosas sin avisar … y no tengo acceso al servidor en cuestión … pero cada vez que alguien toca me salpica. Asi que … voy a empezar a mirar el ficherito de marras.

Creo que esta vez la IA casi ha acertado. Un par de modificaciones tontas y parece que funciona.

Crea un ítem HTTP Agent:
Ve a Configuración > Hosts > Ítems > Crear Ítem.Define el Nombre (Name) y establece Tipo (Type) en HTTP Agent.
Introduce la URL del fichero que quieres comprobar.
Configura el Tipo de información (Type of information) como Text (Texto)

Se queda así:

zabbix check file

Ve a la pestaña Preprocesamiento (Preprocessing). Añade un paso llamado Script de JavaScript.
Pega el siguiente código que tomará el contenido de la página y calculará su CRC32 (código de IA, ojito).

// CRC32 implementation in JavaScript for Zabbix
function strToCRC32(str) {
var crc = 0 ^ -1;
for (var i = 0; i < str.length; i++) { var byte = str.charCodeAt(i); crc = (crc >>> 8) ^ crcTable[(crc ^ byte) & 0xFF];
}
return (crc ^ -1) >>> 0;
}

// Generate CRC table
var crcTable = [];
for (var i = 0; i < 256; i++) { var c = i; for (var j = 0; j < 8; j++) { c = (c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1);
}
crcTable[i] = c;
}

return strToCRC32(value).toString(16).toUpperCase(); // Retorna el CRC32 en Hexadecimal

zabbix check file

Después hay que crear el trigger.

zabbix check file

Y listo.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.