html列印日誌 日誌檔案

2021-10-11 09:04:48 字數 3135 閱讀 5487

日誌檔案的主要作用是記錄了某個時刻,某個地點發生了什麼!

對乙個程式設計師而言,日誌系統在程式開發、維護的過程中是非常重要的,日誌系統可以幫助我們快速定位程式錯誤發生的時間和位置、以及程式出錯的大致原因。在日誌資訊足夠詳細的前提下,日誌還可以幫助我們分析使用者行為,從而更好地為客戶爸爸們提供精準有效的服務。

礙於伺服器i/o的壓力,不能將所有的記錄都儲存下來,所以需要對日誌等級進行分級,在python中,日誌的級別如下:

上述日誌級別:debug < info < warning < error < critical; 執行程式時,logging會輸出大於等於設定的日誌等級的日誌,比如設定的info,則會輸出info,warning,error, critical;還有系統會自動在控制台輸出大於等於warning的日誌。

除了上述級別之外,python還可以自定義日誌級別,但是不要和系統自帶地日誌級別重複。

import
控制台輸出:

warning:root:warning message

error:root:error message

critical:root:critical message

logging.basicconfig()沒有填入引數,說明程式設計師預設系統設定,所以,日誌將會在控制台輸出,且日誌級別大於等於warning的日誌才會被列印出來。

logging模組的四大元件:

日誌格式如下:

日誌級別:logger例項:日誌訊息

例子:warning: root: warning message

(**kwargs
logging.basicconfig()函式主要用來設定顯示日誌資訊的最小級別、日誌顯示的格式和儲存日誌的位置。

filename: 儲存日誌的檔名

filemode:檔案模式。r:唯讀模式;w:寫模式;a:追加模式

formart:日誌輸出格式

datafat:日誌中檔案輸出格式

level: 日誌輸出級別

例子:

import
在test.log檔案中顯示:

2019-09-01 18:16:10 root:debug:this is a debug message

2019-09-01 18:16:10 root:info:this is an info message

2019-09-01 18:16:10 root:warning:this is a warning message

2019-09-01 18:16:10 root:error:this is an error message

2019-09-01 18:16:10 root:critical:this is a critical message

如果發生異常,使用上述的info,debug...不能將日誌列印至指定位置。可以使用下面的函式

logging
例子:

logging
在text.log檔案中顯示:

(most recent call last
在開發過程中使用上面的方法完全足夠,不過我將在這裡介紹更高階的使用方法。

在python日誌流程中我們介紹了python的四大元件,為了方便,我們在這裡將四大元件及其功能貼上在這裡。

loggers:在python中使用的是單例模式,即我們只是通過乙個介面獲得了乙個loggers物件,且這個物件在系統只有乙個,這個物件就是根物件。

handlers:有時候我們既想讓日誌在控制台上顯示,又想在log檔案中顯示,且顯示的日誌等級不一樣,如何搞定,當然通過handlers搞定。

filters:過濾級別,控制在控制台中或者log檔案中顯示的日誌等級

formartters:日誌輸出的格式。

例子:

import
控制台輸出:

2019-09-01 18:58:36,756 my_logger warning customer warning message

2019-09-01 18:58:36,756 my_logger error customer error message

2019-09-01 18:58:36,756 my_logger critical customer critical message

log檔案輸出:

2019-09-01 18:58:36,756 my_logger debug customer debug message

2019-09-01 18:58:36,756 my_logger info customer info message

2019-09-01 18:58:36,756 my_logger warning customer warning message

2019-09-01 18:58:36,756 my_logger error customer error message

2019-09-01 18:58:36,756 my_logger critical customer critical message

1.python日誌庫logging總結-可能是目前為止將logging庫總結的最好的一篇文章 - 掘金

2.

unity列印日誌到檔案

對於列印日誌到檔案,我們可以選擇使用log4net外掛程式,這個外掛程式有很強大的功能,但是經常我們並不需要這麼多的功能,有時我們可能只想輸出一下異常而已,所以我推薦自己寫dll來實現這個功能。具體做法如下 在vs裡新建類庫專案,貼上下面的 using system.io using unityen...

遍歷日誌檔案並列印

error reporting e all ini set display errors 1 function load file return contents function eliminate lines new dul line return new function qsort arra...

iOS 列印日誌

簡單介紹以下幾個巨集 1 va args 是乙個可變引數的巨集,這個可變引數的巨集是新的c99規範中新增的,目前似乎只有gcc支援 vc6.0的編譯器不支援 巨集前面加上 的作用在於,當可變引數的個數為0時,這裡的 起到把前面多餘的 去掉,否則會編譯出錯。2 file 巨集在預編譯時會替換成當前的源...