刚整了个在线查看系统项目日志的方法,步骤挺简单的,分享下。

不知道大家有过样的感觉没,每次系统有问题,都得跑到服务器去查看日志,一行行命令敲感觉很麻烦。

刚一时兴起,整了个在线看项目日志的方法。希望别火星

我们项目用的日志框架是log4j。

步骤还挺简单的。

首先配置log4f的日志输出格式,以前我们输入到文件的日志默认布局方式是PatternLayout,现在我们改成HTMLLayout.就行了,日志按成生成

如下配置

log4j.rootLogger=info,console,file
#控制台输出
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
#应用到文件
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern=yyyy-MM-dd'.html'
log4j.appender.file.File=log/appStore_
#log4j.appender.file.DatePattern=yyyy-MM-dd'.log'
log4j.appender.file.layout=org.apache.log4j.HTMLLayout
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

生成的文件保存在xxxx/log/目录。

接下来我们的用到nginx(web容器都可以),配置下。

编辑 nginx 配置文件 nginx.conf,分配一个端口专门用来看项目的日志文件

      server {
    listen 9098;
    server_name localhost;
    charset utf-8;
    location / {
       
         root D:/xxx/log;
         autoindex on ;
    }
  }

启动ngix。输入http://localhost:9098/ 
可以看到日志列表

 

 

 点击第一个,效果还不错。

 

 

缺点:如果日志很大很大,比如一天的日志可以达到1G就不适合这个方法了。

解决办法:严格控制日志文件的大小,尽量少使用debug级别的日志,或者把不同包的日志输入到不同文件,按天生成的文件同理。

posted @ 2012-12-02 16:00  montya  阅读(1407)  评论(0编辑  收藏  举报