亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將時間戳和用戶名添加到日志中

將時間戳和用戶名添加到日志中

喵喵時光機 2021-12-17 10:39:46
我在我的 settings.py 中設置了日志記錄,我想知道是否可以添加到錯誤日志行 - 哪個用戶遇到了錯誤和問題的時間戳。這可能嗎?當前代碼LOGGING = {    'version': 1,    'disable_existing_loggers': False,    'handlers': {        'file': {            'level': 'DEBUG',            'class': 'logging.FileHandler',            'filename': 'debug.log',        },    },    'loggers': {        'django': {            'handlers': ['file'],            'level': 'DEBUG',            'propagate': True,        },    },}
查看完整描述

3 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

您可以添加格式化程序并在處理程序中使用它們。這是您可以添加的可用默認屬性列表,例如帶有{asctime}. 要添加用戶,你必須在日志調用提供其作為一個額外的參數如圖所示這里。


LOGGING = {

    'formatters': {

        'timestamp': {

            'format': '{asctime} {levelname} {message}',

            'style': '{',

        },

    },

    'handlers': {

        'console': {

            'class': 'logging.StreamHandler',

            'formatter': 'timestamp'

        },

    },

    'loggers': {

        'django': {

            'handlers': ['console'],

        },

    },

}


查看完整回答
反對 回復 2021-12-17
?
九州編程

TA貢獻1785條經驗 獲得超4個贊

您可以為日志定義格式化程序,例如:


'formatters': {

    'verbose': {

        'format': '{levelname} {asctime} {module} {process:d} {thread:d} {message}',

        'style': '{',

    }

},

要記錄遇到錯誤的用戶,您必須在消息中傳遞用戶名,例如在您的視圖中:


def my_view(request):

    logger.error('View error for user {}'.format(request.user.username))


查看完整回答
反對 回復 2021-12-17
?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

'formatters': {

         'verbose': {

            'format': '%(asctime)s; %(name)s] Message "%(message)s" from %

(pathname)s:%(lineno)d in %(funcName)s',

             'datefmt': "%d/%b/%Y %H:%M:%S"

        },

}

您可以添加具有上述格式的新格式化程序。它應該能夠記錄行號。但是要記錄用戶名,除了手動執行之外,我沒有想到任何其他方法。


查看完整回答
反對 回復 2021-12-17
  • 3 回答
  • 0 關注
  • 194 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號