O Apache está OK, mas o que é isso em error.log - [mpm_prefork: notice]?

32

Meu servidor apache está funcionando OK sem problemas. Também não emite nenhum aviso durante a reinicialização. No entanto, se eu examinar error.log, posso ver as seguintes linhas repetindo de tempos em tempos:

[Wed Jun 25 18:15:56.295408 2014] [mpm_prefork:notice] [pid 8817] AH00163: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4 configured -- resuming normal operations
[Wed Jun 25 18:15:56.295570 2014] [core:notice] [pid 8817] AH00094: Command line: '/usr/sbin/apache2'
[Wed Jun 25 18:26:34.511247 2014] [mpm_prefork:notice] [pid 8817] AH00169: caught SIGTERM, shutting down

O que eles dizem? Como posso corrigir isso?

Maxim Koretskyi
fonte
O que significa "de tempos em tempos"? A cada poucas semanas, dias, horas, minutos?
Sven
@SvW, dentro de um intervalo de 20 minutos. Mas atualmente estou trabalhando com o servidor (depois de o reiniciar), por isso talvez essa seja a causa #
Maxim Koretskyi
Por favor, assista a este para ver se esta é a causa do problema.
Sven
@SvW, o thisque? :) Você esqueceu o link?
Maxim Koretskyi
1
Não, eu simplesmente assumir que você sabe como configurar o Apache e ter visto as directivas de configuração para mpm_prefork.
Sven

Respostas:

40

O arquivo de log mostra apenas algumas inicializações / desligamentos dos trabalhadores do Apache. Na sua configuração do Apache, você pode definir quantos trabalhadores (também conhecidos como threads) o Apache pode usar. Em uma configuração regular, o Apache pode ser iniciado várias vezes. Especialmente quando seu servidor está ocupado (por exemplo, há muitos visitantes em um de seus vhosts), não é estranho ver 20 (ou mais) processos Apache em execução. Não há nada com que se preocupar, eles são apenas informativos.

[mpm_prefork: notice] [pid 8817] AH00163: Apache / 2.4.7 (Ubuntu) PHP / 5.5.9-1ubuntu4 configurado - continuando as operações normais

Isso significa que um novo encadeamento surgiu sob o ID do processo 8817.

[núcleo: aviso] [pid 8817] AH00094: Linha de comando: '/ usr / sbin / apache2'

Este é apenas um aviso dizendo que o /usr/sbin/apache2comando foi usado para iniciar o encadeamento; portanto, nenhum sinalizador / opção especial foi passado para ele.

[mpm_prefork: notice] [pid 8817] AH00169: pegou o SIGTERM, desligando

Essa linha informa que o processo com o ID do processo 8817 foi encerrado novamente.

[Atualizado] Este log foi chamado pelo /etc/apache2/apache2.confqual possui a diretiva apontando para o arquivo de log que você está vendo. Para ver menos do log, você pode editar esta linha apache2.conf LogLevel warnpara LogLevel errorque registrará somente se houver erro fazendo com que o servidor a funcionar mal. As opções para esse log são: trace1, debug, info, notice, warn, error, crit, alert, emerg . Você pode jogar com todas essas opções para descobrir qual nível de registro você mais gosta.

Para ver o log do seu domínio, você pode encontrá-lo no seu arquivo conf que contém as configurações do host do domínio /etc/apache2/sites-available. Ou seja, yoursite.conf

Oldskool
fonte
Obrigado, mas estou usando o MPM prefork, portanto não há threads. Você quer dizer quando um novo processo filho é iniciado?
Maxim Koretskyi
1
O módulo prefork pode ser configurado para iniciar StartServersprocessos do servidor na inicialização, gerar MaxClientsprocessos se o servidor ficar ocupado e manter MaxSpareServersprocessos sobressalentes; portanto, as entradas de log que você vê são resultado de processos gerados adicionais que são mortos novamente se o servidor fica menos ocupado.
Sven
Obrigado, agora entendo o seu ponto. Estou pensando, porém, por que então isso é tratado como erros desde que eu os encontrei error.log? A propósito, você sabe se existe alguma diferença entre ter dois servidores com 5 MaxClients e um com 10 MaxClients?
Maxim Koretskyi
Isso é um problema para um código PHP ou não? Isso afetará meu aplicativo Web ou execução de código?
Neocortex
4
estes não são erros, são apenas avisos informativos. error.log está com o nome errado; muito do que é necessário é apenas informativo.
ysth 21/05
-2

Eu tenho o mesmo problema, incluindo os mesmos erros. Eu o resolvi de maneira muito simples com - sudo!

sudo service apache2 restart

eu peguei a solução daqui

yehonatan yehezkel
fonte