add plugins

This commit is contained in:
Ruben Blanco 2024-04-18 10:15:36 +02:00
parent 8a8b6ace0c
commit 0528491494
6 changed files with 318 additions and 0 deletions

View File

@ -0,0 +1,28 @@
#!/usr/bin/env python3
###########################
# Estado: En progreso #
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
import subprocess
import os
import sys
from datetime import datetime
def verificar_backup():
# lógica para verificar archivos de backup con la fecha de hoy
directorio_backup = "/srv/tftp/backup"
fecha_hoy = datetime.now().strftime('%Y%m%d')
archivos_backup = [f for f in os.listdir(directorio_backup) if f.endswith('.bak') and f.startswith(fecha_hoy)]
if archivos_backup:
mensaje = "Archivos de backup de hoy encontrados: " + ', '.join(archivos_backup)
print("OK:", mensaje)
sys.exit(0) # OK
else:
mensaje = "No se encontraron archivos de backup de hoy."
print("CRITICAL:", mensaje)
sys.exit(2) # Critical
verificar_backup()

View File

@ -0,0 +1,80 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
###########################
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
import subprocess
import os
import sys
from datetime import datetime
def verificar_backup():
# Lista de nombres de archivos específicos
nombres_archivos = ["sw19", "sw20", "sw21", "hol-sw1"]
# Variable fecha actual
fecha_actual = datetime.now().strftime('%Y%m%d')
# Variable directorio backups
directorio_backup = "/srv/tftp/backup"
# archivos que deberian existir running config
archivos_deberian_existir_running_config = [nombre + '-running-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-running-config-' + fecha_actual ]
# archivos que deberian existir boot
archivos_deberian_existir_boot = [nombre + '-boot-' + fecha_actual for nombre in nombres_archivos if nombre + '-boot-' + fecha_actual ]
# lista concatenada archivos_deberian_existir running_config + boot
lista_concatenada_archivos_deberian_existir = archivos_deberian_existir_running_config + archivos_deberian_existir_boot
# debug deberian existir running config
#print("archivosQueDeberianExistir _running_config:", archivos_deberian_existir_running_config) # debug
# debug deberian existir boot
#print("archivosQueDeberianExistir _boot:", archivos_deberian_existir_boot) # debug
# debug lista concatenada archivos_deberian_existir running_config + boot
#print("archivos_deberian_existir running_config + boot:", lista_concatenada_archivos_deberian_existir) # debug
# archivos encontrados / existentes _running_config
archivos_encontrados_running_config = [nombre + '-running-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-running-config-' + fecha_actual in os.listdir(directorio_backup)]
# archivos encontrados / existentes _boot
archivos_encontrados_boot = [nombre + '-boot-' + fecha_actual for nombre in nombres_archivos if nombre + '-boot-' + fecha_actual in os.listdir(directorio_backup)]
# lista concatenada archivos encontrados / existentes running_config + boot
lista_concatenada_archivos_encontrados = archivos_encontrados_running_config + archivos_encontrados_boot
# debug archivos encontrados / existentes _running_config
#print("archivosEncontrados:", archivos_encontrados_running_config) # debug
# debug archivos encontrados / existentes _boot
#print("archivosEncontrados:", archivos_encontrados_boot) # debug
# debug lista concatenada archivos encontrados / existentes running_config + boot
#print("archivosEncontrados running_config + boot:", lista_concatenada_archivos_encontrados) # debug
# archivos no encontrados / no existentes _running_config
archivos_no_encontrados_running_config = [nombre + '-running-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-running-config-' + fecha_actual not in os.listdir(directorio_backup)]
# archivos no encontrados / no existentes _boot
archivos_no_encontrados_boot = [nombre + '-boot-' + fecha_actual for nombre in nombres_archivos if nombre + '-boot-' + fecha_actual not in os.listdir(directorio_backup)]
# lista concatenada archivos encontrados / existentes running_config + boot
lista_concatenada_archivos_no_encontrados = archivos_no_encontrados_running_config + archivos_no_encontrados_boot
# debug archivos no encontrados / no existentes _running_config
#print("archivosNoEncontrados_running_config:", archivos_no_encontrados_running_config) # debug
# debug archivos no encontrados / no existentes _boot
#print("archivosNoEncontrados_boot:", archivos_no_encontrados_boot) # debug
# debug lista concatenada archivos no encontrados / no existentes running_config + boot
#print("archivosNoEncontrados running_config + boot:", lista_concatenada_archivos_no_encontrados) # debug
# lógica para verificar la existencia de archivos específicos para la fecha de hoy
if lista_concatenada_archivos_deberian_existir != lista_concatenada_archivos_encontrados:
mensaje = f"No se encontraron archivos de backup para la fecha {fecha_actual} o falta alguno , archivos encontrados {lista_concatenada_archivos_encontrados} , archivos que deberian existir {lista_concatenada_archivos_deberian_existir} , Archivos no encontrados: {lista_concatenada_archivos_no_encontrados} , Revisar backups en /srv/tftp/backup ."
print("CRITICAL:", mensaje)
sys.exit(2) # Critical
else:
mensaje = f"Archivos de backup encontrados {', '.join(lista_concatenada_archivos_encontrados)} ."
print("OK:", mensaje)
sys.exit(0) # OK
verificar_backup()

