最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django實現(xiàn)日志按日期分割

 更新時間:2020年05月21日 09:38:51   作者:Christian_yang  
這篇文章主要介紹了django實現(xiàn)日志按日期分割,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

settings文件中配置:

LOGGING = {
  'version':1,
  'disable_existing_logger':False,
  'formatters':{
    'verbose':{
      'format':'%(asctime)s \"%(pathname)s:%(module)s:%(funcName)s:%(lineno)d\" [%(levelname)s]-%(message)s'
    },
  },
  # 處理器
  'handlers':{
    # 輸出控制臺
    'console':{
      'level':'INFO',
      'class':'logging.StreamHandler',
      'formatter':'verbose'
    },
    # 輸出文件
    'file':{
      'level':'DEBUG',
      'class':'logging.handlers.TimedRotatingFileHandler',
      'filename':'logs/blog.log',
      'formatter':'verbose',
      # 每分鐘切割一次日志
      'when':'M',
      # 時間間隔
      'interval':1,
      # 保留5份日志
      'backupCount':5,
      'encoding':'utf-8'
    },
  },
  # 記錄器
  'loggers':{
    'django':{
      'handlers':['console','file'],
      'level':'INFO',
      'propagete':True,
    },
  }
}

項目啟動時,win系統(tǒng)下,添加 --noreload :python manage.py runserver --noreload ,防止PermissionError報錯;

pycharm使用時,在此添加參數(shù)

補充知識:logback輸出日志:時間分割(每天生成相同名稱的log文件,舊文件以時間分類)

private final static Logger logger = LoggerFactory.getLogger(SyncIntegralService.class);

今天經(jīng)理又提出了一個奇怪的需求,很是蛋疼,就是:每天生成相同名稱的log文件,舊文件以時間分類

只有一個"log.log"的文件,7日(今天)生成的日志是以 “l(fā)og.log”的形式存儲的,當?shù)?日(明天)的時候是把7日生成的log.log文件保存到log.log201400707.log,然后在創(chuàng)建一個8日的log.log文件,依次類推。

現(xiàn)在很清晰是什么需求了吧,先貼項目之前的logback文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
 <encoder>
  <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
  </pattern>
 </encoder>
 </appender>
 
 <appender name="eventFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  <fileNamePattern>${catalina.base}/logs/EventAnalysis/EventAnalysis.%d{yyyy-MM-dd}.log</fileNamePattern>
  <maxHistory>30</maxHistory>
 </rollingPolicy>
 <encoder>
  <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
 </encoder>
 </appender>
 
 <logger name="com.travelsky.eventanalysis.dao" additivity="true">
 <level value="DEBUG" />
 </logger>
 
 <root level="info">
 <appender-ref ref="eventFile" />
 <appender-ref ref="STDOUT"/>
 </root> 
</configuration>

仔細看看還是很簡單的,就是每天生成文件以時間分類,輸出級別是debug,還有輸出形式等。。具體是這樣的

好了,現(xiàn)在貼上需求大代碼

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
 <encoder>
  <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
  </pattern>
 </encoder>
 </appender>
 
 <!-- 日志生成位置 -->
 
 <appender name="eventFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
  <File>${catalina.base}/logs/BigeyeCenter/BigeyeCenter.log</File>
  <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
   <!-- daily rollover 保存歷史記錄到這個文件夾一日起為后綴 -->
   <FileNamePattern>${catalina.base}/logs/BigeyeCenter/BigeyeCenter.%d{yyyy-MM-dd}.log</FileNamePattern>
   <!-- keep 30 days' worth of history -->
   <maxHistory>30</maxHistory>
  </rollingPolicy>
  <encoder>
   <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</Pattern>
   <charset>UTF-8</charset> <!-- 此處設置字符集 -->
  </encoder>
 </appender>
 
 <logger name="com.travelsky.updateDatabase.dao" additivity="true">
 <level value="DEBUG" />
 </logger>
 
 <!-- 打印 日志級別-->
 <root level="info">
 <appender-ref ref="eventFile" />
 <appender-ref ref="STDOUT"/>
 </root> 
</configuration>

呵呵,其實就是加上了一行代碼,這就浪費了一天的時間。。。,其實剛開始想寫一個文件的覆蓋,用java代碼控制。后來才發(fā)現(xiàn)資源一直被占用,因為tomcat一直在占用相同的log文件,這里就不貼碼了

看一下效果

看一下修改日期和生成日期你就看懂了。。。

希望能給小伙伴們幫助,別學我~

以上這篇django實現(xiàn)日志按日期分割就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

南木林县| 桐梓县| 麟游县| 沭阳县| 南丹县| 辽宁省| 汤原县| 汉川市| 子洲县| 衡水市| 海安县| 临漳县| 马尔康县| 大悟县| 伊春市| 前郭尔| 西乌| 巩留县| 涞水县| 邵阳市| 金阳县| 铁岭市| 康马县| 永川市| 开封县| 海门市| 隆林| 佛坪县| 呼和浩特市| 黑龙江省| 平顺县| 平山县| 班戈县| 栖霞市| 四会市| 汝南县| 南投市| 井冈山市| 贡山| 永善县| 额尔古纳市|