Ankündigung

Einklappen
Keine Ankündigung bisher.

rrdj4 Chart mit mehreren Charts

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

    rrdj4 Chart mit mehreren Charts

    Hallo,

    ich wollte ein Chart erstellen, in dem ich mehrere Items darstellen wollte.

    Dazu habe ich die betroffenen Items in eine Gruppe gepackt
    Code:
    Number dieselAral           "Diesel Aral [%.2f Euro]"              <aral>    (gDiesel)     { http="<[tankstelle1Cache:300000:JS(sprit_diesel.js)]" }
    Number dieselEsso         "Diesel Esso [%.2f Euro]"            <esso>    (gDiesel)     { http="<[tankstelle2Cache:300000:JS(sprit_diesel.js)]" }
    Number dieselOMV         "Diesel OMV [%.2f Euro]"            <omv>    (gDiesel)     { http="<[tankstelle3Cache:300000:JS(sprit_diesel.js)]" }
    Die Gruppe gDiesel habe ich in die rrd4j.persist gepackt:
    Code:
    Strategies {
     
        everyHour : "0 0 * * * ?"
        everyDay : "0 0 0 * * ?"
        everyMinute : "0 * * * * ?"
    }
    
    Items
    {gDiesel* : strategy = everyMinute, everyChange, restoreOnStartup
    }
    Und dann habe ich das Chart definiert:
    Code:
                Text label="Diesel" icon="benzin"
                {
                    Chart item=gDiesel period=2W refresh=3600 visibility=[Chart_Period==2]
                }
    Allerdings wird mir das Chart nicht angezeigt. Was ist falsch?

    Danke Martin

    #2
    Hast Du das Item Chart_Period auch angelegt? Hat es den Wert 2? Ist rrd4j Dein default Persistence Service?

    Der Wert refresh ist in msec anzugeben, 3,6 Sekunden ist (speziell bei 2 Wochen Dauer) eher ungewollt, oder? 60000 ist ein vernünftiger Wert, da die Seiten ohnehin ungefähr in diesem Zyklus neu angezeigt werden.
    Zuletzt geändert von udo1toni; 25.06.2016, 23:58.

    Kommentar


      #3
      Das passt soweit alles, denn ersetze ich "gDiesel" durch "dieselAral" und speichere das in der Persist, wird mit das Diagramm dargestellt.

      Den Hinweis mit dem Refresh und werde ich noch einbauen, danke.

      Grüße Martin

      Kommentar


        #4
        Hallo,

        ich bin leider noch nicht weiter.
        Mir ist zwar noch aufgefallen, dass ich die Gruppe gDiesel nicht angelegt hatte in der Items Datei. Aber wenn ich ins Log File schaue, sehe ich die Fehlermeldung, dass über ein nicht gültiges Argument.

        An was kann das liegen?

        Danke für Hilfe
        Martin
        Angehängte Dateien

        Kommentar


          #5
          Hast Du nicht Deine Originalitems gepostet? Kleiner Hinweis an dieser Stelle wäre sinnvoll...

          Die Label aller Items innerhalb eines Charts müssen eindeutig sein. Die Gruppe hast Du hoffentlich in der Zwischenzeit angelegt

          Kommentar


            #6
            Da hast du recht, ich habe in der Zwischenzeit die Items nochmal geändert. Und auch die Gruppe habe ich angelegt.

            Kommentar


              #7
              Hallo,

              ich konnte mein Problem lösen. Letztlich ist es das Label des Items. Wenn man diese in einer Gruppe kombiniert und diese mit dem gleichen Wort anfangen, geht es nicht.

              So nicht:
              Code:
              Number dieselAral     "Diesel Aral [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              Number dieselEsso     "Diesel Esso [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              Number dieselOMV     "Diesel OMV [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              So geht es:
              Code:
              Number dieselAral     "Aral Diesel [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              Number dieselEsso     "Esso Diesel [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              Number dieselOMV     "OMV Diesel [%.2f Euro]"    <aral>    (gDiesel)     { http="..." }
              Außerdem dürfen die Gruppennamen nicht in der rdd4j.persists stehen, sondern nur die Items.
              Code:
              Strategies {
               
                  everyHour : "0 0 * * * ?"
                  everyDay : "0 0 0 * * ?"
                  everyMinute : "0 * * * * ?"
              }
              
              Items
              {
                  dieselAral, dieselEsso, dieselOMV  : strategy = everyMinute, everyChange, restoreOnStartup
              }
              Ich hoffe das hilft dem ein oder anderem, der vor dem gleichen Problem steht.

              Grüße
              Martin

              Kommentar


                #8
                Das mit dem Gruppennamen in der rrd4j.persist kann ich so nicht bestätigen, hier zumindest funktioniert der Gruppenname wunderbar (mit * hintendran, wie Du es weiter oben konfiguriert hattest). Man kann einfach überprüfen, ob die Daten korrekt persistiert werden, indem man unter ./etc/rrd4j/ nachschaut, ob die einzelnen Itemdateien angelegt wurden, das sollte der Fall sein, auhc wenn in der rrd4j.persist nur der Gruppenname steht.

                Offensichtlich muss das Label im ersten Wort unterschiedlich sein - blöde Einschränkung, zumal die so nicht dokumentiert war.

                Kommentar


                  #9
                  Bei mir funktioniert es auch, wenn ich die Items einzeln in der rrd4j.persist angebe.

                  Das Problem mit dem Fehler im Log File (Siehe Attachement) ist aber das erste Wort im Label. Anscheinend wird der String nur bis zum ersten Leerzeichen überprüft und wenn die Bezeichnungen für die verschiedenen Items dann identisch ist, kommt der Fehler.

                  Grüße
                  Martin

                  Kommentar


                    #10
                    Ja, sicher kannst Du die Items auch einzeln persistieren. Aber das ist keine Voraussetzung für die Funktion , gruppe* zu persistieren bedeutet ja nichts anderes, als die einzelnen Gruppenmitglieder zu persistieren. Wenn dagegen der Inhalt des Gruppenitems selbst persistiert werden soll, muss das Sternchen weggelassen werden.

                    Kommentar

                    Lädt...
                    X