View File

@ -0,0 +1,50 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
###########################
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
import subprocess
import os
import sys
from datetime import datetime
def verificar_backup():
# Lista de nombres de archivos específicos
nombres_archivos = ["sw1", "sw2", "sw3", "sw5", "sw6", "sw7", "sw8", "sw9", "sw10", "sw11", "sw12", "sw13", "sw14", "sw15", "sw16", "sw18", "sw24"]
# Variable fecha actual
fecha_actual = datetime.now().strftime('%Y%m%d')
# Variable directorio backups
directorio_backup = "/srv/tftp/backup"
# archivos que deberian existir
archivos_deberian_existir = [nombre + '-vrpcfg-' + fecha_actual + '.zip' for nombre in nombres_archivos if nombre + '-vrpcfg-' + fecha_actual + '.zip']
# debug
#print("archivosQueDeberianExistir:", archivos_deberian_existir) # debug
# archivos encontrados / existentes
archivos_encontrados = [nombre + '-vrpcfg-' + fecha_actual + '.zip' for nombre in nombres_archivos if nombre + '-vrpcfg-' + fecha_actual + '.zip' in os.listdir(directorio_backup)]
# archivos no encontrados / no existentes
archivos_no_encontrados = [nombre + '-vrpcfg-' + fecha_actual + '.zip' for nombre in nombres_archivos if nombre + '-vrpcfg-' + fecha_actual + '.zip' not in os.listdir(directorio_backup)]
# debug
#print("archivosEncontrados:", archivos_encontrados) # debug
# debug
#print("archivosNoEncontrados:", archivos_no_encontrados) # debug
# lógica para verificar la existencia de archivos específicos para la fecha de hoy
if archivos_deberian_existir != archivos_encontrados:
mensaje = f"No se encontraron archivos de backup para la fecha {fecha_actual} o falta alguno , archivos encontrados {archivos_encontrados} , archivos que deberian existir {archivos_deberian_existir} , Archivos no encontrados: {archivos_no_encontrados} , Revisar backups en /srv/tftp/backup ."
print("CRITICAL:", mensaje)
sys.exit(2) # Critical
else:
mensaje = f"Archivos de backup encontrados {', '.join(archivos_encontrados)} ."
print("OK:", mensaje)
sys.exit(0) # OK
verificar_backup()

View File

@ -0,0 +1,77 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
###########################
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
import subprocess
import os
import sys
from datetime import datetime
def verificar_backup():
# Lista de nombres de archivos específicos
nombres_archivos = ["madrid", "holland"]
# Variable fecha actual
fecha_actual = datetime.now().strftime('%Y%m%d')
# Variable directorio backups
directorio_backup = "/srv/tftp/backup"
# archivos backup que deberian existir
archivos_backup_deberian_existir = [nombre + '-backup-' + fecha_actual + '.backup' for nombre in nombres_archivos if nombre + '-backup-' + fecha_actual + '.backup']
# debug
#print("archivosQueDeberianExistir:", archivos_backup_deberian_existir) # debug
# archivos backupscript que deberian existir
archivos_backupscript_deberian_existir = [nombre + '-backupscript-' + fecha_actual + '.rsc' for nombre in nombres_archivos if nombre + '-backupscript-' + fecha_actual + '.rsc']
# debug
#print("archivosQueDeberianExistir:", archivos_backupscript_deberian_existir) # debug
# lista concatenada archivos_deberian_existir backup + backupscript
lista_concatenada_archivos_deberian_existir = archivos_backup_deberian_existir + archivos_backupscript_deberian_existir
# archivos backup encontrados / existentes
archivos_backup_encontrados = [nombre + '-backup-' + fecha_actual + '.backup' for nombre in nombres_archivos if nombre + '-backup-' + fecha_actual + '.backup' in os.listdir(directorio_backup)]
# debug
#print("archivosEncontrados:", archivos_backup_encontrados) # debug
# archivos backupscript encontrados / existentes
archivos_backupscript_encontrados = [nombre + '-backupscript-' + fecha_actual + '.rsc' for nombre in nombres_archivos if nombre + '-backupscript-' + fecha_actual + '.rsc' in os.listdir(directorio_backup)]
# debug
#print("archivosEncontrados:", archivos_backupscript_encontrados) # debug
# lista concatenada archivos_encontrados backup + backupscript
lista_concatenada_archivos_encontrados = archivos_backup_encontrados + archivos_backupscript_encontrados
# archivos backup no encontrados / existentes
archivos_backup_no_encontrados = [nombre + '-backup-' + fecha_actual + '.backup' for nombre in nombres_archivos if nombre + '-backup-' + fecha_actual + '.backup' not in os.listdir(directorio_backup)]
# debug
#print("archivosbackupNoEncontrados:", archivos_backup_no_encontrados) # debug
# archivos backupscript no encontrados / existentes
archivos_backupscript_no_encontrados = [nombre + '-backupscript-' + fecha_actual + '.rsc' for nombre in nombres_archivos if nombre + '-backupscript-' + fecha_actual + '.rsc' not in os.listdir(directorio_backup)]
# debug
#print("archivosbackupscriptNoEncontrados:", archivos_backupscript_no_encontrados) # debug
# lista concatenada archivos_no_encontrados backup + backupscript
lista_concatenada_archivos_no_encontrados = archivos_backup_no_encontrados + archivos_backupscript_no_encontrados
# lógica para verificar la existencia de archivos específicos para la fecha de hoy
if lista_concatenada_archivos_deberian_existir != lista_concatenada_archivos_encontrados:
mensaje = f"No se encontraron archivos de backup para la fecha {fecha_actual} o falta alguno , archivos encontrados {lista_concatenada_archivos_encontrados} , archivos que deberian existir {lista_concatenada_archivos_deberian_existir} , Archivos no encontrados: {lista_concatenada_archivos_no_encontrados} , Revisar backups en /srv/tftp/backup ."
print("CRITICAL:", mensaje)
sys.exit(2) # Critical
else:
mensaje = f"Archivos de backup encontrados {', '.join(lista_concatenada_archivos_encontrados)} ."
print("OK:", mensaje)
sys.exit(0) # OK
verificar_backup()

