2013-09-23 27 views
0

我想爲cherrypy創建訪問和錯誤的單獨日誌文件。 我讀http://docs.cherrypy.org/dev/refman/_cplogging.html,但我沒有寫代碼來實現日誌記錄。cherrypy:python如何在日誌輪轉的幫助下爲日常創建單獨的請求日誌文件

我閱讀更多鏈接Python Cherrypy Access Log Rotation

PLZ提供代碼和文檔如何在CherryPy的 執行日誌PLZ幫我提供了一個示例代碼

我HV一個hello.py文件

進口的CherryPy

類的HelloWorld: def index(self): return「Hello world!」 index.exposed =真

@cherrypy.expose 
def link(self): 
    #print HelloWorld.c 

    #print self.j 
    return "link" 

@cherrypy.expose 
def link2(self): 
    return "link2" 

如果 == '主要': cherrypy.quickstart(的HelloWorld())

什麼來實現記錄 請提供代碼需要改變。 。

回答

1

嘗試......

import logging 
from cherrypy import _cplogging 
from logging import handlers 
import cherrypy 

class HelloWorld: 
    @cherrypy.expose 
    def index(self): 
     return "Hello world!" 

    @cherrypy.expose 
    def link(self): 
     #print HelloWorld.c 

     #print self.j 
     return "link" 

    @cherrypy.expose 
    def link2(self): 
     return "link2" 

if name == 'main' : 
    applicationLogFileHandler = handlers.TimedRotatingFileHandler('rot_access_file', "midnight", 1) 
    applicationLogFileHandler.setLevel(logging.DEBUG) 
    applicationLogFileHandler.setFormatter(_cplogging.logfmt) 
    cherrypy.log.access_log.addHandler(applicationLogFileHandler) 

    applicationLogFileHandler = handlers.TimedRotatingFileHandler('rot_error_file', "midnight", 1) 
    applicationLogFileHandler.setLevel(logging.DEBUG) 
    applicationLogFileHandler.setFormatter(_cplogging.logfmt) 
    cherrypy.log.error_log.addHandler(applicationLogFileHandler) 

    cherrypy.quickstart(HelloWorld()) 

希望這有助於!

+0

假設有一個hello.py文件,其中包含根類和mwthods作爲索引,鏈接,頁面...然後我將高速寫入另一個文件進行日誌記錄。 –

+0

不 - 你不應該寫另​​一個文件。我用你的代碼更新了我的答案。 –

+0

此代碼工作正常..根據我的項目,我需要一些更多的修改1]我需要創建單獨的請求日誌文件的日誌與轉子2]文件的幫助文件應存儲在任何文件夾名爲src ... PLZ提供代碼與必要的更改要求 –