Graylog: 傳送錯誤日誌
本文件是使用 Python指南的一部分。請在此處查看完整指南:如何從 Python 傳送日誌到 Graylog。
👋 歡迎使用 Stackhero 文件
Stackhero 提供全代管的 Graylog cloud 解決方案,專為速度與簡易性設計。您可以:
- 依賴隨服務附贈的無限制、專屬 SMTP 電子郵件伺服器。
- 只需一鍵即可輕鬆更新,無需手動操作。
- 使用由 HTTPS 保護的自訂網域名稱(例如 https://logs.your-company.com),讓您的團隊能安全且直接地存取。
- 在專屬私有基礎架構上享有卓越的效能與安全性,無需與他人共用資源,也沒有「吵雜鄰居」問題。
專注於您的資料,而非工具本身:只需幾分鐘,即可開始使用 Stackhero 的 Graylog cloud hosting 解決方案。
Graylog 不僅能處理一般日誌訊息,也能捕捉並轉發錯誤,讓您更容易掌握應用程式行為。這有助於監控並透過 Email、Slack 或 Mattermost 等方式接收問題通知。
以下範例會故意呼叫不存在的函式以產生錯誤。請記得將「<XXXXXX>.stackhero-network.com」替換為您的實例主機名稱。
import logging
import graypy
my_logger = logging.getLogger('test_logger')
my_logger.setLevel(logging.DEBUG)
handler = graypy.GELFTLSHandler('<XXXXXX>.stackhero-network.com', 12201)
my_logger.addHandler(handler)
try:
unknown_function()
except NameError:
my_logger.debug('The "unknown_function" raised an error', exc_info=1)
您可以如前述方式執行此腳本。在 Graylog 管理後台,您會看到錯誤訊息「NameError: name 'unknown_function' is not defined」以及完整的堆疊追蹤(stack trace)。
Error log example