)
     # Add specific SFlow Stats only for those interfaces that have them
 if len(interface.sflowStats(i)) > 0:
     container.addWidget(
         Widget(
             {
                 "type": Widget.__WidgetTypePieChart__,
                 "id": "sflowstats",
                 "title": "SFlow Statistics",
                 "mode": "counter",
                 "unit": "bytes",
             }
         )
     )
     # Add specific CPackets Stats only for those interfaces that have them
 if len(interface.cpacketStats(i)) > 0:
     container.addWidget(
         Widget(
             {
                 "type": Widget.__WidgetTypePieChart__,
                 "id": "cpacketstats",
                 "title": "CPackets Statistics",
                 "mode": "counter",
                 "unit": "bytes",
             }
         )
     )
     # Tail an interface throughput overall at the end
 container.addWidget(
     Widget(
         {
Beispiel #2
0
             'title': 'NetFlow Statistics',
             'mode': 'counter',
             'unit': 'bytes'
         }))
 # Add specific SFlow Stats only for those interfaces that have them
 if (len(interface.sflowStats(i)) > 0):
     container.addWidget(
         Widget({
             'type': Widget.__WidgetTypePieChart__,
             'id': 'sflowstats',
             'title': 'SFlow Statistics',
             'mode': 'counter',
             'unit': 'bytes'
         }))
 # Add specific CPackets Stats only for those interfaces that have them
 if (len(interface.cpacketStats(i)) > 0):
     container.addWidget(
         Widget({
             'type': Widget.__WidgetTypePieChart__,
             'id': 'cpacketstats',
             'title': 'CPackets Statistics',
             'mode': 'counter',
             'unit': 'bytes'
         }))
 # Tail an interface throughput overall at the end
 container.addWidget(
     Widget({
         'type': Widget.__WidgetTypeGroupedTable__,
         'id': 'interfacethroughput',
         'title': 'Interface Throughtput',
         'mode': 'gauge'
Beispiel #3
0
            info['address'] = addr

            if ((len(mode) == 0) or not (mode == "list")):
                stats = {}
                stats['pktsStats'] = interface.pktsStats(i)
                stats['bytesStats'] = interface.bytesStats(i)
                stats['throughputStats'] = interface.throughputStats(i)

                ip = {}
                ip['tcp'] = interface.tcpStats(i)
                ip['udp'] = interface.udpStats(i)
                ip['icmp'] = interface.icmpStats(i)
                ip['ip'] = interface.ipStats(i)

                stats['securityPkts'] = interface.securityPkts(i)
                stats['netflowStats'] = interface.netflowStats(i)
                stats['sflowStats'] = interface.sflowStats(i)
                stats['cpacketStats'] = interface.cpacketStats(i)
                stats['ip'] = ip
                info['stats'] = stats

            rsp[interface.uniqueName(i)] = info

except Exception as inst:
    print type(inst)  # the exception instance
    print inst.args  # arguments stored in .args
    print inst  # __str__ allows args to printed directly

ntop.sendHTTPHeader(1)  # 1 = HTML
ntop.sendString(json.dumps(rsp, sort_keys=True, indent=4))
Beispiel #4
0
                rs = interface.sflowStats(i)
                if (len(rs) > 0):
                    total = rs.pop('total', sum(rs.values()))
                    if_traffic.append({
                        "metadata": {
                            "type": "piechart",
                            "title": "SFlow Statistics",
                            "unit": "bytes",
                            "mode": "counter",
                            "total": total
                        },
                        "data": rs
                    })

                rs = interface.cpacketStats(i)
                if (len(rs) > 0):
                    total = rs.pop('total', sum(rs.values()))
                    if_traffic.append({
                        "metadata": {
                            "type": "piechart",
                            "title": "CPackets Statistics",
                            "unit": "bytes",
                            "mode": "counter",
                            "total": total
                        },
                        "data": rs
                    })

                rsp[interface.uniqueName(i)]['protocols'] = if_traffic
	if((len(mode) == 0) or not(mode == "list")):
		stats = {}
		stats['pktsStats'] = interface.pktsStats(i)
		stats['bytesStats'] = interface.bytesStats(i)
		stats['throughputStats'] = interface.throughputStats(i)
		
		ip = {}
		ip['tcp'] = interface.tcpStats(i)
		ip['udp'] = interface.udpStats(i)
		ip['icmp'] = interface.icmpStats(i)
		ip['ip'] = interface.ipStats(i)
		
		stats['securityPkts'] = interface.securityPkts(i)	
		stats['netflowStats'] = interface.netflowStats(i)
		stats['sflowStats'] = interface.sflowStats(i)
		stats['cpacketStats'] = interface.cpacketStats(i)
		stats['ip'] = ip
		info['stats'] = stats

	rsp[interface.uniqueName(i)] = info

except Exception as inst:
    print type(inst)     # the exception instance
    print inst.args      # arguments stored in .args
    print inst           # __str__ allows args to printed directly

ntop.sendHTTPHeader(1) # 1 = HTML    
ntop.sendString(json.dumps(rsp, sort_keys=True, indent=4))

Beispiel #6
0
				total = rs.pop('total',sum(rs.values()))
				securityPkts = { "metadata": { "type":"barchart", "title":"Security Packet Statistics", "unit": "packets", "mode" : "counter", "total": total}, "data" : rs }
				# Build traffic info for interface
				if_traffic = [pktsStats, bytesStats, securityPkts, throughputStats]
				
				rs = interface.netflowStats(i)
				if(len(rs) > 0):
					total = rs.pop('total',sum(rs.values()))
					if_traffic.append({"metadata": {"type":"table", "title":"Netflow Statistics", "unit": "bytes", "mode" : "counter", "total": total}, "data":rs})

				rs = interface.sflowStats(i)
				if(len(rs) > 0):
					total = rs.pop('total',sum(rs.values()))
					if_traffic.append({"metadata": {"type":"piechart", "title":"SFlow Statistics", "unit": "bytes", "mode" : "counter", "total": total}, "data":rs})

				rs = interface.cpacketStats(i)
				if(len(rs) > 0):
					total = rs.pop('total',sum(rs.values()))
					if_traffic.append({"metadata": {"type":"piechart", "title":"CPackets Statistics", "unit": "bytes", "mode" : "counter", "total": total}, "data":rs})
				
				rsp[interface.uniqueName(i)]['protocols'] = if_traffic

			if (len(topic) == 0 or topic.lower() == "ip"):
				# IP packets and breadcrumb
				rs = interface.tcpStats(i) 
				total = rs.pop('total',sum(rs.values()))
				ip_tcp = { "metadata": { "type":"piechart", "title":"TCP Statistics", "unit": "bytes", "mode" : "counter", "total": total }, "data" : rs }

				rs = interface.udpStats(i) 
				total = rs.pop('total',sum(rs.values()))
				ip_udp = { "metadata": { "type":"piechart", "title":"UDP Statistics", "unit": "bytes", "mode" : "counter", "total": total}, "data" :  rs }