當前位置:首頁 » 編程語言 » python日誌

python日誌

發布時間: 2022-01-14 11:47:32

❶ 如何用python,每隔5分鍾對實時日誌做統計處理

不清楚你是不是用apache 舉apache log+python


#!/usr/bin/envpython


fromthreadingimportTimer
importtime

timer_interval=3000
defreadlogs()
log="/var/log/httpd/access"
reader=open(log,'r')
contents=[]
forlineinreader.xreadlines():
p=re.compile('.*"GET(/seo/t.php?.*)HTTP/1.1".*',re.IGNORECASE)
m=p.match(line)
ifm:
res_file=m.group(1)
#printres_file
cs=urlparse.urlparse(res_file)
#cs_lem=len(cs)
#pprint.pprint(cs)
s_q=urlparse.parse_qs(cs.query,True)

ref=urlparse.urlparse(str(s_q['ref'][0]))
ref_wd=urlparse.parse_qs(ref.query,True)
printref_wd['wd'][0]


else:
contents.append(line)
reader.close()
returncontents
defparselog():
contents=readlogs()
foriincontents:
printi

t=Timer(timer_interval,parselog)
t.start()
whileTrue:
time.sleep(0.1)
print'mainrunning'

❷ 如何把數據寫入日誌里(python)

#coding=utf-8

def initlog():
import logging

# 生成一個日誌對象
logger = logging.getLogger()
# 生成一個Handler。logging支持許多Handler,
# 象FileHandler, SocketHandler, SMTPHandler等,我由於要寫
# 文件就使用了FileHandler。
# logfile是一個全局變數,它就是一個文件名,如:'crawl.log'
logfile = 'test.log'
hdlr = logging.FileHandler(logfile)
# 成一個格式器,用於規范日誌的輸出格式。如果沒有這行代碼,那麼預設的
# 格式就是:"%(message)s"。也就是寫日誌時,信息是什麼日誌中就是什麼,
# 沒有日期,沒有信息級別等信息。logging支持許多種替換值,詳細請看
# Formatter的文檔說明。這里有三項:時間,信息級別,日誌信息
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
# 將格式器設置到處理器上
hdlr.setFormatter(formatter)
# 將處理器加到日誌對象上
logger.addHandler(hdlr)
# 設置日誌信息輸出的級別。logging提供多種級別的日誌信息,如:NOTSET,
# DEBUG, INFO, WARNING, ERROR, CRITICAL等。每個級別都對應一個數值。
# 如果不執行此句,預設為30(WARNING)。可以執行:logging.getLevelName
# (logger.getEffectiveLevel())來查看預設的日誌級別。日誌對象對於不同
# 的級別信息提供不同的函數進行輸出,如:info(), error(), debug()等。當
# 寫入日誌時,小於指定級別的信息將被忽略。因此為了輸出想要的日誌級別一定
# 要設置好此參數。這里我設為NOTSET(值為0),也就是想輸出所有信息
logger.setLevel(logging.NOTSET)
return logger
logging=initlog()
logging.info(u'注冊')

❸ python如何查看報錯日誌

test.py的39行,有個對象是個None?意思是你肯定有什麼對象沒有初始化就用了吧。
這個日誌提示的信息意思最後一行NoneType,你還是查查你的test.py調用的方法是不是不對
你可以在IDLE下單步執行看看,環境變數是不是有些沒有按照你想像的進行。

❹ python的日誌,如何做到一天是單獨一個日誌,並且定期清理

創建以日期為文件的log文件(如:20140911.log),寫日誌前判斷存放日誌路徑是否存在以當天日期為文件名的文件,如果存在添加日誌信息,不存在就創建,在寫日誌信息。
定期清理亦可以按照此思路來做

❺ python里如何提取日誌中的錯誤信息

只要進行提取日誌中的錯誤信息,那麼你可以編輯一段程序,然後這樣的話才能夠完成達到提取的。

❻ python 讀取日誌文件

#-*-coding:utf-8-*-


