:::: MENU ::::

segunda-feira, 24 de agosto de 2015

Situação:

Empresa com o servidor web, que possui várias aplicações GLPI, um para cada cliente.

Problema:

A aplicação GLPI, está criando arquivos de log muito grandes, no diretório /var/www/html/glpi/files/_log, e isso está fazendo o servidor estourar o espaço em disco.

Solução: Script!

Script que crie um arquivo de logrotate para cada cliente, que é executado mensalmente - para caso apareça algum novo cliente.

Show me the code:

#/bin/bash
# Raul Libório, <rauhmaru@opensuse.org>
# Versao: 1.0 - 24/08/2015
# Problema: Arquivos do GLPI no diretorio
# /var/www/html/$CLIENTES/files/_log/
# que crescem bastante, levando ao
# estouro de disco
#
# Funcao: Cria arquivos de config. do logrotate
# para as aplicacoes do GLPI. e resolver
# problema do tamanho dos arquivos de log.
#
## Variaveis
LOGROTATE_FILE="/etc/logrotate.d/glpi"
GLPI_DIR="/var/www/html/"
LOGROTATE_PARAMS="
{\n
        missingok\n
        monthly\n
        notifempty\n
        size 20M\n
        rotate 7\n
        compress\n
        create 0664 apache apache\n
}
"
## Cria arquivo do logrotate para o GLPI
rm $LOGROTATE_FILE
for CLIENTES in $(ls $GLPI_DIR | grep glpi ); do
        GLPI_LOGS="/var/www/html/$CLIENTES/files/_log/logfiles"
        echo -e $GLPI_LOGS >> $LOGROTATE_FILE
done
echo -e $LOGROTATE_PARAMS >> $LOGROTATE_FILE
sed -i 's/logfiles/\*.log/g' $LOGROTATE_FILE
## Executa o arquivo criado
logrotate -f /etc/logrotate.conf
E adicione a linha ao cron: (supondo que seu script está no /scripts)
@monthly  /scripts/logrotate_glpi.sh

0 comentários:

Postar um comentário

Só não vale xingar a mãe ou puxar cabelo nos comentários =)

Posts populares