如何使日志记录组件在整个 Spring 启动应用程序中可见
How to make logging components visible across whole Spring Boot application
我正在 运行 Spring 启动,我想向我的应用程序添加日志记录。所有示例的主应用程序入口点均具有以下内容:
private static final Logger log = LoggerFactory.getLogger(Application.class);
但是,我希望相同的日志变量在我的所有应用程序组件(服务、控制器等)中可见(作为 Singleton)。我该怎么做?谢谢!
您可以创建静态 class.. 其中包含:
private static final Logger log = LoggerFactory.getLogger(StaticLog.class);
并将公开写入日志的方法..
希望能满足您的需求
您可以使用 springs IoC 容器来实现这一点。
只需在@Configuration cass 中像这样配置一个bean
@Bean
public Logger log() {
return LoggerFactory.getLogger(AnyClassYouWant.class);
}
并在你的 class
中使用 @Autowired 注入它
class WhatEver {
@Autowired
Logger log;
//...
}
我正在 运行 Spring 启动,我想向我的应用程序添加日志记录。所有示例的主应用程序入口点均具有以下内容:
private static final Logger log = LoggerFactory.getLogger(Application.class);
但是,我希望相同的日志变量在我的所有应用程序组件(服务、控制器等)中可见(作为 Singleton)。我该怎么做?谢谢!
您可以创建静态 class.. 其中包含:
private static final Logger log = LoggerFactory.getLogger(StaticLog.class);
并将公开写入日志的方法..
希望能满足您的需求
您可以使用 springs IoC 容器来实现这一点。
只需在@Configuration cass 中像这样配置一个bean
@Bean
public Logger log() {
return LoggerFactory.getLogger(AnyClassYouWant.class);
}
并在你的 class
中使用 @Autowired 注入它class WhatEver {
@Autowired
Logger log;
//...
}