rrdtool-update

  • Tach auch,
    vermutlich Anfängerproblem: kann aus Python-Programm kein rrdtool-Update ausführen!
    Sachlage:
    Raspberry pi mit Jessie
    rrdtool und python-rrdtool installiert
    Python-Programm und RRD-Datei am gleichen Ort
    Programm:
    ________________

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-

    import serial
    import time
    import RPi.GPIO as GPIO
    import rrdtool

    rrdtool update test.rrd N :27
    ________________

    den Update-Befehl habe ich mit div. formalen Abweichungen gefunden wie Pfadangabe komplett, Elemente in Anführungszeichen, in Klammern, u.s.w.. Habe alle(?) Varianten ausprobiert. Ich erhalte entweder eine Fehlermeldung und das Programm wird nicht ausgeführt, oder es läuft, aber ohne die Datei zu aktualisieren.
    Wenn ich obige Update-Zeile einfach im CLI-Terminal eingebe, wird das Update ausgeführt.
    Wer ist weniger dumm als ich?

  • Hallo,

    ` rrdtool update test.rrd N :27` mag ein valider Befehl für die Shell sein, aber definitiv nicht für Python. Schon allein deshalb nicht, weil nach dem Aufruf einer Funktion immer Klammern kommen. Darin stehen dann die Argumente (oder nichts, wenn die Funktion keine Argumente hat).

    Quote

    Habe alle(?) Varianten ausprobiert.


    Programmieren ist nicht raten...

    Ohne rrdtool zu kennen, würde ich mal sagen, dass der Befehl ` rrdtool.update('test.rrd', 'N :27')` lautet. Ob du für `test.rrd` noch den vollen Pfad mit angeben musst oder nicht hängt davon ab, wo die Datei `test.rrd` relativ zum Python-Skript liegt. Da du sagst im gleichen Verzeichnis, ist eine Angabe des Pfads wohl nicht notwendig.

    Gruß, noisefloor

  • aber Raten und Probieren gehören zum Lernen......

    Dank für Deine Mühe - die Eingabe in dieser Form hatte ich auch versucht und auch jetzt nochmals kontrolliert auch wieder in weiteren Abwandlungen, so hatte ich auch verschiedene Schreibweisen der Anweisung "rrdtool update", "rrdtool.update", "rrdtool_update" gefunden und probiert...

    Gruß&Dank

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!