[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