java服务器搭建(一)日志系统

2014-11-24 01:00:14 · 作者: · 浏览: 0

我是一个新入行的菜鸟,现在在做java服务器,在这里记录下服务器框架的主要构成,有任何不准确与错误的地方,希望看到的人提出意见。非常感谢!

一、概述。

1.1日志系统介绍。

任何一个应用程序或者游戏的服务器日志系统都是必须的,日志系统的主要目的是:监视代码变量变化;记录服务器访问操作记录以及异常运行操作记录;进行部分统计分析工作;担当开发环境中调试器作用,输出代码调试信息。

1.2 日志系统的选择。

现在最流行的应该是logback,网上很多log4j应该替换为logback的帖子。但是项目一般都会用到很多的框架,很多框架的日志系统都是log4j,所以我们也必须在项目中加入log4j与slf4j。我们需要的jar包包括:logback.classic-1.1.1.jar、logback-core-1.1.1.jar、slf4j-api-1.7.6.jar。是简单介绍下logback的优点,当然大部分都是网上的观点摘抄。

更快的速度。某些执行速度据说快了10倍,而且内存占用也更小了。实现了SLF4j。logback-classics实现了SLF4j,可以非常容易的切换log4j。自动重载配置文件。配置文件修改后,能自动重新加载配置文件,扫描过程快速安全。堆栈树带有包版本。自动去除旧日志文件。当然还有很多其他的优缺点比较,这里只列举我比较关心的。

1.3 下载地址。

http://logback.qos.ch/download.html 可以去官方下载最新包,以及相关文档支持。

二、配置

贴一个测试的日志配置logback.xml

    


    
	
   
    
   
    
   
    
     
    
   
    
    
     
     
      
      
       message.contains("dao")
       
      
     
      ACCEPT
      
     
      DENY
      
     
     
     
      %date %-5level [%logger{0}] %thread - %msg%n
      
     
     
     
    
   
    
    
     
      
      
       message.contains("dao")
       
      
     
      ACCEPT
      
     
      DENY
      
     
    
     ${log.base}.log
     
     
     
      ${log.base}_%d{yyyy-MM-dd}.log.zip
      
      
      
       100MB
       
      
     
     
     
      %date %-5level [%logger{0}] %thread - %msg%n
      
     
   
    
   
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
    
    
     
     
     
     
     
     
     

   

粘一个别的大神正在用的,具体设置根据项目自行编写。

  
  2 
  
   
  3 
  4     
   
  5     
   
     6 
    
      7 
     
      %date [%thread] %-5level %logger{80} - %msg%n
      8 
     9 
   
 10 
 11     
   
 12     
   
     14 
    
      15 
     
      DEBUG
      16 
     
      ACCEPT
      17 
     
      DENY 
      18 
     19 
    
      20 
     
      D:/logs/debug.%d{yyyy-MM-dd}.log
      21 
     
      30
      22 
     23 
    
      24 
     
      %date [%thread] %-5level %logger{80} - %msg%n
      25 
     26 
   
 27 
 28     
   
 29     
   
     31 
    
      32 
     
      ERROR
      33 
     
      ACCEPT
      34 
     
      DENY 
      35 
     36 
    
      37 
     
      D:/logs/error.%d{yyyy-MM-dd}.log
      38 
     
      30
      39 
     40 
    
      41 
     
      %date [%thread] %-5level %logger{80} - %msg%n
      42 
     43 
   
 44 
 45     
   
 46     
   
     48 
    
      49 
     
       50 
      
       message.contains("str")
       51 
      52 
     
      ACCEPT
      53 
     
      DENY
      54 
     55 
    
      56 
     
      D:/logs/contains.%d{yyyy-MM-dd}.log 57 
      58 
     
      30
      59 
     60 
    
      61 
     
      %date [%thread] %-5level %logger{80} - %msg%n
      62 
     63 
   
 64 
 65     
   
 66     
   
     67 
    
      69 
     
      com.
      mysql.jdbc.Driver
      70 
     
      jdbc:mysql://host_name:3306/datebase_name
      71 
     
      username
      72 
     
      password
      73 
     74 
   
 75 
 76     
   
     77 
     78 
   
 79     
   
     80 
     81 
   
 82     
   
     83 
     84 
   
 85     
   
     86 
     87 
   
 88     
   
     89 
     90 
   
 91     
   
     92 
     93 
   
 94     
   
     95 
     96 
   
 97     
   
     98 
     99 
   
100     
   
     101 
     102 
   
103 
104     
   
     105 
     106 
     107 
     108 
     109 
     110 
   
111 
112