Esta é realmente uma ligação pessoal que você deve fazer com base no seu ambiente e na maneira como trabalha. Há vantagens e desvantagens para ambos.
A principal vantagem de um log combinado (tudo relacionado a um arquivo) é que ele é escrito contemporaneamente: Se ocorrer um erro, você o verá logo abaixo da linha de "acesso" (a solicitação) que o causou.
Isso pode tornar a resolução de problemas um pouco mais fácil se você não tiver um grande volume de solicitações.
Por outro lado, arquivos de log separados fazem sentido sempre que o volume de entradas é tão grande que pode sobrecarregar ao tentar solucionar um problema.
A divisão "tradicional" do Apache é access
e error
logs -
- O log do Access contém todas as solicitações recebidas pelo servidor (e os códigos de resposta enviados) e, às vezes, bits úteis adicionais, como o Protocolo SSL, etc.
- O log de erros contém, como o próprio nome indica, erros (CGI / PHP / etc. falhas, exceções, impressões de pilha, saída de depuração).
Quando você está caçando um problema, você assiste ao log de erros e provoca o problema, e obtém apenas os erros (em oposição ao erro mais todas as solicitações GET
de arquivos CSS, Javascript, imagens etc. que o seu navegador foi baixado antes de você chegar à parte onde as coisas falham).
Você pode levar isso ainda mais longe (logs separados de acesso, agente, referenciador, SSL, etc.), mas pessoalmente não vejo necessidade de fazer isso. O tradicional "Erro" e "Acesso" (tudo o que não é um erro) é o que você verá na maioria das implementações.
Pode haver um motivo para manter registros adicionais dedicados para referenciadores, etc., se você estiver fazendo análises ou estatísticas, ou pode omitir essas informações do log do Access se não se importar sobre isso, mas eu não subdividiria os logs no ponto em que você precisa procurar em mais de 2 locais para solucionar um problema. Isso acaba fazendo mais trabalho para você.