[vz-users] Verbrauchsdaten tagesweise auslesen

Tilman Glötzner tilman_1 at gloetzner.net
Di Nov 30 09:35:00 CET 2021


Moin

nachdem das Root-Filesystem gestern doch noch komplett voll gelaufen 
war, habe dbgXXXXXX ich das aggregate-php-Script und dessen Kinder 
abbrechen müssen, die dbgXXXXXX-Files aus /tmp gelöscht, und die Daten 
in der Tabelle agreggate gelöscht. Die dbgXXXXXX-Files enthalten jeweils 
ein php-Script. Weisst Du was deren Funktion ist? dbg dürfte für debug 
stehen...

http://IP-ADRESSE/middleware.php/capabilities/database.json 
<http://IP-ADRESSE/middleware.php/capabilities/database.json> lieferte 
mir eine Fehlermeldung:

version 	"0.3"
exception 	
message 	"An exception occurred while executing 'EXPLAIN SELECT 
COUNT(id) FROM data USE INDEX (PRIMARY)':\n\nSQLSTATE[42S22]: Column not 
found: 1054 Unknown column 'id' in 'field list'"
type 	"InvalidFieldNameException"
code 	0

entities ist die einzige Tabelle mit einer Spalte "id". In der Tabelle 
data gibt es eine Spalte "channel_id"...

Gruß

Tilman

On 30.11.21 08:35, Frank Richter wrote:
> Moin,
>
> hast du verifiziert dass aktuell keine Aggregation läuft? Was liefert
> http://IP-ADRESSE/middleware.php/capabilities/database.json 
> <http://IP-ADRESSE/middleware.php/capabilities/database.json> ?
>
> Grüße
> Frank
>
> Tilman Glötzner <tilman_1 at gloetzner.net 
> <mailto:tilman_1 at gloetzner.net>> schrieb am Di., 30. Nov. 2021, 01:28:
>
>     Hi
>
>     Falls mir der Speicherplatz dabei  ausgehen sollte, müsste ich
>     zurückrollen, die Datenbank auf einen großeren Datenträger
>     kopieren und nochmal aggregieren. Da es Hilfstabellen sind und die
>     Rohdaten in data erhalten bleiben, sollte das funktionieren. Was
>     muss ich neben der Tabelle aggreate noch dazu löschen?
>
>     Danke und Gruß
>
>     Tilman
>
>     On 29.11.21 23:23, Frank Richter wrote:
>>     "aggmode": "none" aggregiert nichts, bei Leistung wäre "avg"
>>     sinnvoll.
>>
>>     Damit die Middleware-Aggregation läuft, brauchst du entsprechende
>>     Cronjobs. Schau mal nach ob die bei dir existieren. Siehe auch im
>>     Wiki: https://wiki.volkszaehler.org/howto/datenmengen
>>     <https://wiki.volkszaehler.org/howto/datenmengen>
>>
>>     Grüße
>>     Frank
>>
>>     Tilman Glötzner <tilman_1 at gloetzner.net
>>     <mailto:tilman_1 at gloetzner.net>> schrieb am Mo., 29. Nov. 2021,
>>     20:11:
>>
>>         Hi
>>
>>         >Hast du die aggregation der Middleware aktiviert?
>>
>>         Meinst Du "aggmode"? Den habe ich je nach Zählertype auf
>>         "sum" (S0) bzw "max" (SmartMeter mit IR-Schnittstelle) bzw.
>>         auf "none" (Leistungmessung des SmartMeters) gesetzt.
>>
>>         Und ich logge minütlich -- was relativ kurz ist und
>>         ordentlich Daten erzeugt.  Hilft mir aber beim
>>         Plausibiliseren des Verhaltens des Wechselrichters. Und als
>>         netter Nebeneffekt kann man an Hand der Patterns mit etwas
>>         Übung den jeweiligen Verbraucher  identifizieren :-)
>>
>>         Der RPI ist übrigens einer RPI B+ mit 512 MB.
>>
>>         Grüße
>>
>>         Tilman
>>         On 29.11.21 18:25, Frank Richter wrote:
>>>         Hi,
>>>
>>>         wär schon deutlich einfacher das per API zu machen. Hast du
>>>         die aggregation der Middleware aktiviert? In welchem
>>>         Intervall loggst du deine Daten?
>>>
>>>         Grüße
>>>         Frank
>>>
>>>         Am Mo., 29. Nov. 2021 um 17:09 Uhr schrieb Tilman Glötzner
>>>         <tilman_1 at gloetzner.net <mailto:tilman_1 at gloetzner.net>>:
>>>
>>>             Hallo
>>>
>>>
>>>             ich würde gerne die über einen Tag akkumulierten
>>>             Energie-Verbrauche auf
>>>             den verschiedenen Zähler, die ich betreibe, auslesen und
>>>             in ein File
>>>             exportieren (um sie mit dem Energiemessung der
>>>             Solaranlage vergleichen
>>>             zu können). Am liebsten wäre mir ein csv-File. Dazu hat
>>>             vzlogger auch
>>>             eine Schnittstelle (http://logger.fritz.box/api/data.csv
>>>             <http://logger.fritz.box/api/data.csv>), die
>>>             allerdings eine Fehlermeldung "Maximum execution time
>>>             exceeded" zurück
>>>             gibt -- wahrscheinlich, weil die Datenbank mittlerweile
>>>             zu gross ist
>>>             oder der RPI zu schwachbrüstig.
>>>
>>>             Als Workaround habe ich die die Datenbank auf einen
>>>             anderen, hoffentlich
>>>             schnelleren Rechner kopiert und möchte nun die Daten
>>>             tageweise direkt
>>>             aus der kopierten  Datenbank holen und zur Not mit einem
>>>             Skript
>>>             nachprozessieren.
>>>
>>>             a) Ich schätze mal, dass ich über die UUID im
>>>             Config-File mittels der
>>>             Spalte "id" in der Tabelle "entities" die Daten eines
>>>             Sensors aus der
>>>             Tabelle "data" auswählen kann, d.h. select * from data
>>>             where channel_id
>>>             = <entities.id <http://entities.id>>. Stimmt das so?
>>>
>>>             b) In welcher Einheit liegen timestamp und value der
>>>             Tabelle "data" vor
>>>             ? In Watt für Zähler mit Impulsausgang und in absoluten
>>>             Wh für
>>>             SmartZähler ?
>>>
>>>             c) Ist es in sql möglich, den Timestamp aus der
>>>             aktuellen Zeit zu
>>>             ermitteln=?
>>>             d) Und wie hole ich die Wh aus der Datenbank? So ?
>>>
>>>               select sum(value)  from data where channel_id =
>>>             <entities.id <http://entities.id>> and
>>>             timestamp between  <timestamp1> and <timestamp2> order
>>>             by timestamp;
>>>
>>>             Oder brauche ich dafür ein Script und muss die Fläche,
>>>             die zwischen 2
>>>             benachbarten Werten aus "data" aufgespannt wird, berechnen?
>>>
>>>
>>>             Danke und Gruß
>>>
>>>             Tilman
>>>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20211130/eb8c4d0c/attachment-0001.html>


Mehr Informationen über die Mailingliste volkszaehler-users