A resposta de Jamie está correta: você pode forçar o rsyslog a registrar o que está acontecendo com o tomcat. No entanto, isso não responde porque tomcat 7 no rhel 7 não registra em catalina.out. Em caso afirmativo, por que ele registra no catalina.out e no catalina com uma data (se você não estiver usando uma instalação do RPM).
Primeiro, no passado, por volta de 7.0.42, os scripts da Red Hat usavam catalina.out porque seus scripts estavam imitando o comportamento do RHEL 6. Até onde eu sei, eles estavam usando "bifurcação" para o serviço de systemd
. Quando o 7.0.56 foi lançado, eles mudaram isso inteiramente fazendo novos scripts e wrappers em / usr / libexec / tomcat para forçar o tomcat a executar no modo simple
em vez de forked
, permitindo que o systemd tivesse controle do PID e stdout
e stderr
para ir para o diário. Ainda há um arquivo catalina.$DATE.log
em /var/log/tomcat
, mas a informação é mais limitada de um% normalcatalina.out
.
Em segundo lugar, vamos ver o /etc/tomcat/logging.properties. Você verá que ele classifica os logs de uma maneira específica entre catalina, localhost, manager, host-manager. Você também notará que ele tem suporte para o recurso rsyslog e, basicamente, como ele "lida" com ele. O que vem a baixo é o ConsoleHandler
nesse arquivo. Alterá-los mudaria o comportamento dos logs em /var/log/tomcat
.
journalctl -u tomcat
mostrará tudo o que catalina.out deveria ter. Até onde sei, sem modificar os wrappers da Red Hat em / usr / libexec / tomcat, não há uma maneira segura de fazer tudo ir apenas para catalina.out. Se você modificar esses scripts e uma atualização for lançada, suas alterações serão sobrescritas.
Se você quiser catalina.out com certeza, vá com a configuração de exemplo do rsyslog de Jamie. Apenas saiba que isso não apenas preencherá isso, mas o diário do sistema também terá as mesmas informações.