LoxBerry: Statistik Plugin - Diskussion

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

  • Christian Fenzl
    antwortet
    /opt/loxberry/log/system/apache2/error.log müsste was ausspucken.

    Einen Kommentar schreiben:


  • svethi
    kommentierte 's Antwort
    Also ein Syntax-Error gibts in der Index nicht ... das Debugging in so einem Fall finde ich recht mühsam, oder hast Du dazu noch nen Tipp. Bin ja auch nicht so der Perler.

  • Prof.Mobilux
    kommentierte 's Antwort
    Keine Ahnung ;-) Muss ich mir ansehen - da habe ich sicherlich aus Versehen irgendeinen Zwischenstand committed. Ich muss nur erst meinen Zwischenstand zu Ende bringen - habe auch keinen reinen Test-Pi mehr :-) Heute Abend hab ich Zeit :-)

  • svethi
    kommentierte 's Antwort
    Ja, hatte ich komplett deinstalliert. Werd Michael mal interviewen.
    Prof.Mobilux, was isses da los?? ;-)

  • Christian Fenzl
    kommentierte 's Antwort
    Ich glaub, da hat's bei der Plugin-Installation was gehabt. Wenn postinstall mit sed und den cronjobs schon Probleme macht, da hat sich in meinem Fork nichts geändert zu Michaels Basis.
    Michael hat kürzlich den Namen der Autoren geändert - man muss das Plugin wirklich deinstallieren und neu installieren. Ich hatte einfach installiert, und dann 2x Stats4Lox in den Plugins.

  • Christian Fenzl
    kommentierte 's Antwort
    Das ist jedenfalls komisch!
    Ich sitz dran, aber hab keinen Test-Pi mehr (meinen DEV-Berry kann ich schlecht nehmen, ohne meinen Stand zu killen...)
    Die Plugin-Seite ist insbesondere von Michael, da hab ich nichts angegriffen...
    Sehr komisch.

  • svethi
    antwortet
    Christian, ich habe mir Deine Version vorhin gezogen und neu installiert. Bei der Installation Installation quakt sed herum. Ich glaube an nicht vorhandenen Cron-Scripts und die Plugin-Website startet mit Error Loading Page. Ist das klar, oder noch unbekannt?!

    Einen Kommentar schreiben:


  • Prof.Mobilux
    kommentierte 's Antwort
    Klar! Ich arbeite m Moment am editsettings.cgi - wir kommen uns also nicht in die Quere....

  • Christian Fenzl
    antwortet
    Hi Michael,
    darf ich in addstat ein paar Debug-Logging Infos einbauen? Bei meinem Rasp1 dauert der Call aus dem Import pro DB rund 20 Sekunden, da möchte ich mal reinschauen, wo die vergehen.

    Einen Kommentar schreiben:


  • Prof.Mobilux
    antwortet
    Die Settings lese ich so aus - kannst Du vielleicht gleich so übernehmen - oder noch optimieren ;-)

    Code:
        open(F,"<$installfolder/config/plugins/$psubfolder/dbsettings.dat");
            @data = <F>;
            foreach (@data){
                s/[\n\r]//g;
                # Comments
                if ($_ =~ /^\s*#.*/) {
                          next;
                    }
                    @fields = split(/\|/);
                $settingsselectmenu = $settingsselectmenu . "<option value='@fields[0]' ";
                if ($settings eq @fields[0]) {
                    $settingsselectmenu = $settingsselectmenu . "selected=seleted ";
                }
                $settingsselectmenu = $settingsselectmenu . ">" . @fields[1] . "</option>\n";
              }
        close (F);
    Bzgl. Indexes:

    Meine Idee ist, dass man später einen Chart direkt per URL aufrufen kann: chart.cgi?id=15&template=dark Über die ID zieht er sich dann die Einstellungen des Charts, die Du vorher eingerichtet hast (also Linie, Säule, Fläche, Farben, Achsenbeschriftungen, Multichart, etc. pp.).

    Damit man in der Visu aber Kategorien bilden kann, möchte ich Index-Seiten erstellen können, die wie eine Art Bildergallerie funktionieren: indexes.cgi?id=15&template=dark Über die ID zieht er sich dann die Charts, die in der Index-Übersicht erscheinen sollen (muss man also auch vorher einrichten). Von der Index-Seite komme ich dann direkt per Link zum Chart. Damit kann man dann z. B. alle Temperaturen zusammenfassen.

    Und dann soll es noch automatische Indexes geben, z. B. indexes.cgi?room=Wohnzimmer&template=dark oder indexes.cgi?category=Sensoren&template=dark

    Einen Kommentar schreiben:


  • Christian Fenzl
    antwortet
    Bei mir fehlt - bis auf etwaige Bugs - nur noch das Auslesen und Übergeben der Settings.
    Was ich auch noch genauer unter die Lupe nehmen muss, ist die Zeitzone.

    In Import.cgi habe ich ein sub get_databases_by_name, das ich erweitern werde, um alle Daten in einem Hash zurückzubekommen. Ich werde das (fertig ausgebaut) mal testweise in ein Modul LoxBerry::Stats4Lox packen, damit es generisch verwendet werden kann. Dazu dann gleich noch ein get_database_by_name($loxonename) und get_database_by_id($dbid). Und alle benutzten Places, und Categories zurückgeben, und alle Stats eines places oder category zurückgeben. Das wären so Standardsachen, die man z.b. Für einen Baum bräuchte.
    Da könnten alle Stats4Lox-Funktionen hinein, die man immer wieder braucht, z.B. bei unterschiedlichen Grafikengines.

    Wofür steht im UI denn der Menüpunkt "Indexes"?

    Einen Kommentar schreiben:


  • Prof.Mobilux
    antwortet
    Christian Fenzl schaue ich mir an - ich glaube ich behandele die Einheit noch nicht nach UTF8... Die anderen Dinge fange ich noch nicht ab - das baue ich mit ein. Die Überprüfung auf bereits existierende Datenbanken habe ich absichtlich nicht mehr integriert. Beim manuellen Anlegen möchte ich die "Option" nicht verbauen - falls das jemand aus irgendeinem Grund doch mal nutzen möchte. Und du hattest ja geschrieben, dass du das beim Import selbst überprüfst.

    Wenn der Import dann funktioniert werde ich mich an die Grafikengine machen.
    Zuletzt geändert von Prof.Mobilux; 24.01.2017, 05:47.

    Einen Kommentar schreiben:


  • Christian Fenzl
    antwortet
    Prof.Mobilux

    Kurzer Status addstat:
    - addstat prüft noch nicht auf uniqueness des Loxone Namens (ist aber bei mir noch drin)
    - Wenn ich addstat.cgi mit --script und einem nicht existierenden loxonename aufrufe, loopt das Script mit 100% CPU ohne Wiederkehr.
    - Ohne --script und falschem loxonename kommt das befüllte Anlegeformular zurück (was ich sehr geil finde, dass man das Formular selbst auch von anderswo vorbefüllen kann!)
    - Die Unit kommt bei Sonderzeichen nicht richtig in der databases.dat an:

    Ich rufe auf
    Code:
     --unit="°C"
    und in databases.dat steht
    Code:
    |°C|
    (siehe Screenshot)
    Ich kann nicht ausschließen, dass da von mir was Schräges kommt. In /opt/loxberry/log/plugins/stats4lox/import_cgi.log schreibe ich auch die Commandline hinaus.

    Ich pulle mal meinen Zwischenstand nach GitHub:
    - Alle Felder werden jetzt per Commandline-Aufruf befüllt

    Das war's auch schon, bis auf ein paar Kleinigkeiten.

    Schönen Abend!
    Christian

    Einen Kommentar schreiben:


  • Prof.Mobilux
    kommentierte 's Antwort
    Wie immer ganz einfach unter Perl, gell? ;-) hattest aber gelesen, dass ich die Einheit auch automatisch vom Miniserver pulle, wenn ich die Datenbank anlege, oder? Da ich sowieso teste ob der Pull funktioniert, nehme ich die Einheit gleich mit.

  • Christian Fenzl
    kommentierte 's Antwort
    1,5 Stunden, und ich hab schon die Einheit aus dem Loxplan in brauchbarer Form. Alles kein Problem!
Lädt...