温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在云环境上使用SLF4J对Java程序进行日志记录

发布时间:2022-01-05 10:32:09 来源:亿速云 阅读:146 作者:柒染 栏目:云计算

这篇文章给大家介绍如何在云环境上使用SLF4J对Java程序进行日志记录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

我开发了一个Java应用,部署到云环境上之后,用postman测试发现不能按照我期望的工作,但是返回的消息对我没有任何帮助。

如何在云环境上使用SLF4J对Java程序进行日志记录

因为部署在云端的应用很难像本地Java应用一样调试,所以我打算用SLF4J在Java代码里添加一些日志,然后查看该Java应用在云端执行产生的日志来排查问题。

SLF4J的全称是Simple Logging Facade for Java, 即简单日志门面,这里的Facade实际上是面向对象的设计模式中的外观模式(Facade pattern)。SLF4J不是具体的日志解决方案,它本身不包含日志记录的具体实现,而是只提供一个外观给各种各样的日志系统,这样就给具体应用提供了很大的灵活度,使得最终用户在部署其应用时可以灵活选用其所希望的日志系统。

SLF4J的使用非常简单,在您的应用代码里将SLF4J的Logger和LoggerFactory导入:

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

然后在引用代码里用LoggerFactory获得logger实例:

static private Logger logger = LoggerFactory.getLogger(XCDService.class);

如何在云环境上使用SLF4J对Java程序进行日志记录

然后用logger.info进行日志记录。

将加了SLF4J日志记录的代码重新上传到云平台上。我用的是SAP云平台。

登录SAP云平台的控制台,点击Logging标签页:

如何在云环境上使用SLF4J对Java程序进行日志记录

点Configure Loggers:

如何在云环境上使用SLF4J对Java程序进行日志记录

因为我的应用代码放在com.sap.service包下面,所以我根据这个包名进行过滤:

如何在云环境上使用SLF4J对Java程序进行日志记录

将这两个Logger对应的Log Level日志级别设置成INFO:

如何在云环境上使用SLF4J对Java程序进行日志记录

再次用postman请求部署在SAP云平台上的服务,然后去云平台控制台上查看生成的日志文件:

如何在云环境上使用SLF4J对Java程序进行日志记录

如何在云环境上使用SLF4J对Java程序进行日志记录

点击查看按钮即可看到日志的具体内容,一下子就定位出问题的原因了。我在服务器端的HTTP响应头字段Content-type设置的值为application/json,但是返回的JSON字符串不符合JSON格式规范。把这个bug改掉之后错误就解决了。

如何在云环境上使用SLF4J对Java程序进行日志记录

关于如何在云环境上使用SLF4J对Java程序进行日志记录就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI