All gists matching topic error-handling

timmy / 進階 Mixin 設計與用戶管理

0 喜歡
0 分支
1 檔案
最後活躍 10 months ago
此 Python 程式使用多個 Mixin,提供日誌記錄、時間標記、資料儲存、權限管理、事件監聽與異常處理功能,使 User 類別具備完整的資料管理與行為追蹤能力,適用於使用者管理與系統監控應用。
1 import datetime
2 import json
3 import traceback
4
5 class LoggingMixin:
6 """ 提供日誌功能的 Mixin 類別 """
7
8 def log(self, message):
9 """ 記錄日誌 """
10 timestamp = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

timmy / 錯誤與除錯輸出配置

1 喜歡
0 分支
2 檔案
最後活躍 10 months ago
此程式使用 pretty_errors 改善錯誤輸出,並使用 icecream (ic) 進行簡潔的除錯訊息輸出,方便開發人員快速定位錯誤與分析變數內容,提高程式除錯效率。
1 import pretty_errors
2 from icecream import ic
3
4
5 def configure_pretty_errors() -> None:
6 """
7 配置 pretty_errors 庫,用於更好的錯誤輸出。
8
9 不需要任何參數。
10 """

timmy / Python 錯誤日誌記錄

0 喜歡
0 分支
1 檔案
最後活躍 10 months ago
這段 Python 程式碼使用 logging 模組來 記錄錯誤日誌,透過 logging.basicConfig() 設定 錯誤訊息輸出至 error.log 檔案。當程式執行時發生 異常(如除數為 0),會捕捉錯誤並使用 logging.error() 記錄詳細的錯誤訊息與 回溯資訊(exc_info=True),方便 錯誤偵錯與系統維護。適用於 後端系統監控、錯誤追蹤及除錯分析。
1 # 首先,引入 logging 模組
2 import logging
3
4 # 然後,建立一個 logfile,用來記錄錯誤訊息
5 logging.basicConfig(filename="error.log", level=logging.ERROR)
6
7 # 接下來,在你的程式中,當發生錯誤時,使用 logging.error() 來記錄錯誤訊息
8 # 同時,把 backtrace 設定為 True,以便在錯誤發生時記錄回溯訊息
9 try:
10 # 這裡是你的程式碼

timmy / 使用 Loguru 進行 Python 日誌記錄

1 喜歡
0 分支
1 檔案
最後活躍 10 months ago
這段 Python 程式碼使用 loguru 模組來 記錄日誌並提供詳細的錯誤追蹤,它會將日誌輸出到帶有時間戳記的 logfile_{time}.log 檔案中,並支援不同的 日誌等級(Debug、Info、Warning、Error、Critical、Success)。此外,它可以 捕捉例外(logger.exception),記錄完整的 回溯資訊(backtrace=True),並允許使用 自訂日誌等級(logger.log)。此腳本適用於 系統監控、錯誤追蹤、伺服器日誌管理,讓開發者能夠更容易 偵錯與分析程式執行狀況。
1 import loguru
2
3 loguru.logger.add("logfile_{time}.log")
4
5 logger = loguru.logger
6
7 logger.debug("Debug message")
8 logger.info("Info message")
9 logger.warning("Warning message")
10 logger.error("Error message")

timmy / Loguru 日誌管理與錯誤追蹤

0 喜歡
0 分支
1 檔案
最後活躍 10 months ago
這段 Python 程式碼使用 loguru 來 記錄並管理日誌訊息,支援 不同級別(INFO、DEBUG、WARNING、ERROR、CRITICAL)的日誌,並可輸出至 終端機 (sys.stderr) 或檔案 (log.txt、debug.txt)。它還示範了 顏色標記 (opt(colors=True))、錯誤追蹤 (logger.exception())、格式化 (opt(record=True)) 及自訂篩選條件 (filter=only_debug_filter)。此外,腳本還包含了一個 除法函式 (divide()),並處理除數為 0 的異常。這適用於 伺服器監控、錯誤記錄、程式偵錯及系統日誌管理,能夠提升 日誌的可讀性與除錯效率。
1 import sys
2
3 from loguru import logger # 引入logger套件
4
5 logger.remove() # 移除現有的logger設定
6 logger.add(sys.stderr, level="INFO") # 將logger設定加入到stderr中,並設定level為"INFO"
7 # logger.add(sys.stderr, level="WARNING")
8 # logger.add(sys.stderr, level="ERROR")
9 # logger.add(sys.stderr, level="TRACE")
最後活躍 10 months ago
此程式透過 pretty_errors 讓錯誤訊息更易讀,並觸發除零錯誤 (ZeroDivisionError),適用於開發除錯與錯誤診斷。
1 import pretty_errors
2
3
4 def division_by_zero():
5 1 / 0
6
7
8 if __name__ == "__main__":
9 division_by_zero()
上一頁 下一頁