Esta é uma pergunta muito simples, mas não consigo encontrar informações.
(Talvez meu conhecimento sobre estruturas Java esteja muito ausente)
Como posso definir o nível de log com application.properties?
E registrando o local do arquivo, etc?
logging
spring-boot
Zeodtr
fonte
fonte
Settings
->Config Vars
definalogging.level.com.yourpackage
para o nível desejado (INFO, ERROR, DEBUG).Respostas:
Update: A partir da Primavera de inicialização v1.2.0.RELEASE, as configurações
application.properties
ouapplication.yml
se aplicam. Consulte a seção Níveis de log do guia de referência.Para versões anteriores do Spring Boot, você não pode. Você simplesmente precisa usar a configuração normal para sua estrutura de log (log4j, logback) para isso. Adicione o arquivo de configuração apropriado (
log4j.xml
oulogback.xml
) aosrc/main/resources
diretório e configure ao seu gosto.Você pode habilitar o log de depuração especificando
--debug
ao iniciar o aplicativo a partir da linha de comando.O Spring Boot também fornece um bom ponto de partida para o logback configurar alguns padrões, cores etc., o arquivo base.xml, que você pode simplesmente incluir no arquivo logback.xml. (Isso também é recomendado no logback.xml padrão no Spring Boot.
fonte
application.properties
ou seapplication.yml
aplicam, conforme respondidas por Richard (módulo o problema:
ou=
--- os dois pontos parecem funcionar para mim).Você pode fazer isso usando seu application.properties.
logging.level.=ERROR
-> Define o nível de log raiz como erro...
logging.level.=DEBUG
-> Define o nível de log raiz como DEBUGlogging.file=${java.io.tmpdir}/myapp.log
-> Define o caminho absoluto do arquivo de log como TMPDIR / myapp.logUm conjunto padrão e sensato de application.properties sobre o log usando perfis seria: application.properties:
application-dev.properties:
Quando você desenvolve seu IDE favorito, basta adicionar um
-Dspring.profiles.active=dev
argumento como VM à configuração de execução / depuração do seu aplicativo.Isso fornecerá apenas erros ao efetuar logon de produção e depuração durante o desenvolvimento, SEM gravar a saída em um arquivo de log. Isso melhorará o desempenho durante o desenvolvimento (e economizará unidades SSD algumas horas de operação;)).
fonte
logging.level.:DEBUG
spring-boot 1.4.0
:logging.level.=DEBUG
fará com que o aplicativo falhe ao iniciar e com erro: #java.lang.ClassCircularityError: java/util/logging/LogRecord
logging.level.
é apenas um atalho sintático de conveniêncialogging.level.root
, que pode ser preferido como (1) menos propenso a ser confundido com um erro de digitação, (2) potencialmente mais explícito e (3) trabalhando com o=
sinal de atribuição, que fornece mais consistência geral para o arquivo de configuração.A maneira correta para definir a raiz nível de log está usando a propriedade
logging.level.root
. Consulte a documentação , que foi atualizada desde que esta pergunta foi feita originalmente.Exemplo:
fonte
Suponha que seu aplicativo tenha o nome do pacote como
com.company.myproject
. Em seguida, você pode definir o nível de log para classes dentro do seu projeto, conforme indicado abaixo nos arquivos application.propertieslogging.level.org.springframework.web = DEBUG
elogging.level.org.hibernate = DEBUG
definirá o nível de log para classes somente da Web framework Spring e do Hibernate.Para definir o local do arquivo de log, use
fonte
Se você estiver no Spring Boot, poderá adicionar diretamente as seguintes propriedades no arquivo application.properties para definir o nível de log, customizar o padrão de log e armazenar logs no arquivo externo.
Estes são diferentes níveis de registro e sua ordem do mínimo << máximo.
DESLIGADO << FATAL << ERRO << AVISO << INFO << DEBUG << << TRACE << ALL
Por favor, passe por este link para personalizar seu registro com mais clareza.
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html
fonte
Certificando-se de que Dave Syer receba um pouco de amor, porque adicionar
debug=true
ao application.properties realmente permitirá o log de depuração.fonte
Caso você queira usar uma estrutura de log diferente, log4j por exemplo, achei a abordagem mais fácil é desativar o próprio log de inicializador e implementar o seu próprio. Dessa forma, eu posso configurar todos os níveis de log em um arquivo, log4j.xml (no meu caso).
Para conseguir isso, basta adicionar essas linhas ao seu pom.xml:
Você provavelmente já tem a primeira dependência e precisa apenas das outras duas. Observe que este exemplo cobre apenas o log4j.
Isso é tudo, agora você está pronto para configurar o log para inicialização no seu arquivo de configuração log4j!
fonte
log4j.properties
.Você pode tentar definir o nível do log como DEBUG, pois ele mostrará tudo ao iniciar o aplicativo
fonte
Para os registros: a documentação oficial , como para o Spring Boot v1.2.0.RELEASE e Spring v4.1.3.RELEASE:
fonte
Se você deseja definir mais detalhes, adicione um nome de arquivo de configuração de log "logback.xml" ou "logback-spring.xml".
no seu arquivo application.properties, insira assim:
no loback-spring.xml, insira assim:
fonte
As respostas existentes são ótimas. Eu só quero compartilhar com você um novo recurso de inicialização por mola, que permite agrupar logs e definir o nível de log em todo o grupo.
Exemplo dos documentos:
É um recurso interessante que traz mais flexibilidade.
fonte
Na minha configuração atual, defini-a em application.yaml assim:
Estou usando o spring-boot: 2.2.0.RELEASE. Você pode definir qualquer pacote que deva ter o nível TRACE assim.
fonte
no projeto de inicialização do Spring, podemos escrever logging.level.root = WARN, mas aqui está o problema, temos que reiniciar novamente, mesmo que tenhamos adicionado a dependência de devtools, no arquivo de propriedades, se formos modificados, qualquer valor não será detectável automaticamente, por essa limitação que conheci a solução i, e podemos adicionar o atuador no pom.xml e passar o nível do registrador como mostrado abaixo no cliente do carteiro na barra de URL http: // localhost: 8080 / loggers / ROOT ou http: // localhost: 8080 / loggers / com .mycompany e no corpo você pode passar o formato json como abaixo
fonte
No caso do eclipse IDE e seu projeto ser finalizado, lembre-se de limpar e construir o projeto para refletir as alterações.
fonte
Com o Springboot 2, você pode definir o nível de log raiz com uma variável de ambiente como esta:
Ou você pode definir o log específico para pacotes como este:
fonte
LOGGING_LEVEL_ROOT=DEBUG