日志
什么是日志
是一种记录系统运行时信息的方式 (这些信息可以包括程序的状态、错误消息、警告、调试信息等)
-
调试和故障排除
查看日志,可以了解程序执行过程中的各个步骤和状态,可以快速定位和修复问题
-
监控和性能分析
监控应用程序的运行状况和性能。你可以记录关键指标,分析日志数据,可以发现潜在的性能问题,并采取措施来改进应用程序的性能。
-
了解用户行为
收集用户数据,记录用户的行为、偏好和操作
-
安全性
通过记录安全事件和潜在的风险,可以更好地保护应用程序和用户数据。
日志级别
-
跟踪日志(TRACE)
输出最详细的调试信息,通常用于开发调试目的。(生产环境中通常关闭)
-
调试日志(DEBUG)
用于输出程序中的一些调试信息。(生产环境中通常关闭)
-
信息日志(INFO)
用于输出程序正常运行时的一些关键信息,比如程序的启动、运行日志等。(生产环境中通常开启)
-
警告日志(WARN)
输出警告信息,提示程序可能会出现一些异常或者错误。在应用程序中,WARN 级别的日志记录通常用于记录一些非致命性异常信息
-
错误日志(ERROR)
是用于输出程序运行时的一些错误信息,通常表示程序出现了一些不可预料的错误。在应用程序中,ERROR 级别的日志记录通常用于记录一些致命性的异常信息
-
致命日志(FATAL)
最高级,程序出现不可恢复的致命错误
如何写日志
-
选择恰当的日志级别
根据信息的重要性和紧急程度
-
打印有用信息
提供足够的信息(记录事件的时间戳,发生事件的模块或函数,相关参数和数据等)
-
注意日志格式
对可读性和可分析性非常重要
-
避免泄露敏感信息
不要泄露如密码,API密钥或个人数据等,确保在生产环境中关闭或模糊化任何可能包含敏感信息的日志。
System.out.println 打印日志的不足
-
大量的IO操作
消耗性能
-
控制台输出
无法保存日志文件
-
同步操作
会影响进程
-
无法控制输出
没有日志打印开关
SLF4J
什么是SLF4J
SLF4J (Simple Logging Facade for Java) 是 Ceki Gulci 开发的一个日志门面接口 (即 Facade 或 外观模式) ,用于让应用程序可以通过这些接口来记录日志信息而不需要直接引用具体的日志框架
-
使用 SLF4J 应用程序就可以在不同的日志框架之间进行灵活配置和切换,同时还可以获得更好的性能表现
和外观模式
SpringBoot默认使用Logback
-
记录器(Loggers)
按照布局中指定的格式把日志信息写入一个或多个输出源
-
输出源(Appenders)
日志输出可以是控制台、文本文件、XML文件或Socket 等
-
布局(Logouts)
__EOF__

本文链接:https://www.cnblogs.com/3-DG/p/17745342.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现