zoukankan      html  css  js  c++  java
  • tomcat log4j配置

    tomcat默认的log使用的是java.util.logging,配置文件在${catalina_base}/conf/logging.properties

    tomcat日志分类,

    1.access log,即tomcat webserver访问日志,

    2.运行日志,

    3.console日志,

    不一定这么分,但我觉得console日至比较特别,因为我对tomcat了解得并不多

    =============================================================================

    access日志

    位置:${catalina_base}/conf/server.xml

            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log." suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" />

    因为我现在不特别关心访问日志,详细信息可以参考http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html 中的 Access Log Valve

    =============================================================================

     console控制台日志,定义在catalina.sh文件中,

    http://www.cnblogs.com/liuyf8688/archive/2012/09/25/2703102.html

    在类Unix的系统中运行Tomcat,控制台输入通常会被重定向到catalina.out文件中。文件名称是可以通过一个环境变量配置的(查看startup脚本)。所有写到System.err/out中的信息都会被捕捉到写入到这个文件。包括: 通过java.lang.ThreadGroup.uncaughtException(…)打印的未被捕获的异常信息 请求导出的线程运行信息 当运行作为一个Windows服务时,控制台输出也是被捕获并重定向,但文件名是不同的。Apache Tomcat默认的日志配置写相同的日志到控制台和日志文件。当使用Tomcat作为开发时,这一点非常好,但通常生产环境不需要这样做。

    如何关闭该日志,修改catalina.sh,

    将CATALINA_OUT设置为/dev/null

    ===========================================================================

    使用log4j替代java.util.logging

    步骤:

    1.创建$CATALINA_BASE/lib/log4j.properties

    log4j.rootLogger=INFO, CATALINA, SYSLOG
    
    # Define all the appenders
    log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.log
    log4j.appender.CATALINA.Append=true
    log4j.appender.CATALINA.Encoding=UTF-8
    # Roll-over the log once per day
    log4j.appender.CATALINA.DatePattern='.'yyyy-MM-dd'.log'
    log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
    log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    
    log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.log
    log4j.appender.LOCALHOST.Append=true
    log4j.appender.LOCALHOST.Encoding=UTF-8
    log4j.appender.LOCALHOST.DatePattern='.'yyyy-MM-dd'.log'
    log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
    log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    
    log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.MANAGER.File=${catalina.base}/logs/manager.log
    log4j.appender.MANAGER.Append=true
    log4j.appender.MANAGER.Encoding=UTF-8
    log4j.appender.MANAGER.DatePattern='.'yyyy-MM-dd'.log'
    log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
    log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    
    log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.log
    log4j.appender.HOST-MANAGER.Append=true
    log4j.appender.HOST-MANAGER.Encoding=UTF-8
    log4j.appender.HOST-MANAGER.DatePattern='.'yyyy-MM-dd'.log'
    log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
    log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    
    log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
    log4j.appender.CONSOLE.Encoding=UTF-8
    log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
    log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    
    log4j.appender.SYSLOG = org.apache.log4j.net.SyslogAppender
    log4j.appender.SYSLOG.syslogHost = 127.0.0.1
    log4j.appender.SYSLOG.layout = org.apache.log4j.PatternLayout
    log4j.appender.SYSLOG.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
    log4j.appender.SYSLOG.Facility = LOCAL0
    
    # Configure which loggers log to which appenders
    log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO, LOCALHOST, SYSLOG
    log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=
      INFO, MANAGER, SYSLOG
    log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=
      INFO, HOST-MANAGER, SYSLOG

    2.到tomcat网站下载页面的extras(http://tomcat.apache.org/download-70.cgi)部分下载JULI adapters jarJULI log4j jar下载这两个包

    下载log4j.jar(log4j-1.2.17.jar)

    3.将log4j.jar和tomcat-juli-adapters.jar放入${catalina_base}/lib目录下,将tomcat-juli.jar,替换${catalina_base}/bin目录下的tomcat-juli.jar文件

    4.删除conf/logging.properties

    5.修改/etc/rsyslog.conf,添加如下两行

    $ModLoad imudp
    $UDPServerRun 514

    6.重启rsyslogd

  • 相关阅读:
    实习小白::(转) 官网文档 -->> 骨骼动画详解-Spine
    实习小白::(转) 在cocos2d-x中使用CCArmature实现骨骼动画
    实习小白::(转) 骨骼动画 vs. 精灵表(sprite sheets)
    实习小白::(转) Cocos2d-x 更改文字换行风格 ( cocos2dx change line )
    实习小白::(转) Cocos2d-x 3.x 开发(十八)10行代码看自动Batch,10行代码看自动剔除 --------其实就是渲染图片机制
    实习小白::(转) Cocos2d-x 3.0 开发(十七)使用Cocos2d-x 3.0rc,一条命令打包Android
    实习小白::(转) Cocos2d-x 3.0 开发(十六)cocos2dx-3.0beta版建立新项目并加载CocoStudio导出文件
    实习小白::(转) Cocos2d-x 3.0 开发(十五)使用UILayout布局,制作对话界面
    实习小白::(转) Cocos2d-x 3.0 开发(十四)使用UIScrollView 实现大小不同物品拖动展示
    实习小白::(转) Cocos2d-x 3.0开发(十三)使用CocoStudio编辑帧事件并关联到程序
  • 原文地址:https://www.cnblogs.com/silenceli/p/3506409.html
Copyright © 2011-2022 走看看