Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save edilsonvilarinho/bde3627cc7f9206f97f08b236e853f84 to your computer and use it in GitHub Desktop.

Select an option

Save edilsonvilarinho/bde3627cc7f9206f97f08b236e853f84 to your computer and use it in GitHub Desktop.

Revisions

  1. edilsonvilarinho created this gist May 8, 2025.
    107 changes: 107 additions & 0 deletions Limpeza Automática de Logs com Crontab.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,107 @@
    # Limpeza Automática de Logs com Crontab

    Este repositório contém um script para realizar a limpeza automática de logs em dois diretórios específicos:

    * `/opt/tomcat/Informata/InfoWSRF`
    * `/opt/tomcat/Informata/InfoWSSTB`

    ## 📌 Objetivo

    Remover arquivos antigos de log, mantendo os diretórios organizados e evitando o acúmulo de arquivos desnecessários.

    ---

    ## 🚀 Passo a Passo para Configuração

    ### 1️⃣ Criar o script de limpeza

    Crie um arquivo para o script de limpeza:

    ```bash
    sudo nano /opt/tomcat/limpa_logs.sh
    ```

    Adicione o seguinte conteúdo:

    ```bash
    #!/bin/bash
    # Script para limpar os diretórios de log

    # Caminhos dos diretórios
    DIR1="/opt/tomcat/Informata/InfoWSRF"
    DIR2="/opt/tomcat/Informata/InfoWSSTB"

    # Exclui arquivos de log mais antigos que 7 dias
    find "$DIR1" -type f -mtime +7 -exec rm -f {} \;
    find "$DIR2" -type f -mtime +7 -exec rm -f {} \;

    # Mensagem de conclusão
    echo "Limpeza concluída em $(date)" >> /opt/tomcat/limpa_logs.log
    ```

    ---

    ### 2️⃣ Dar permissão de execução

    ```bash
    sudo chmod +x /opt/tomcat/limpa_logs.sh
    ```

    ---

    ### 3️⃣ Adicionar ao Crontab

    Abra o crontab para edição:

    ```bash
    sudo crontab -e
    ```

    Adicione a seguinte linha para executar o script diariamente às 2h da manhã:

    ```bash
    0 2 * * * /opt/tomcat/limpa_logs.sh >> /opt/tomcat/limpa_logs_cron.log 2>&1
    ```

    ---

    ## 🔍 Explicação:

    * `0 2 * * *`: Executa diariamente às 2h da manhã.
    * `>> /opt/tomcat/limpa_logs_cron.log`: Armazena os logs de execução.
    * `2>&1`: Redireciona erros para o arquivo de log.

    ---

    ## ✅ Testando a execução manual:

    ```bash
    sudo /opt/tomcat/limpa_logs.sh
    ```

    Verifique os logs:

    ```bash
    cat /opt/tomcat/limpa_logs.log
    ```

    ---

    ## 🎯 Próximos Passos:

    Caso deseje adicionar a exclusão de arquivos vazios, é possível complementar o script com:

    ```bash
    find "$DIR1" -type f -empty -delete
    find "$DIR2" -type f -empty -delete
    ```

    ---

    ## 📌 Autor

    Edilson Souza

    ---

    Pronto! A limpeza agora está automatizada e os diretórios organizados!