Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该在哪里使用log4j中的Configuration或LoggerConfig?_Java_Logging_Configuration_Log4j_Log4j2 - Fatal编程技术网

Java 我应该在哪里使用log4j中的Configuration或LoggerConfig?

Java 我应该在哪里使用log4j中的Configuration或LoggerConfig?,java,logging,configuration,log4j,log4j2,Java,Logging,Configuration,Log4j,Log4j2,这是Log4j主要核心类的UML类图 有一个配置,它与日志上下文有一对一的关系 还有一个LoggerConfig,每个Logger实例都应该包含一个(但可以共享) 而Configuration与LoggerConfig具有聚合关系,这意味着每个Configuration都包含LoggerConfig 配置和LoggerConfig都有过滤器s和Appenders 所以我的问题是,我应该在什么时候使用每个类,每个类适合哪些用例。我的建议是,两个类都不使用。UML图显示了Log4j2在后台使用的几个

这是
Log4j
主要核心类的UML类图

有一个
配置
,它与
日志上下文
有一对一的关系

还有一个
LoggerConfig
,每个
Logger
实例都应该包含一个(但可以共享)

Configuration
LoggerConfig
具有聚合关系,这意味着每个
Configuration
都包含
LoggerConfig

配置和LoggerConfig都有
过滤器
s和
Appender
s


所以我的问题是,我应该在什么时候使用每个类,每个类适合哪些用例。

我的建议是,两个类都不使用。UML图显示了Log4j2在后台使用的几个关键类。在应用程序中,最好不要使用这些实现类中的任何一个,而只使用log4japi模块中的类

除非出于某种原因需要以编程方式配置应用程序,否则我建议您将日志记录配置与应用程序代码分开。默认情况下,Log4j2将在类路径中查找名为Log4j2.xml的配置文件。还支持其他格式,如.properties、.json和.yaml

在应用程序中,通常只需要API模块中的Logger和LogManager类