View File

@ -0,0 +1,50 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
###########################
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
import subprocess
import os
import sys
from datetime import datetime
def verificar_backup():
# Lista de nombres de archivos específicos
nombres_archivos = ["gw1"]
# Variable fecha actual
fecha_actual = datetime.now().strftime('%Y%m%d')
# Variable directorio backups
directorio_backup = "/srv/tftp/backup"
# archivos que deberian existir
archivos_deberian_existir = [nombre + '-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-config-' + fecha_actual]
# debug
#print("archivosQueDeberianExistir:", archivos_deberian_existir) # debug
# archivos encontrados / existentes
archivos_encontrados = [nombre + '-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-config-' + fecha_actual in os.listdir(directorio_backup)]
# debug
#print("archivosEncontrados:", archivos_encontrados) # debug
# archivos no encontrados / no existentes
archivos_no_encontrados = [nombre + '-config-' + fecha_actual for nombre in nombres_archivos if nombre + '-config-' + fecha_actual not in os.listdir(directorio_backup)]
# debug
#print("archivosNoEncontrados:", archivos_no_encontrados) # debug
# lógica para verificar la existencia de archivos específicos para la fecha de hoy
if archivos_deberian_existir != archivos_encontrados:
mensaje = f"No se encontraron archivos de backup para la fecha {fecha_actual} o falta alguno , archivos encontrados {archivos_encontrados} , archivos que deberian existir {archivos_deberian_existir} , Archivos no encontrados: {archivos_no_encontrados} , Revisar backups en /srv/tftp/backup ."
print("CRITICAL:", mensaje)
sys.exit(2) # Critical
else:
mensaje = f"Archivos de backup encontrados {', '.join(archivos_encontrados)} ."
print("OK:", mensaje)
sys.exit(0) # OK
verificar_backup()

33
check_mem/check_freemem Normal file
View File

@ -0,0 +1,33 @@
#!/usr/bin/env bash
###########################
# Estado: Ok #
# Author: Rubenb #
# Fecha: 04/01/2024 #
###########################
mLine=`free | awk 'NR==2'`
mTotal=`echo $mLine| awk '{print $2}'`
mFree=`echo $mLine| awk '{print $4}'`
mUsed=`echo $mLine| awk '{print $3}'`
nagios_func(){
echo "$1 Memory Usage=$mUsed, From $mTotal | free_mem=$mFree;;; used_mem=$mUsed;4555555;9837470;";
}
nagios_unknown(){
echo "$1 No value as Argument";
}
if [[ "$#" -eq 0 ]]
then
nagios_unknown "UNKNOWN"; exit 3;
elif [[ $mUsed -gt $2 ]]
then
nagios_func "CRITICAL"; exit 2;
elif [[ $mUsed -gt $1 ]]
then
nagios_func "WARNING"; exit 1;
else
nagios_func "OK"; exit 0;
fi