Ein paar Python-Skripte

Statistik CPU-Informationen

#!/usr/bin/env Python

aus __Zukunft__ Druckfunktion importieren

aus Sammlungen importieren OrderedDict

pprint importieren

def CPUinfo():

”’ Geben Sie die Informationen in /proc/cpuinfo zurück

als Wörterbuch im folgenden Format:

cpu_info['proc0']={…}

cpu_info['Proc1′]={…}

”’

cpuinfo=OrderedDict()

procinfo = OrderedDict()

nprocs = 0

mit offen(‘/proc/cpuinfo’) als f:

für Zeile in f:

wenn nicht line.strip():

# Ende eines Prozessors

cpuinfo['proc%s’ % nprocs] = procinfo

nprocs=nprocs+1

# Zurücksetzen

procinfo = OrderedDict()

sonst:

wenn len(line.split(‘:’)) == 2:

procinfo[line.split(‘:’)[0].Streifen()] = line.split(‘:’)[1].Streifen()

sonst:

procinfo[line.split(‘:’)[0].Streifen()] = ”

CPU-Info zurückgeben

wenn __name__==’__main__’:

cpuinfo = cpuinfo()

für Prozessor in cpuinfo.keys():

drucken(cpuinfo[Prozessor]['Modellname'])

Betriebsergebnis

[root @ AMH python]# python-cpu1.py

Intel(R.) Ader(TM) i3-4170-CPU @ 3,70 GHz

Zählen Sie die CPU-Last in 15 Minuten

importieren

def load_stat():

loadavg = {}

f = offen(“/proc/loadavg”)

con = f.read().Teilt()

f.schließen()

loadavg['lavg_1']= mit[0]

loadavg['lavg_5']= mit[1]

loadavg['lavg_15']= mit[2]

loadavg[´ nr ´]= mit[3]

loadavg['letzte_pid']= mit[4]

Rücklastavg

drucken “loadavg”,load_stat()['lavg_15']

Betriebsergebnis

[root @ AMH python]# Python cpu2.py

loadavg 0.00

Statistikspeichernutzung

#!/usr/bin/env Python

aus __Zukunft__ Druckfunktion importieren

aus Sammlungen importieren OrderedDict

def meminfo():

”’ Geben Sie die Informationen in /proc/meminfo zurück

als Wörterbuch ”’

meminfo=OrderedDict()

mit offen(‘/proc/meminfo’) als f:

für Zeile in f:

meminfo[line.split(‘:’)[0]] = line.split(‘:’)[1].Streifen()

meminfo zurückgeben

wenn __name__==’__main__’:

#drucken(meminfo())

meminfo = meminfo()

drucken('Gesamtspeicher: {0}'.Format(meminfo['MemTotal']))

drucken('Freier Speicher: {0}'.Format(meminfo[„MemFree“]))

Betriebsergebnis

[root @ AMH python]# python mem.py

Gesamtspeicher: 615036 kB

Freier Speicher: 49288 kB

Statistiken zur Netzwerknutzung

#!/usr/bin/env Python

Importzeit

Importsystem

wenn len(sys.argv) > 1:

SCHNITTSTELLE = sys.argv[1]

sonst:

SCHNITTSTELLE = ‘eth0’

STATS = []

„Schnittstelle“ drucken:’,SCHNITTSTELLE

def rx():

ifstat = offen(‘/proc/net/dev’).Lesezeilen()

für Schnittstelle in ifstat:

wenn SCHNITTSTELLE in Schnittstelle:

stat = schweben(interface.split()[1])

STATISTIKEN[0:] = [stat]

def tx():

ifstat = offen(‘/proc/net/dev’).Lesezeilen()

für Schnittstelle in ifstat:

wenn SCHNITTSTELLE in Schnittstelle:

stat = schweben(interface.split()[9])

STATISTIKEN[1:] = [stat]

'In Out' drucken’

rx()

tx()

während wahr:

zeit.schlaf(1)

rxstat_o = Liste(STATISTIKEN)

rx()

tx()

RX = Schwimmer(STATISTIKEN[0])

RX_O = rxstat_o[0]

TX = Schwimmer(STATISTIKEN[1])

TX_O = rxstat_o[1]

RX_RATE = rund((RX – RX_O)/1024/1024,3)

TX_RATE = rund((TX – TX_O)/1024/1024,3)

RX_RATE drucken ,’MB’,TX_RATE ,’MB’

Betriebsergebnis

[root @ AMH python]# python net.py

Schnittstelle: eth0

Ein Aus

0.008 MB 0.002 MB

0.006 MB 0.001 MB

0.007 MB 0.002 MB

0.008 MB 0.002 MB

0.008 MB 0.002 MB

0.008 MB 0.002 MB

0.008 MB 0.002 MB

Hinterlasse eine Antwort