Guten Morgen,
die Nacht ist nun vorüber und
ich hab immer noch ein kleines Problem beim updaten einer rrdtool DB mit Python.
Leider kenn ich mich mit Python noch nicht so gut aus.
folgende DB habe ich bereits erstellt:
ZitatAlles anzeigen
rrdtool create /mnt/ultraschall/ultra_db01.rrd \
--step '60' \
'DS:distance:GAUGE:90:0:500' \
'DS:volumen:GAUGE:90:0:15' \
'RRA:AVERAGE:0.5:60:24' \
'RRA:AVERAGE:0.5:10080:1' \
'RRA:AVERAGE:0.5:43200:1' \
'RRA:AVERAGE:0.5:525600:1' \
'RRA:MAX:0.5:60:1' \
'RRA:MAX:0.5:10080:1' \
'RRA:MAX:0.5:43200:1' \
'RRA:MAX:0.5:525600:1' \
'RRA:MIN:0.5:60:1' \
'RRA:MIN:0.5:10080:1' \
'RRA:MIN:0.5:43200:1' \
'RRA:MIN:0.5:525600:1'
und möchte nun im Python Skript die DB füllen:
ZitatAlles anzeigen
<<<schnipp
try:while True:
distance = measure_average()
volumen = (distance * 0.0490873852123405)
print "Abstand : %.1f" % distance
print "Volumen : %.1f" % volumen
rrdtool.update('/mnt/ultraschall/ultra_db01.rrd', 'N:' % (distance, volumen))
time.sleep(1)
>>>schnapp
ich verwende das Skript von:
#+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#|R|a|s|p|b|e|r|r|y|P|i|-|S|p|y|.|c|o|.|u|k|
#+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#
# ultrasonic_2.py
# Measure distance using an ultrasonic module
# in a loop.
#
# Author : Matt Hawkins
und möchte die Daten nur in eine DB schreiben.
hier der Fehler:
Zitat
Traceback (most recent call last):
File "/mnt/ultraschall/ultrasonic_4.py", line 103, in <module>
"/mnt/ultraschall/ultra_db01.rrd" % (distance, volumen))
TypeError: not all arguments converted during string formatting
ich hab schon einige Abwandlungen versucht.
Das Skript funktioniert soweit ohne rrdtool.update.
Die print Zeilen werden angezeigt. Nur das schreiben in die DB nicht =(
bin für jeden Tipp dankbar!
Viele Grüsse
Roland