O JBoss EAP 6.1 contém um recurso chamado Logging Profile, que permite que as aplicações possam usar um profile de Log definido no servidor.
Porém, a documentação da Red Hat para o EAP apresenta somente aconfiguração necessária para usar o Logging Profile em standalone.
Se for usar seu EAP 6.1 em modo Domain, a configuração muda “ligeiramente” do que está na documentação da Red Hat.
Vou apresentar abaixo o que você precisa fazer.
1. Inicie seu JBoss em modo Domain.
2. Em uma outra janela do seu terminal (ou CMD), execute o script jboss-cli.
./jboss-cli.sh -c
3. Execute os comandos abaixo para criar um Logging Profile, um Logging Handler.
/profile=full-ha/subsystem=logging/logging-profile=MY_LOGGING_PROFILE/:add /profile=full-ha/subsystem=logging/logging-profile=MY_LOGGING_PROFILE/file-handler=MY_LOGGING_PROFILE_HANDLER:add(file={path=>"MY-LOG-FILE.log", "relative-to"=>"jboss.server.log.dir"}) /profile=full-ha/subsystem=logging/logging-profile=MY_LOGGING_PROFILE/file-handler=MY_LOGGING_PROFILE_HANDLER:change-log-level(level="DEBUG") /profile=full-ha/subsystem=logging/logging-profile=MY_LOGGING_PROFILE/logger=com.mycompany.myapp:add(level=TRACE) /profile=full-ha/subsystem=logging/logging-profile=MY_LOGGING_PROFILE/logger=com.mycompany.myapp:assign-handler(name="MY_LOGGING_PROFILE_HANDLER")
A diferença para a configuração na Red Hat é a definição do profile no início de cada comando.
Estes comandos alteram o arquivo domain.xml adicionando o trecho de código abaixo no profile “full-ha“.
<
logging-profiles
>
<
logging-profile
name
=
"MY_LOGGING_PROFILE"
>
<
file-handler
name
=
"MY_LOGGING_PROFILE_HANDLER"
>
<
level
name
=
"DEBUG"
/>
<
file
relative-to
=
"jboss.server.log.dir"
path
=
"MY-LOG-FILE.log"
/>
</
file-handler
>
<
logger
category
=
"com.mycompany.myapp"
>
<
level
name
=
"TRACE"
/>
<
handlers
>
<
handler
name
=
"MY_LOGGING_PROFILE_HANDLER"
/>
</
handlers
>
</
logger
>
</
logging-profile
>
</
logging-profiles
>
4. Configure seu pom.xml para adicionar o nome do Logging Profile no MANIFEST.MF.
Para projetos WAR
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.3</version> <configuration> <filteringDeploymentDescriptors>true</filteringDeploymentDescriptors> <archive> <manifestEntries> <Logging-Profile>MY_LOGGING_PROFILE</Logging-Profile> </manifestEntries> </archive> </configuration> </plugin>
Estas configurações foram validadas em projetos WAR com JSF e projetos EJB 3, implantados no EAP 6.1 em uma configuração MASTER com 1 SERVER GROUP com 1 SERVER.
Momendo #ficadica
Aqui #ficadica para alguém da Red Hat fazer a adição em sua documentação do EAP para que outros profissionais possam otimizar suas configurações ao ler as documentações do produto.
Momento #naogostei
Agora que as configurações foram feitas e foram validadas tecnicamente em projetos, vou colocar aqui o que acabou me deixando um pouco frustrado com Red Hat / JBoss.
Me frustrou bastante o fato que a documentação do EAP (pelo menos para este item) apresentar somente configurações com foco no modo Standalone.
Outro ponto que achei ruim foi o fato que, os códigos de erro que os comandos me apresentaram durante esta aprendizagem, não foram encontrados em mecanismos de busca, aumentando o tempo necessário para encontrar uma solução.
Comments