diff --git a/dgongut/README.md b/dgongut/README.md new file mode 100644 index 0000000..0b8f2b0 --- /dev/null +++ b/dgongut/README.md @@ -0,0 +1,5 @@ +# Scripts Unraid + +## check-store-logs + +[check_store_logs](check_store_logs/README.md) \ No newline at end of file diff --git a/dgongut/check_store_logs/README.md b/dgongut/check_store_logs/README.md new file mode 100644 index 0000000..27d3877 --- /dev/null +++ b/dgongut/check_store_logs/README.md @@ -0,0 +1,22 @@ +# check-store-logs + +No es que sea algo habitual, pero me ha ocurrido que algún problema con mi servidor me ha dejado sin acceso a la GUI (interfaz web) debido a que se me ha llenado la memoria reservada a logs del sistema. +Es por eso que tengo este script corriendo en mi servidor que avisará por telegram si este almacenamiento destinado a logs supera el 60% de uso. De esta manera nos dará tiempo a identificar el error antes de que sea tarde y tengamos que reiniciar el servidor forzosamente sin saber qué ha provocado el llenado. + +## Prerequisitos: + +- Necesitaras disponer de un bot configurado en Telegram. Si no dispones de un token de telegram y un chatid mira este enlace: [https://proyectoa.com/crear-bot-en-telegram-y-generar-token-de-seguridad-para-uso-por-aplicacion-externa/](https://proyectoa.com/crear-bot-en-telegram-y-generar-token-de-seguridad-para-uso-por-aplicacion-externa/) + +## Preparacion del script + +- Edita las variables siguientes del script *check-store-logs.sh* : + +``` bash +TOKEN="EL TOKEN DEL BOT" +ID="EL ID DEL USUARIO O GRUPO DONDE NOTIFICARÁ" +``` + +## Configuracion del script en UserScripts + +- En UnRaid crea un script de usuario con el nombre check_store_logs o como prefieras y en el propio script pega el contenido del fichero check_store_logs.sh +- Configura la ejecución del script al tiempo que prefieras. Yo personalmente lo tengo con `Scheduled Hourly` ya que si está por debajo no hará nada. \ No newline at end of file diff --git a/dgongut/check_store_logs/check_store_logs.sh b/dgongut/check_store_logs/check_store_logs.sh new file mode 100644 index 0000000..8f9344d --- /dev/null +++ b/dgongut/check_store_logs/check_store_logs.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +TOKEN="EL TOKEN DEL BOT" +ID="EL ID DEL USUARIO O GRUPO DONDE NOTIFICARÁ" + +send_telegram_message() { + local URL_MESSAGE="https://api.telegram.org/bot$TOKEN/sendMessage" + local MESSAGE="$1" + curl -s -X POST $URL_MESSAGE -d chat_id=$ID -d text="$MESSAGE" -d parse_mode=Markdown +} + +percentage=$(df -h | grep /var/log | awk '{print $5}' | sed 's/%//') +if [[ $percentage -gt 60 ]] +then + send_telegram_message "*Almacenamiento de logs al $percentage%*" +fi \ No newline at end of file