日志打印位置的选择
2014-02-10 16:08
155 查看
某天,测试的小伙伴提交了一个生产环境的问题,于是down下日志文件开始定位问题,但是在文件中没有发现报错信息的打印。然后翻着代码看了下,发现了代码中的打印日志的问题(以下代码仅供参考,非实际代码):
上面代码中e.printStackTrace()方法把日志没有打印到log4j配置的日志文件内,而是打印到了控制台上(tomcat下对应logs目录下的catalina.out文件)。在利用eclipse开发的时候是没有问题的,可以利用这行代码向Console窗口内打印日志,但是在生产环境下我们既然指定了日志文件,就不应该再向标准的控制台打印消息,故应该把代码改成下面的样子:
改完此处代码后然后继续排查定位小伙伴提出的问题……
PS: 大家也不要再使用System.out.println("******");这种方式打印日志了,会产生同样的问题的===(*^__^*)
try { Long id = Long.valueOf(param); } catch (Exception e) { e.printStackTrace(); }
上面代码中e.printStackTrace()方法把日志没有打印到log4j配置的日志文件内,而是打印到了控制台上(tomcat下对应logs目录下的catalina.out文件)。在利用eclipse开发的时候是没有问题的,可以利用这行代码向Console窗口内打印日志,但是在生产环境下我们既然指定了日志文件,就不应该再向标准的控制台打印消息,故应该把代码改成下面的样子:
try { Long id = Long.valueOf(param); } catch (Exception e) { logger.error("转换参数失败", e); }
改完此处代码后然后继续排查定位小伙伴提出的问题……
PS: 大家也不要再使用System.out.println("******");这种方式打印日志了,会产生同样的问题的===(*^__^*)
相关文章推荐
- 未能在指定文件夹中创建本地存储区,请选择其他位置。可以检查事件日志以了解详细信息
- Log4j 把不同包的日志打印到不同位置
- 搜索引擎solr系列---日志打印位置
- log4j配置把日志打印到指定的位置
- Log4j 把不同包的日志打印到不同位置
- day06-1static 使用静态方法并生成文档取最值,选择排序,冒泡排序,位置交换,打印数组元素
- VS2010安装MSDN出错:“未能在指定文件夹中创建本地存储区,请选择其他位置。可以检查事件日志以了解详细信息”
- web项目的日志打印位置设置
- 工具类——Log日志打印,输出到文件,过滤显示日志位置
- Log4j 把不同包的日志打印到不同位置
- tomcat的log日志打印位置
- mysql语句查询-从表中选择想查看的位置和条数
- 使用Log4j打印日志
- 解决多个py模块调用同一个python的logging模块,打印日志冲突问题
- 为apache重新指定日志生成位置,每天生成一个文件
- Activiti开启打印SQL查询日志
- linux screen打印日志
- SpringBoot使用logback输出日志并打印sql信息
- 写了个android简洁的日志打印工具类。