eclipse能打印日志,但是生成的日志文件为空是怎么回事
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了eclipse能打印日志,但是生成的日志文件为空是怎么回事相关的知识,希望对你有一定的参考价值。
你的问题不清楚,你是在做什么,java的应用还是eclipse的插件,或者是j2ee。eclipse的机制是osgi,自带了log服务,需要调用该服务记录日志。然后使用log的reader服务检查日志并输出到日志中。
不过我想你这种可能性不大。多数是java应用。日志文件其实就是个名称,把需要记录的信息存在一个文件,当系统异常的时候看看日志,可以推测出为什么发生的异常。如果简单的话,直接代码中写文件就可以了。比较标准的是使用日志的第三方工具。 常用的有log4j ,java.util.logging.Logger ,logback,slf4j等等。具体用哪个,你可以自己去查。初学的话,推荐学logback,比较流行,也容易上手。log4j已经停止更新了。 参考技术A 你没有往你的日志文件写内容, 这只是后台LogCat打印.追问
这个是不是不会自动打印数据到logcat文件,必须选中若干条目的日志,点击导出,才能导出到文件。
追答可以导出控制台的日志,
也可以用命令 : adb logcat -d > logcat.txt
推广项目之日志打印
项目引用org.slf4j打印日志,配置文件logback-spring.xml设置了日志打印路径。日志文件类型分为error.log、warn.log、info.log、debug.log,各种类型的文件输出满10M就会自动汇总生成带有日期的大文件,每天自动汇总生成带有日期的大文件。
error.log:打印的是各种需要输出的错误日志或者需要重点分析的未知日志,
类中打印方式:LOGGER.error("### doMPMonitorFollows error: uid={}, message={}", uid, e);
warn.log:打印的是项目中出现的预警日志,对当前项目没有影响,暂时未考虑;
info.log:打印的是各种需要输出的基本信息提供分析依据,在测试阶段的线上生产环境中我总喜欢在子服务器中打印主服务器分配动态配置参数以及复杂业务的耗时,
类中打印方式:LOGGER.info("...{}", System.currentTimeMillis() - startTime);
debug.log:打印的是SQL语句,很好的提供了SQL语句的分析日志
本地测试环境error.log、warn.log、info.log、debug.log都会开启,部署上生产环境后为了避免大量日志的打印同时分析重点的业务日志只需要开启error.log(重点分析异常日志的打印)、info.log(控制了大量日志输出)。注意必须禁止debug.log日志打印,后台大量的SQL语句日志很容易造成服务器磁盘不足。
拨号服务器上的工程如xx-robot-task根据业务需求尽量避免风险禁止某些敏感的日志的打印,但是在异步调用接口引入的org.apache.http会自动超时打印敏感日志,我只需在配置文件中控制不打印,在logback-spring.xml引入<logger name="org.apache.http.impl.execchain.RetryExec" level="OFF" />即可。
服务器部署的后台9个子工程打印的日志和文件都放在一起,能便利的删除或预览日志以及重启某个服务,日志文件夹生产如下:
以上是关于eclipse能打印日志,但是生成的日志文件为空是怎么回事的主要内容,如果未能解决你的问题,请参考以下文章
关于在eclipse上能运行Map但无法运行Reduce的解决方法
我在哪里可以查看 Eclipse 中的 Tomcat 日志文件?
[fixed] 解决 slf4j + log4j eclipse 可以打印日志,而在云服务器上不能打印