日志基礎教程
日志是對軟件執行時所發生事件的一種追蹤方式。軟件開發人員對他們的代碼添加日志調用,借此來指示某事件的發生。一個事件通過一些包含變量數據的描述信息來描述(比如:每個事件發生時的數據都是不同的)。開發者還會區分事件的重要性,重要性也被稱為 等級 或 嚴重性
什么時候使用日志
對於簡單的日志使用來說日志功能提供了一系列便利的函數。它們是 debug(),info(),warning(),error() 和 critical()。想要決定何時使用日志,請看下表,其中顯示了對於每個通用任務集合來說最好的工具。
實際例子
記錄到文件
import logging
logging.basicConfig(filename='example.log',level=logging.DEBUG)
logging.debug('This message should go to the log file')
logging.info('So should this')
logging.warning('And this, too')
打開日志文件,你可以看到如下log信息:
DEBUG:root:This message should go to the log file
INFO:root:So should this
WARNING:root:And this, too
從多個模塊記錄日志:
如果你的程序包含多個模塊,這里有一個如何組織日志記錄的示例:
# myapp.py
import logging
import mylib
def main():
logging.basicConfig(filename='myapp.log', level=logging.INFO)
logging.info('Started')
mylib.do_something()
logging.info('Finished')
if __name__ == '__main__':
main()
庫文件如下所示:
# mylib.py
import logging
def do_something():
logging.info('Doing something')
如果你運行 myapp.py ,你應該在 myapp.log 中看到:
INFO:root:Started
INFO:root:Doing something
INFO:root:Finished