python 實時分析log檔案每秒記錄數

2022-08-09 19:09:19 字數 1994 閱讀 6894

檔名:gencdr.py

作用:在指定的時間裡每秒向testcdr.txt檔案中寫n行記錄,n為隨機數。模擬access.log。

#

-*- coding: utf-8 -*-

"""zhangbo2012

"""import

time

import

datetime

import

random

filepath = "

testcdr.txt

"def

time2yyyymmddhhmiss():

return datetime.datetime.now().strftime('

%y%m%d%h%m%s')

with open(filepath,'w

') as wf:

for i in range(150):

time.sleep(1)

linecnt = int(random.random()*20)

for i in

range(linecnt):

ol = "

%s|%04d|%04d|%04d\n

" % (time2yyyymmddhhmiss(),int(random.random()*9999),int(random.random()*9999),i)

wf.write(ol)

print

ol, wf.flush()

執行效果

檔名:analyze_cdrfile.py

作用:    實時分析testcdr.txt檔案中的記錄,輸出每秒記錄數。目前配置為延遲30秒輸出。

#

-*- coding: utf-8 -*-

"""zhangbo2012

"""import

time

import

datetime

filepath = "

testcdr.txt

"delaysec = 30seccnt ={}

timepos =0

deftime2yyyymmddhhmiss():

return datetime.datetime.now().strftime('

%y%m%d%h%m%s')

defyyyymmddhhmiss2time(yyyymmddhhmiss):

return time.mktime(time.strptime(yyyymmddhhmiss,'

%y%m%d%h%m%s'))

print

"---start---

"nowrectime='

9999999999

'with open(filepath,'r

') as rf:

for line in

rf: rectime = str(line).split("|"

)[timepos]

if nowrectime

print

nowrectime,seccnt[nowrectime]

while (time.time() - yyyymmddhhmiss2time(rectime)

time.sleep(1)

if rectime in

seccnt.keys():

seccnt[rectime] +=1

else

: seccnt[rectime] = 1nowrectime =rectime

print

"---end---

"

執行效果

實時Web資料的實時分析

鄭昀 玩聚sr 20100306 但是實時分析就不那麼容易了。實時分析大致有幾種 熱門鏈結分析 把關聯結果中相對熱門 相對重要的鏈結挑出來,單獨展示,可以按時間排序或按重要性排序。oneriot比較擅長這一點,如搜尋chile。熱門鏈結的甄選一般都是依據twitter等微部落格訊息的鏈結分享次數。語...

對大資料進行實時分析

大資料分析 bda 包括大資料的採集 儲存 分析 展示。而其中分析是bda的關鍵。說到分析,可以分為歷史分析和實時分析。上次我們著重提過了歷史分析,尤其是互動式歷史分析,當然還有批處理式的歷史分析。這次,我們回過頭來再談談實時分析,包括流處理 cep,等等。說到cep,複雜事件處理 complex ...

對大資料進行實時分析

大資料分析 bda 包括大資料的採集 儲存 分析 展示。而其中分析是bda的關鍵。說到分析,可以分為歷史分析和實時分析。上次我們著重提過了歷史分析,尤其是互動式歷史分析,當然還有批處理式的歷史分析。這次,我們回過頭來再談談實時分析,包括流處理 cep,等等。說到cep,複雜事件處理 complex ...