Ankündigung

Einklappen
Keine Ankündigung bisher.

RRD mit mehreren Werten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Hey,

    auch bei uns funktioniert "datasourceIndex" nun mit R2054 aus dem SVN - siehe Anlage (Average) - dazu haben wir die "rrdfetch" wie folgt geändert:

    ---snip---
    *** siehe nächste Nachricht ***
    ---endsnip---

    VG
    Tommy (der Tester) & Alex (der Programmierer)
    Angehängte Dateien

    Kommentar


      #32
      ups, hier dann mit Leerzeichen :-)

      Code:
      #!/bin/bash
      echo Content-Type: application/json
      echo Content-Encoding: gzip
      echo
      
      #rrdtool fetch /var/www/rrd/Luftfeuchte_Bad_knx5-2-79.rrd AVERAGE -s-24h
      RRD=`echo "$QUERY_STRING" | sed -n 's/^.*rrd=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
      DS=`echo "$QUERY_STRING" | sed -n 's/^.*ds=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
      START=`echo "$QUERY_STRING" | sed -n 's/^.*start=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
      END=`echo "$QUERY_STRING" | sed -n 's/^.*end=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
      RES=`echo "$QUERY_STRING" | sed -n 's/^.*res=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
      
      rrdtool fetch /var/www/$RRD $DS -s$START -e$END -r$RES | \
      { while read line ;
      do
          if [[ "$line" == *:* ]] #matching lines with ":"
          then
              arr=(${line//: / }) #splits string with ": " in array
              timestamp=${arr[0]}
              timestamp+="000"   #add zeros
      	values=""
      	for (( i=1; i < ${#arr[@]}; i++))
      	do
      	    if ((i > 1)); then values+=","; fi
                  values+="\"${arr[i]}\""
      	done
              data+="[$timestamp,[$values]],"
          fi
      done
      echo "[${data%?}]" | gzip -c #cuts last character of $data and makes [] around
      }

      Kommentar


        #33
        Du solltest in dem Script evt noch das DS durch CF ersetzen, das ist ja eigentlich die consolidation function.

        ---
        CF
        the consolidation function that is applied to the data you want to fetch (AVERAGE,MIN,MAX,LAST)
        ---

        Michael

        Kommentar

        Lädt...
        X