withopen('log.txt','r')asf:
foriinf:
ifdt.strftime(dt.now(),'%Y-%m-%d')ini:
#判斷是否當天時間
if'ERROR'iniand'atcom.mytijian'ini:
#判斷此行中是否含有'ERROR'及'atcom.mytijian'
if((dt.now()-dt.strptime(i.split(',')[0],'%Y-%m-%d%H:%M:%S')).seconds)<45*60:
#判斷時間是為當前45分鍾內
printi

❼ python列印日誌,extra是什麼意思

extra是用戶自定義的dict. 這些key/value在格式化的時候可以直接引用。

extra可以用來傳遞額外的日誌信息,尤其是上下文信息。


例如:

FORMAT='%(asctime)-15s%(clientip)s%(user)-8s%(message)s'
logging.basicConfig(format=FORMAT)
d={'clientip':'192.168.0.1','user':'fbloggs'}
logger=logging.getLogger('tcpserver')
logger.warning('Protocolproblem:%s','connectionreset',extra=d)

這里除了protocol錯誤描述外,還附加了客戶IP和用戶名信息。

如果配置了一些非文本格式的handler,結構化的數據會更容易存儲和查詢。

例如,Sentry的logging handler允許用戶用extra.data來傳遞任意信息,並自動記錄到web界面。

logger.error('Therewassomecrazyerror',exc_info=True,extra={
'culprit':'my.view.name',
'fingerprint':[...],

'data':{
#
'username':request.user.username,
}
})

linux python 日誌在哪

現在有test.py程序要後台部署, 裡面有輸出內容

使用命令:

nohup python -u test.py > test.log 2>&1 &
最後的&表示後台運行
2 輸出錯誤信息到提示符窗口
1 表示輸出信息到提示符窗口, 1前面的&注意添加, 否則還會創建一個名為1的文件
最後會把日誌文件輸出到test.log文件

查看
tail -f test.log如果要實時查看日誌文件使用命令
cat test.log查看全部輸出使用命令

❾ python2.7怎麼控制日誌的大小

importglob
importlogging
importlogging.handlers
LOG_FILENAME='logging_rotatingfile_example.out'
#
my_logger=logging.getLogger('MyLogger')
my_logger.setLevel(logging.DEBUG)
#
handler=logging.handlers.RotatingFileHandler(LOG_FILENAME,
maxBytes=20,
backupCount=5,
)
my_logger.addHandler(handler)
#Logsomemessages
foriinrange(20):
my_logger.debug('i=%d'%i)
#Seewhatfilesarecreated
logfiles=glob.glob('%s*'%LOG_FILENAME)
forfilenameinlogfiles:
printfilename
該實例可實現循環打日誌 ,第一個文件達到maxBytes大小後,就寫入第二個文件。

❿ python查看windows日誌文件的代碼

答使用Python自帶的IDLE 在開始->程序->Python2.5(視你安裝的版本而不同)中找到IDLE(Python GUI)。點擊後彈出如下窗體: 1,在>>>提示符後輸入代碼,回車,就可以執行此代碼。IDLE支持語法高亮,支持自動縮進,支持方法提示,不過提示的很慢。2.在命令行窗口上運行 這種方法的前提是:你在系統...

熱點內容
c語言和vc的區別 發布:2024-11-15 16:19:23 瀏覽:117
linux是免費的嗎 發布:2024-11-15 15:53:44 瀏覽:616
多控存儲 發布:2024-11-15 15:52:42 瀏覽:282
一年級數學分解演算法 發布:2024-11-15 15:41:08 瀏覽:410
安卓個人熱點怎麼分享 發布:2024-11-15 15:40:16 瀏覽:263
墊錢解壓 發布:2024-11-15 15:38:54 瀏覽:335
miui4相當於安卓什麼系統 發布:2024-11-15 15:37:54 瀏覽:708
rc4android 發布:2024-11-15 15:27:25 瀏覽:741
電腦伺服器機箱圖片 發布:2024-11-15 15:27:18 瀏覽:114
網頁緩存文件提取 發布:2024-11-15 15:24:42 瀏覽:144