分析ip流量的python脚本
日志文件格式如下
172.16.225.66 10.71.2.162 1612409
172.16.15.252 10.71.11.31 1210446
172.16.15.252 10.71.11.59 1197976
172.16.15.252 10.71.11.30 1166167
172.16.15.252 10.71.11.66 1149429
172.16.15.252 10.71.11.65 1124686
172.16.15.252 10.71.11.46 1110412
使用anychart图标插件
AnyChart Sample
数据由这个地址提供
chart.setXMLFile('./buildxml/'); 这个地址由Django生成 (写的很糙,新手)
#!/usr/bin/python
# -*- coding:utf-8 -*-
import glob
import datetime
from django.http import HttpResponse#build dynamic data
def build_xml(request):file_list = glob.glob('/vm_share/Bps*')file_list.sort()result = {}for id,fn in enumerate(file_list):for line in open(fn):src_ip, dest_ip, flow = line.split()result.setdefault(src_ip, [0] * len(file_list))[id] += int(flow) / 1000result.setdefault(dest_ip, [0] * len(file_list))[id] += int(flow) / 1000del_list = []for key in result:if max(result[key]) <= 5000:del_list.append(key)for key in del_list:del result[key]#build xml formatxml_start = r'''IP:{%SeriesName}流量:{%Value}{numDecimals:0} '''xml_end = r'''IP流量分析 KB/s 时间 '''start_time = datetime.datetime(2012,07,26,20,04,00)time_interval = datetime.timedelta(minutes=5)time_axis = []for i in range(len(file_list)):time_axis.append(start_time.strftime('%H:%M'))start_time += time_intervalxml = ''for ip in result:i = 0xml_data = '' %ipxml += xml_datafor point in result[ip]:xml_data = ' ' %(time_axis[i], point)xml += xml_datai += 1xml_data = ' 'xml += xml_datareturn HttpResponse(xml_start + xml + xml_end)
这是展示

转载于:https://www.cnblogs.com/txwsqk/archive/2012/07/27/2612013.html
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
