由于logging庫在云端系統(tǒng)的各種問題,需要自己實(shí)現(xiàn)一個(gè)日志器。通過inspect可以獲取到當(dāng)前函數(shù)的調(diào)用者所在行號(hào)、函數(shù)名等信息。也就是程序運(yùn)行堆棧監(jiān)視。
建議日志如下:
class
getLogger
(
)
:
def
debug
(
self
,
msg
)
:
if
DEBUG
:
print
(
'%s - DEBUG:%d - %s'
%
(
time
.
strftime
(
'%Y-%m-%d %H:%M:%S'
,
time
.
localtime
(
)
)
,
inspect
.
stack
(
)
[
1
]
[
2
]
,
msg
)
)
def
info
(
self
,
msg
)
:
print
(
'%s - INFO:%d - %s'
%
(
time
.
strftime
(
'%Y-%m-%d %H:%M:%S'
,
time
.
localtime
(
)
)
,
inspect
.
stack
(
)
[
1
]
[
2
]
,
msg
)
)
def
error
(
self
,
msg
)
:
print
(
'%s - ERROR:%d - %s'
%
(
time
.
strftime
(
'%Y-%m-%d %H:%M:%S'
,
time
.
localtime
(
)
)
,
inspect
.
stack
(
)
[
1
]
[
2
]
,
msg
)
)
由于時(shí)間關(guān)系沒有深究,推測(cè)
inspect.stack()[1][2]
的兩極索引分別對(duì)應(yīng)棧偏移、變量項(xiàng)目。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
