Ankündigung

Einklappen
Keine Ankündigung bisher.

SNMP Openhab kilobyte in megabyte umrechnen

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

    SNMP Openhab kilobyte in megabyte umrechnen

    Hi ihr guten... ich suche schon den ganzen tag nach einer möglichkeit die ausgabe von SNMP (daten in kilobyte) per openhab in megabyte anzeigen zu lassen. hier mein Item

    Number OpenMemoryuse "Speicher Belegt [%s]" { snmp="<[192.168.2.116ublic:.1.3.6.1.4.1.2021.4.6.0:10000]" }

    die ausgabe von kilobyte scheint aber für project rotini unangebracht ich möchte lieber die in anzeige in MB also statt


    4034092 KB

    4034 MB

    geht das?

    #2
    Direkt wird das nichts werden, Du kannst aber ein Proxy Item verwenden und per Rule umrechnen:
    Code:
    Number OpenMemoryuseMB "Speicher Belegt [%.3f MB]"
    Number OpenMemoryuseKB "Speicher Belegt [%.3f KB]" { snmp="<[192.168.2.116:Public:.1.3.6.1.4.1.2021.4.6.0:10000]" }
    und eine Rule dazu:
    Code:
    rule "Open Memory use"
    when
        Item OpenMemoryuseKB received update
    then
        OpenMemoryuseMB.postUpdate((OpenMemoryuseKB.state as DecimalType)/1000) //oder 1024...
    end
    Aus dem Kopf...
    Zuletzt geändert von udo1toni; 18.07.2016, 22:36. Grund: Fehler korrigiert

    Kommentar


      #3
      vielen dank werde es gleich mal testen

      Kommentar


        #4
        Achtung: hab mich vertippt (hab's oben schon korrigiert) es muss [.3f ] heißen, nicht [f.3 ]

        Kommentar


          #5
          hm also irgendwie funzt es nicht... hab es wie oben eingefügt in den items und rules... KB werden mir angezeigt aber MB nicht... kann es an der rule liegen? achso benutze openhab 1.8.3

          Kommentar


            #6
            Hmm... versuch's mal mit
            Code:
            ((OpenMemoryuseKB as decimalType)/1000.0)
            um Float zu erzwingen.

            Kommentar


              #7
              hhh.jpg

              hm irgendwie geht das nicht

              rule "Open Memory use"
              when
              Item OpenMemoryuseKB received update
              then
              OpenMemoryuseMB.postUpdate((OpenMemoryuseKB as decimalType)/1000.0)
              end
              Angehängte Dateien
              Zuletzt geändert von icedeath82; 15.07.2016, 20:38.

              Kommentar


                #8
                Gibt's denn irgendwelche Fehlermeldungen?

                Kommentar


                  #9
                  Da mus noch ein .state ran. OpenMemoryuseKB ist der Item und OpenMemoryuseKB.state ist der Wert. Dann sollte es funktioniern.

                  Thomas

                  Kommentar


                    #10
                    dibbler42 Autsch, Du hast Recht, diese blöden Flüchtigkeitsfehler...

                    Kommentar


                      #11
                      also ich hab es jetzt versucht einmal so

                      Code:
                      rule "Open Memory use"
                      when
                          Item OpenMemoryuseKB.state received update
                      then
                          OpenMemoryuseMB.postUpdate((OpenMemoryuseKB.state as decimalType)/1000.0)
                      end
                      und einmal so

                      Code:
                      rule "Open Memory use"
                      when
                          Item OpenMemoryuseKB received update
                      then
                          OpenMemoryuseMB.postUpdate((OpenMemoryuseKB.state as decimalType)/1000.0)
                      end
                      geht leider nicht

                      Kommentar


                        #12
                        Es muss DecimalType heißen. Noch so ein Flüchtigkeitsfehler...

                        Kommentar


                          #13
                          ha jetzt geht es... Vielen dank

                          Kommentar

                          Lädt...
                          X