Um script de shell para enviar alerta por e-mail quando a memória estiver baixa
À medida que usamos nossos computadores para diversas tarefas, muitas vezes executamos vários aplicativos e softwares que consomem uma quantidade significativa de memória. Quando a memória disponível fica baixa, nosso computador pode ficar lento ou até travar. Para evitar essa situação, podemos usar um script de shell para enviar um alerta por e-mail quando a memória ficar fraca. Neste artigo, discutiremos como criar esse script de shell e explicaremos como ele funciona.
Noções básicas sobre scripts de shell
Antes de nos aprofundarmos na criação de scripts de shell, vamos primeiro entender o que são scripts de shell. Um shell script é um programa que consiste em uma série de comandos escritos em uma linguagem shell, que é interpretada pelo sistema operacional. Os scripts de shell são comumente usados para automatizar tarefas repetitivas e tarefas de administração do sistema.
Criando um Shell Script para Monitorar o Uso de Memória
Para criar um script de shell para monitorar o uso de memória, precisamos usar os seguintes comandos -
free - Este comando exibe a quantidade de memória livre e usada no sistema.
awk - Este comando é uma poderosa ferramenta de processamento de texto que nos permite manipular e analisar dados.
-
mail - Este comando envia um email para um endereço de email especificado.
Aqui está o shell script que criaremos -
#!/bin/bash
# Get memory usage details
memory=$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2}')
# Define threshold memory usage
threshold=80.00
# Check if memory usage is greater than threshold
if (( $(echo "$memory > $threshold" | bc -l) )); then
# Send an email alert
echo "Memory usage is above threshold: $memory" | mail -s "Memory Usage Alert" your_email_address@example.com
fi
Vamos examinar esse script linha por linha para entender o que ele faz.
#!/bin/bash - Esta linha informa ao sistema operacional para usar o shell Bash para interpretar o script.
memory=$ (free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2}') - Esta linha obtém detalhes de uso de memória usando free comando e calcula a porcentagem de memória usada usando o comando awk.
threshold=80.00 - Esta linha define o limite de uso de memória. Neste exemplo, definimos o limite para 80%.
if (( $ (echo "$memory > $threshold" | bc -l) )); then - Esta linha verifica se o uso de memória é maior que o limite usando a instrução if.
echo "O uso de memória está acima do limite − $memory" | mail -s "Alerta de uso de memória" your_email_address@example.com: Se o uso de memória estiver acima do limite, esta linha envia um alerta por e-mail para o endereço de e-mail especificado usando o comando mail.
Usando ShellScript
Para usar o shell script, precisamos seguir estas etapas
Abra um editor de texto e copie o código do script nele.
-
Substitua "your_email_address@example.com" pelo seu endereço de e-mail real.
Salve o arquivo com extensão .sh (por exemplo, mem_alert.sh).
Abra o terminal e navegue até o diretório onde você salvou o arquivo.
Torne o arquivo executável executando o seguinte comando: chmod +x mem_alert.sh.
Execute o script shell usando o seguinte comando: ./mem_alert.sh.
O script de shell agora monitorará o uso de memória e enviará um alerta por e-mail se o uso ultrapassar o limite.
Personalizando ShellScript
Você pode personalizar o shell script para atender às suas necessidades, modificando as seguintes variáveis -
threshold - Você pode alterar o limite de uso da memória modificando o valor da variável de limite. Por exemplo, se quiser definir o limite para 90%, você pode alterar a linha "threshold=80.00" para "threshold=90.00".
email_address - Você pode alterar o endereço de e-mail para o qual o alerta é enviado, modificando o valor da variável email_address. Por exemplo, se você deseja enviar um alerta para "meu_email@example.com", você pode alterar a linha "seu_email_address@example.com" para "meu_email@example.com".
Você também pode modificar a mensagem enviada no alerta por email modificando a instrução echo. Por exemplo, você pode adicionar mais informações à mensagem ou personalizar o assunto do alerta por e-mail.
Benefícios de usar um script Shell para monitorar o uso de memória
Usar um script de shell para monitorar o uso de memória tem vários benefícios -
Automação
O shell script automatiza o processo de monitoramento do uso de memória e envio de alertas por e-mail, o que economiza tempo e esforço.
Monitoramento Proativo
o alerta por e-mail é enviado quando o uso da memória ultrapassa o limite, o que permite que você tome medidas proativas para evitar problemas relacionados à falta de memória.
Costumização
O shell script pode ser personalizado para atender às suas necessidades específicas, como alterar o limite de uso de memória ou o endereço de e-mail para o qual o alerta é enviado.
Conclusão
Neste artigo, discutimos como criar um script de shell para monitorar o uso de memória e enviar alertas por e-mail quando o uso de memória ultrapassar um limite. Explicamos vários comandos usados no shell script e fornecemos instruções passo a passo sobre como usar e personalizar o script. Ao usar um script de shell para monitorar o uso de memória, você pode automatizar o processo de monitoramento e tomar medidas proativas para evitar problemas relacionados à falta de memória.