É possível criar um log de erros personalizado no Apache 2.2?

11

Gostaria de preceder o nome do vhost no meu ErrorLog e, em seguida, enviá-lo para um programa que escrevi.

É possível escrever o formato de log de erros personalizado como está no log do Access?

    
por JohnT 06.05.2011 / 17:35

4 respostas

7

Para tubulações, consulte a diretiva ErrorLog e Piped Logs entradas manuais oficiais que explicam muito bem.

Obter um formato de log de erros personalizado é mais difícil. Você pode personalizar o log de acesso facilmente com LogFormat , mas não há nada incorporado para modificar o formato do log de erros. Eu me deparei com CGI :: Carp que é um módulo Perl para a saída para o log de erros. Finalmente, há sempre modificar o código-fonte do Apache diretamente, dependendo de quão mal você deseja esse recurso.

    
por 06.05.2011 / 18:27
7

No Apache 2.2 você não pode alterar o formato do error_log facilmente - veja o link .

O Apache 2.4 adiciona esse suporte. Consulte o link .

    
por 13.09.2012 / 15:59
5

Com o Apache 2.4, você pode usar a diretiva ErrorLogFormat .

Sintaxe: ErrorLogFormat [connection|request] format

Exemplo simples

ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"

Exemplo (formato padrão para MPMs encadeados)

ErrorLogFormat "[%{u}t] [%-m:%l] [pid %P:tid %T] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"

Exemplo (semelhante ao formato 2.2.x)

ErrorLogFormat "[%t] [%l] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"

Exemplo avançado com IDs de log de solicitação / conexão

ErrorLogFormat "[%{uc}t] [%-m:%-l] [R:%L] [C:%{C}L] %7F: %E: %M"
ErrorLogFormat request "[%{uc}t] [R:%L] Request %k on C:%{c}L pid:%P tid:%T"
ErrorLogFormat request "[%{uc}t] [R:%L] UA:'%+{User-Agent}i'"
ErrorLogFormat request "[%{uc}t] [R:%L] Referer:'%+{Referer}i'"
ErrorLogFormat connection "[%{uc}t] [C:%{c}L] local\ %a remote\ %A"

Fonte: Diretiva ErrorLogFormat

    
por 08.01.2016 / 10:51
1

Provavelmente você está procurando mod_log_debug .

    
por 17.09.2012 / 17:02