Рубрики
Без рубрики

пример файла log4j.properties

В учебнике log4j мы рассмотрели, как использовать конфигурацию на основе xml log4j. Но log4j.xml является подробным, поэтому платформа log4j предоставляет возможность считывать конфигурацию из

Автор оригинала: Pankaj Kumar.

В учебнике log4j мы рассмотрели , как использовать конфигурацию на основе xml log4j. Но log4j.xml является подробным, поэтому платформа log4j предоставляет возможность считывать конфигурацию из файла свойств в.

Поскольку файл свойств не имеет определенной схемы для проверки, мы должны быть более осторожны с ним. Сегодня мы увидим, как конфигурации XML могут быть преобразованы в конфигурацию на основе свойств.

Корневой Регистратор

Корневой регистратор используется, когда нет совпадения с регистратором. Он определен, как показано ниже, в XML.


	
	
	

Его можно определить в файле свойств, как показано ниже.

log4j.rootLogger=DEBUG, file, console

Первое значение в списке, разделенном запятыми, – это значение корневого уровня ведения журнала. Все остальные значения являются добавками.

Приложение Log4j

У нас может быть несколько приложений в log4j. Ниже приведены два приложения, одно для ведения журнала консоли, а другое для файла.



	
	
		
	




	
	
	
	
	

	
		
	

В файле log4j.properties они будут определены, как показано ниже.

#Define console appender
log4j.appender.console=org.apache.log4j.ConsoleAppender
logrj.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-5p %c{1} - %m%n

#Define rolling file appender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logs/main.log
log4j.appender.file.Append=true
log4j.appender.file.ImmediateFlush=true
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=5
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %d{Z} [%t] %-5p (%F:%L) - %m%n

Таким образом, формат для добавления файла свойств log4j: log4j.appender.{имя приложения}.{appender_config} . Обратите внимание, что конфигурации приложений, такие как MaxFileSize , MaxBackupIndex , такие же, как в файле конфигурации XML.

Регистраторы Log4j

Так же, как и у приложений, у нас может быть несколько регистраторов. Например, конфигурация на основе xml;


	
	
	



	
	

Они будут определены в файле свойств как log4j.logger.{имя_логгера} . Значения содержат уровень ведения журнала и список используемых приложений.

#Define loggers
log4j.logger.com.journaldev.log4j=WARN, file, console
log4j.logger.com.journaldev.log4j.logic=DEBUG, file, console

Аддитивность регистратора Log4j

Использование аддитивности показано в приведенной выше конфигурации xml регистратора, это атрибут элемента регистратора. Ниже приведен способ его использования в конфигурации файла свойств log4j как log4j.additivity.{имя пользователя} .

#setting additivity
log4j.additivity.com.journaldev.log4j=false
log4j.additivity.com.journaldev.log4j.logic=false

Исходя из вышесказанного, ниже приведен мой окончательный файл log4j.properties.

#Define root logger options
log4j.rootLogger=DEBUG, file, console

#Define console appender
log4j.appender.console=org.apache.log4j.ConsoleAppender
logrj.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-5p %c{1} - %m%n

#Define rolling file appender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logs/main.log
log4j.appender.file.Append=true
log4j.appender.file.ImmediateFlush=true
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=5
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %d{Z} [%t] %-5p (%F:%L) - %m%n

#Define loggers
log4j.logger.com.journaldev.log4j=WARN, file, console
log4j.logger.com.journaldev.log4j.logic=DEBUG, file, console

#setting additivity
log4j.additivity.com.journaldev.log4j=false
log4j.additivity.com.journaldev.log4j.logic=false

Конфигуратор свойств Log4j

PropertyConfigurator используется для настройки параметров log4j. Это необязательно, если имя файла log4j.properties и он находится в пути к классу проекта. Мы должны настроить его перед использованием регистратора.

Вот простая программа, показывающая, как настроить и использовать ведение журнала log4j.

package com.journaldev.log4j.main;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

import com.journaldev.log4j.logic.MathUtils;

public class Log4jExample {

	static{
		init();
	}
	
	private final static Logger logger = Logger.getLogger(Log4jExample.class);
	
	public static void main(String[] args) {

		logger.debug("My Debug Log");
		logger.info("My Info Log");
		logger.warn("My Warn Log");
		logger.error("My error log");
		logger.fatal("My fatal log");
				
	}

	/**
	 * method to init log4j configurations
	 */
	private static void init() {
		PropertyConfigurator.configure("log4j.properties");
	}

}

Когда он будет выполнен, вы получите ниже в журнале консоли.

WARN  Log4jExample - My Warn Log
ERROR Log4jExample - My error log
FATAL Log4jExample - My fatal log

В то же время вы увидите, что журналы создаются в файле main.log, как показано ниже.

2016-05-14 00:34:11,994 +0530 [main] WARN  (Log4jExample.java:20) - My Warn Log
2016-05-14 00:34:11,995 +0530 [main] ERROR (Log4jExample.java:21) - My error log
2016-05-14 00:34:11,995 +0530 [main] FATAL (Log4jExample.java:22) - My fatal log

Обратите внимание, что отладка и регистратор информации не печатаются, поскольку минимальный уровень ведения журнала установлен как ПРЕДУПРЕЖДЕНИЕ. Это все для примера использования файла свойств log4j. Счастливого Входа в систему!