簡體   English   中英

如何在python中更新rrd數據庫

[英]How to update rrd database in python

我是編程新手,正在使用已創建的腳本,我正在嘗試用python更新我的RRD數據庫。 我設法創建下面的代碼,這些代碼不會出現任何錯誤,但是當我嘗試生成圖形時,它不包含任何數據。

#!/usr/bin/python

#modules
import sys

import os

import time

import rrdtool

import Adafruit_DHT as dht

#assign data
h,t = dht.read_retry(dht.DHT22, 22)

#display data
print 'Temp={0:0.1f}*C'.format(t, h)
print 'Humidity={1:0.1f}%'.format(t,h)

#update database
data = "N:h:t"
ret = rrdtool.update("%s/humidity.rrd" % (os.path.dirname(os.path.abspath(__file__))),data)

if ret:
 print rrdtool.error()
 time.sleep(300)

在我的數據庫規范以下:

#! /bin/bash
rrdtool create humidity.rrd \
--start "01/01/2015" \
--step 300 \
 DS:th_dht22:GAUGE:1200:-40:100 \
 DS:hm_dht22:GAUGE:1200:-40:100 \
 RRA:AVERAGE:0.5:1:288 \
 RRA:AVERAGE:0.5:6:336 \
 RRA:AVERAGE:0.5:24:372 \
 RRA:AVERAGE:0.5:144:732 \
 RRA:MIN:0.5:1:288 \
 RRA:MIN:0.5:6:336 \
 RRA:MIN:0.5:24:372 \
 RRA:MIN:0.5:144:732 \
 RRA:MAX:0.5:1:288 \
 RRA:MAX:0.5:6:336 \
 RRA:MAX:0.5:24:372 \
 RRA:MAX:0.5:144:732 \

rrdtool將靜默忽略相距太遠或位於預定義輸入范圍之外的更新。 我將在您的代碼中添加一個日志記錄功能,以查看您要向rrdtool提供的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM