JAVA使用笔记一(配置日志文件logback以及jetty配置)

来源:互联网 发布:农田测亩仪软件下载 编辑:程序博客网 时间:2024/06/16 18:22

工具IDEA 2016.2

工程maven.(无任何模板)

日志logback

参考地址http://blog.csdn.net/chunming8302/article/details/7321314

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <configuration>  
  3.     <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->    
  4.     <property name="LOG_HOME" value="c:/log" />    
  5.     <!-- 控制台输出 -->     
  6.     <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">  
  7.        <!-- 日志输出编码 -->    
  8.        <Encoding>UTF-8</Encoding>     
  9.         <layout class="ch.qos.logback.classic.PatternLayout">     
  10.              <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->   
  11.             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n     
  12.             </pattern>     
  13.         </layout>     
  14.     </appender>     
  15.     <!-- 按照每天生成日志文件 -->     
  16.     <appender name="FILE"  class="ch.qos.logback.core.rolling.RollingFileAppender">     
  17.         <Encoding>UTF-8</Encoding>     
  18.         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
  19.             <!--日志文件输出的文件名-->  
  20.             <FileNamePattern>${LOG_HOME}/myApp.log.%d{yyyy-MM-dd}.log</FileNamePattern>     
  21.             <MaxHistory>30</MaxHistory>  
  22.         </rollingPolicy>     
  23.         <layout class="ch.qos.logback.classic.PatternLayout">    
  24.             <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->   
  25.             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n     
  26.             </pattern>     
  27.        </layout>   
  28.         <!--日志文件最大的大小-->  
  29.        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">  
  30.          <MaxFileSize>10MB</MaxFileSize>  
  31.        </triggeringPolicy>  
  32.     </appender>   
  33.    <!-- show parameters for hibernate sql 专为 Hibernate 定制 -->    
  34.     <logger name="org.hibernate.type.descriptor.sql.BasicBinder"  level="TRACE" />    
  35.     <logger name="org.hibernate.type.descriptor.sql.BasicExtractor"  level="DEBUG" />    
  36.     <logger name="org.hibernate.SQL" level="DEBUG" />    
  37.     <logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />    
  38.     <logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" />    
  39.       
  40.     <!-- 日志输出级别 -->  
  41.     <root level="INFO">     
  42.         <appender-ref ref="STDOUT" />     
  43.         <appender-ref ref="FILE" />     
  44.     </root>   
  45.        
  46.      <!--日志异步到数据库 -->    
  47.     <appender name="DB" class="ch.qos.logback.classic.db.DBAppender">  
  48.         <!--日志异步到数据库 -->   
  49.         <connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">  
  50.            <!--连接池 -->   
  51.            <dataSource class="com.mchange.v2.c3p0.ComboPooledDataSource">  
  52.               <driverClass>com.mysql.jdbc.Driver</driverClass>  
  53.               <url>jdbc:mysql://127.0.0.1:3306/databaseName</url>  
  54.               <user>root</user>  
  55.               <password>root</password>  
  56.             </dataSource>  
  57.         </connectionSource>  
  58.   </appender> -->  
  59. </configuration>  

使用

  1. import org.slf4j.Logger;  
  2. import org.slf4j.LoggerFactory;  
  3.   
  4. public class BlogAction{  
  5.      //定义一个全局的记录器,通过LoggerFactory获取  
  6.      private final static Logger logger = LoggerFactory.getLogger(BlogAction.class);   
  7.      /** 
  8.      * @param args 
  9.      */  
  10.     public static void main(String[] args) {  
  11.         logger.info("logback 成功了");  
  12.         logger.error("logback 成功了");  
  13.     }  
  14. }  

日志如果想使用相对变量。有这几个参考
  1. <file>${user.dir}/logs/jtheque.log</file>  
tomcat下可以用:${catalina.base}/logs/your_log.log

jetty使用指南
mvn org.mortbay.jetty:maven-jetty-plugin:run   这个会自动下载并运行。(我个人建议采用该方法运行)



如果需要使用jetty:run,(就是mvn jetty:run)那么必须在maven的setting.xml下配置
[plain] view plain copy
  1. <pluginGroups>  
  2.     <pluginGroup>org.mortbay.jetty</pluginGroup>  
  3.   </pluginGroups>  

或者在对应项目的pom.xml中plugins的节点下添加配置

[sql] view plain copy
  1. <plugin>  
  2.                 <groupId>org.mortbay.jetty</groupId>  
  3.                 <artifactId>jetty-maven-plugin</artifactId>  
  4.                 <configuration>  
  5.                     <webApp>  
  6.                         <contextPath>/</contextPath>  
  7.                     </webApp>  
  8.                     <stopKey>webx</stopKey>  
  9.                     <stopPort>9999</stopPort>  
  10.                     <connectors>  
  11.                         <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">  
  12.                             <port>8081</port>  
  13.                             <maxIdleTime>60000</maxIdleTime>  
  14.                         </connector>  
  15.                     </connectors>  
  16.                     <requestLog implementation="org.eclipse.jetty.server.NCSARequestLog">  
  17.                         <filename>target/access.log</filename>  
  18.                         <retainDays>90</retainDays>  
  19.                         <append>false</append>  
  20.                         <extended>false</extended>  
  21.                         <logTimeZone>GMT+8:00</logTimeZone>  
  22.                     </requestLog>  
  23.                     <systemProperties>  
  24.                         <systemProperty>  
  25.                             <name>productionMode</name>  
  26.                             <value>${productionMode}</value>  
  27.                         </systemProperty>  
  28.                     </systemProperties>  
  29.                 </configuration>  
  30.             </plugin>  




0 0
原创粉丝点击