[vz-users] Verbrauchsdaten tagesweise auslesen

Tilman Glötzner tilman_1 at gloetzner.net
Do Dez 2 00:57:03 CET 2021


Hallo

darf ich nochmal fragen, was  ich gegen die Fehlermeldung tun kann?

Danke und Gruß

Tilman

On 30.11.21 09:35, Tilman Glötzner wrote:
>
> 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/20211202/fd0bda5f/attachment.html>


Mehr Informationen über die Mailingliste volkszaehler-users