Spring Boot: как я могу установить уровень ведения журнала с помощью приложения.недвижимость?
Это очень простой вопрос, но я не могу найти информацию.
(Возможно, мои знания о Java-фреймворках сильно отсутствуют)
Как я могу установить уровень ведения журнала с приложением.недвижимость?
И местоположение файла журнала и т. д.?
10 ответов:
обновление: начиная с Spring Boot v1.2.0.Отпустите, настройки в
application.propertiesилиapplication.ymlприменить. Смотрите журнала справочного руководства.logging.level.org.springframework.web: DEBUG logging.level.org.hibernate: ERRORдля более ранних версий Spring Boot вы не можете. Для этого вам просто нужно использовать обычную конфигурацию для вашей структуры ведения журнала (log4j, logback). Добавьте соответствующий конфигурационный файл (
log4j.xmlилиlogback.xml) кsrc/main/resourcesкаталог и настроить по своему вкусу.вы можете включить ведение журнала отладки путем указания
--debugпри запуске приложения из командной строки.Spring Boot также является хорошей отправной точкой для logback для настройки некоторых параметров по умолчанию, раскраски и т. д. элемент базы.xml файл, который вы можете просто включить в свой logback.XML-файл. (Это также рекомендуется по умолчанию logback.xml в весенней загрузке.
<include resource="org/springframework/boot/logging/logback/base.xml"/>
вы можете сделать это с помощью приложения.свойства.
logging.level.=ERROR- > устанавливает корневой уровень ведения журнала в error
...logging.level.=DEBUG- > устанавливает корневой уровень ведения журнала для отладкиlogging.file=${java.io.tmpdir}/myapp.log- > задает абсолютный путь к файлу журнала TMPDIR / myapp.бревно
Нормальный набор приложений по умолчанию.свойства относительно ведения журнала с использованием профилей будут: приложение.свойства:spring.application.name=<your app name here> logging.level.=ERROR logging.file=${java.io.tmpdir}/${spring.application.name}.logapplication-dev.свойства:
logging.level.=DEBUG logging.file=когда вы развиваетесь внутри своей любимой IDE, вы просто добавляете
-Dspring.profiles.active=devв качестве аргумента виртуальной машины для запуска/отладки конфигурации вашего приложения.это даст вам ошибку только при входе в производственный и отладочный журнал во время разработки без записи выходных данных в файл журнала. Это позволит повысить производительность во время разработки ( и сэкономить SSD диски несколько часов работы ;) ).
правильный способ установить root уровень ведения журнала использует свойство
logging.level.root. Смотрите документация, который был обновлен с тех пор, как этот вопрос был первоначально задан.пример:
logging.level.root=WARN
убедившись, что Дэйв Сир совет получает некоторую любовь, потому что добавление
debug=trueдля приложения.свойства действительно включат ведение журнала отладки.
предположим, что ваше приложение имеет имя пакета как
com.company.myproject. Затем вы можете установить уровень ведения журнала для классов внутри проекта, как указано ниже в приложении.файлы свойствlogging.level.com.company. myproject = DEBUG
logging.level.org.springframework.web = DEBUGиlogging.level.org.hibernate = DEBUGбудет установлен уровень ведения журнала для классов Spring framework web и Hibernate только.для установки местоположения файла журнала используйте
ведение журнала.папка= / home / ubuntu / myproject.журнал
в случае, если вы хотите использовать другую структуру ведения журнала, log4j например, я нашел самый простой подход, чтобы отключить spring boots собственное ведение журнала и реализовать свой собственный. Таким образом, я могу настроить каждый уровень журнала в одном файле, log4j.xml (в моем случае) то есть.
для этого вам просто нужно добавить эти строки в ваш pom.XML-код:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j</artifactId> </dependency>у вас, вероятно, уже есть первая зависимость и нужны только две другие. Обратите внимание, что этот пример охватывает только log4j.
Вот и все, теперь вы все настроены на настройку ведения журнала для загрузки в вашем файле конфигурации log4j!
Если вы находитесь на Spring Boot, то вы можете напрямую добавить следующие свойства в применении.свойства файл для установки уровня ведения журнала, настроить шаблон ведения журнала и хранить журналы во внешнем файле.
Это разные уровни ведения журнала и его порядок от минимального
ВЫКЛ
# To set logs level as per your need. logging.level.org.springframework = debug logging.level.tech.hardik = trace # To store logs to external file # Here use strictly forward "/" slash for both Windows, Linux or any other os, otherwise, its won't work. logging.file=D:/spring_app_log_file.log # To customize logging pattern. logging.pattern.file= "%d{yyyy-MM-dd HH:mm:ss} - %msg%n"пожалуйста, пройдите по этой ссылке, чтобы настроить свой журнал больше ярко.
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html
для записи:официальная документация, что касается Spring Boot v1.2.0.Выпуск и пружина v4.1.3.Релиз:
Если единственное изменение, которое нужно внести в журнал должна установить уровни различных регистраторов, то вы можете сделать это в приложении.свойства с помощью " ведение журнала.префикс" уровень", например
logging.level.org.springframework.web: DEBUGlogging.level.org.hibernate: ERRORвы также можете установить расположение файла для входа в систему (в дополнение к консоль) через "вход.папка."
для настройки более тонких параметров системы ведения журнала необходимо использовать собственный формат конфигурации, поддерживаемый рассматриваемой системой ведения журнала. По умолчанию Spring Boot выбирает собственную конфигурацию из своего расположения по умолчанию для системы (например, classpath:logback.xml для Logback), но вы можете установить расположение файла конфигурации с помощью "logging.конфигурация" собственность.
в случае eclipse IDE и вашего проекта maven, не забудьте очистить и построить проект, чтобы отразить изменения.
Если вы хотите установить более подробную информацию, добавьте имя файла конфигурации журнала " logback.xml " или " logback-spring.XML."
в вашем приложении.свойства файла, введите вот так:
logging.config: classpath:logback-spring.xmlв loback-весна.xml, вводим вот так:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <include resource="org/springframework/boot/logging/logback/base.xml"/> <appender name="ROOT_APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>sys.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_DIR}/${SYSTEM_NAME}/system.%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>500MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%-20(%d{yyy-MM-dd HH:mm:ss.SSS} [%X{requestId}]) %-5level - %logger{80} - %msg%n </pattern> </encoder> </appender> <appender name="BUSINESS_APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>TRACE</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> <file>business.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOG_DIR}/${SYSTEM_NAME}/business.%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>500MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%-20(%d{yyy-MM-dd HH:mm:ss.SSS} [%X{requestId}]) %-5level - %logger{80} - %msg%n </pattern> </encoder> </appender> <logger name="{project-package-name}" level="TRACE"> <appender-ref ref="BUSINESS_APPENDER" /> </logger> <root level="INFO"> <appender-ref ref="ROOT_APPENDER" /> </root> </configuration>
Comments