我想创建一个日志文件并保存由Web服务POST提供的信息。
对象记录器创建如下:
private static final Logger logger = Logger.getLogger(B2BUnitController.class.getName());
我不知道如何继续制作日志文件并保存信息。
由于您是使用 log4j。 将以下内容添加到项目属性文件中
logging.path=/data/logs
logging.level.root=INFO
logging.file=/data/logs/test.log
logging.pattern.console="%d{yyyy-MM-dd HH:mm:ss} -----| %msg%n"
logging.pattern.file="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} ----| %msg%n"
基本上上面的代码将创建文件夹data/logs
然后在该文件夹中创建名为test.log
的日志文件。
最后记录您的信息
如下private static final Logger logger = Logger.getLogger(B2BUnitController.class.getName());
logger.info("information received {}",objectWithInformationThatShouldGoInLogs);
然后你完成了,它将在你的控制台和文件中打印日志。
以 JSON 格式查看日志。
添加以下 Gson 依赖项。
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.7</version>
</dependency>
然后
private static final Logger logger = Logger.getLogger(B2BUnitController.class.getName());
private static Gson gson = new GsonBuilder().setPrettyPrinting().create();
logger.info("information received {}",gson.ToJson(objectWithInformationThatShouldGoInLogs));
您可以在以下站点上阅读有关日志的详细信息
SLF4J贝尔东简介
使用 SLF4J Dzone
格森·贝尔东
*NB yml 属性文件
logging:
path: /data/logs/
level:
root: INFO
org:
springframework:
security: INFO
file: /data/logs/test.log
pattern:
console: "%d{yyyy-MM-dd HH:mm:ss} -----| %msg%n"
file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} ----| %msg%n"