Pyrrd

Eine objektorientierte Python-Schnittstelle für RRDTOOL
Jetzt downloaden

Pyrrd Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • BSD License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Duncan McGreggor
  • Website des Verlags:
  • https://launchpad.net/~oubiwann

Pyrrd Stichworte


Pyrrd Beschreibung

Eine objektorientierte Python-Schnittstelle für RRDTOOL Pyrrd ist ein objektorientierter Wrapper für die Befehlszeilen-Grafik- und Rund-Robin-Datenbank-Dienstprogramm, RRDTOOL. Es hatte ursprünglich zwei Designziele: 1. Stellen Sie eine Schnittstelle zu RRDTool, die Python-Programmierer lieben würden, und2. hängt nicht von den Python-Bindungen für RRDTOOL ab. Die Gründe für den ersteren sind offensichtlich. Die Motivation für letztere waren die vielen Menschen, die Schwierigkeiten hatten, die RRDTOOL-Bindungen auf ihrem Betriebssystem der Wahl zu kompilieren. Das Pyrrd-Projekt hat Pläne, die Python-Bindungen für diejenigen zu integrieren, die sie auf ihrem System haben, so dass sie sowohl die Geschwindigkeitsvorteile genießen können Aus den Bindungen sowie der API-Benutzerfreundlichkeit von Pyrrd.dependenciessome Teilen von Pyrrd nutzen Elementtree für die XML-Verarbeitung. Wenn Sie Python 2.5 oder mehr haben, verwendet Pyrrd XML.etree. Wenn Ihre Python-Version weniger als 2.5 ist und Sie Merkmale verwenden möchten, die von der XML-Verarbeitung abhängen (z. B. Dump-Funktion und den FETCH / INFO-Methoden), müssen Sie die ElementTree-Bibliothek installieren .installationpyrrd ist in der üblichen installiert Weg: Python Setup.py Installyou kann Pyrrd auch verwenden, ohne es zu installieren, solange Sie es haben ./ in Ihrem PythonPath und Sie befinden sich im Top-Level-Verzeichnis (der sich auf dem Pyrrd-Child-Verzeichnis befindet) .USEGEN SIE EINE RRD-Datei programmgesteuert: >> > von Pyrrd.rrd-Import-DataSource, RRA, RRD >>> Dateiname = '/tmp/test.rrd' >>> DataSources = [] >>> RoundrobinArchives = [] >>> DataSource = DataSource (... DSName = 'speed', dstype = 'counter', heartbeat = 600) >>> dataqueces.append (DataSource) >>> rundenrobinarchives.Append (RRA (CF = "Durchschnitt", XFF = 0,5, Schritte = 1, Zeilen = 24) ) >>> rundenrobinarchives.Append (RRA (CF = 'Durchschnitt', XFF = 0,5, Schritte = 6, Zeilen = 10)) >>> myrrd = rrd (Dateiname, DS = DataSources, RRA = Rundrobinarchives, ... Start = 920804400) >>> myrrd.create () Überprüfen wir das, um das f Ile existiert: >>> Import von OS >>> os.path.isfile (Dateiname) TrueIn, um Schreibvorgänge auf der Festplatte zu speichern, Pyrrd-Pufferwerte zu speichern, und schreibt dann die Werte in die RRD-Datei zu einem GO: >>> myrrd.buffvalue ( '920805600', '12363') >>> myrrd.buffvalue ('920805900', '12363') >>> myrrd.buffvalue ('920806200', '12373') >>> myrrd.buffvalue ('920806500', ' 12383 ') >>> myrrd.update () Fügen Sie weitere Daten hinzu: >>> myrrd.buffvalue (' 920806800 ',' 12393 ') >>> myrrd.buffvalue (' 920807100 ',' 12399 ') >>> myrrd.buffervalue ('920807400', '12405') >>> myrrd.buffvalue ('920807700', '12411') >>> myrrd.buffvalue ('920808000', '12415') >>> myrrd.buffvalue (' 920808300 ',' 12420 ') >>> myrrd.buffvalue (' 920808600 ',' 12422 ') >>> myrrd.buffvalue (' 920808900 ',' 12423 ') >>> myrrd.update (), wenn Sie neugierig sind , Sie können Ihre RRD-Datei mit den folgenden Anzeigen ansehen: myrrd.info () Die Ausgabe davon ist hier nicht gedruckt ", weil es zu viel Platz aufnimmt. Es ist jedoch sehr ähnlich der Ausgabe des ähnlich benannten RRDTOOL-Befehls. Um ein Diagramm zu erstellen, benötigen wir einige Datendefinitionen. Wir werden auch einige berechnete Definitionen und variable Definitionen für ein gutes Material einwerfen: >>> aus pyrrd.graphimport def, cdEF, vdef, linie, area, gprint >>> def1 = def (rrdfile = myrrd.fileName, vname = 'MySpeed', ... DsName = DataSource.name) >>> CDEF1 = CDEF (VNAME = 'KMH', RPN = '% s, 3600, *'% def1.vname) >>> CDEF2 = CDEF (VNAME = 'FAST', RPN = 'KMH, 100, GT, KMH, 0, IF') >>> CDEF3 = CDEF (VNAME = 'GOOD', RPN = 'KMH, 100, GT, 0, KMH, IF')> >> VDEF1 = VDEF (VNAME = 'MYMAX', RPN = '% s, maximal'% def1.vname) >>> VDEF2 = VDEF (VNAME = 'MYAVG', RPN = '% s, Durchschnitt'% def1.vname ) >>> line1 = linie (Wert = 100, color = '# 990000', Legend = 'Maximal erlaubt') >>> Area1 = Bereich (defobj = cdEF3, color = '# 006600', legend = 'Gute Geschwindigkeit' ) >>> area2 = Bereich (defobj = cdEF2, color = '# cc6633', legend = 'zu schnell') >>> line2 = linie (defobj = vdef2, color = '# 000099', legend = 'mein Durchschnitt' , ... stapel = true) >>> gprint1 = gprint (vdef2, '% 6.2lf kPH') Farbe ist die Würze des Lebens. Lassen Sie uns ein wenig auftauchen: >>> von Pyrrd.Graph Import Colorattributes >>> CA = Colorattributes () >>> ca.back = '# 333333' >>> ca.canvas = '# 333333' >>> ca .Shadea = '# 000000' >>> ca.shadeb = '# 111111' >>> ca.mgrid = '#cccccc' >>> ca.axis = '#ffffff' >>> ca.Frame = '#aaaaaaa '>>> ca.font =' #FFFFFF '>>> ca.arrow =' # FFFFFF'Now Wir können ein Diagramm für die Daten in unserer RRD-Datei erstellen: >>> aus pyrrd.graphimport-Grafik >>> GraphFile = "/tmp/rrdgraph.png" >>> g = Grafik (GraphFile, Start = 920805000, Ende = 920810000, ... vertikal_label = 'km / h', color = ca) >>> g.data.extend ( ) >>> G.Write () Stellen Sie sicher, dass es dort ist: >>> Os.Path.isfile ( GraphFile) TRUEOPEN, dass in Ihrem bevorzugten Bildbrowser in Ihrem bevorzugten Bildgraphen bestätigt wird, dass der entsprechende RRD-Grafik generiert ist GraphFile) Anforderungen: · Python Was ist neu in dieser Version: · Verpackungsverbesserungen und Lasten der Dokumentation.


Pyrrd Zugehörige Software