[vz-users] falschen Messwert in der Aggregation löschen
Andreas Götz
cpuidle at gmail.com
Wed Feb 8 21:55:58 CET 2017
@china schick mit gerne Zugangsdaten und DB User.
Viele Grüße,
Andreas
> Am 08.02.2017 um 21:41 schrieb Frank Richter <frank.richter83 at gmail.com>:
>
> Und brauchst du aggregate minute wirklich? Es war IMHO mal so dass das Frontend das nicht benutzt hat, aktuellen Stand kenne ich allerdings nicht.
> Was ist dein interval bzw. aggtime von vzlogger her?
>
> Grüße
> Frank
>
> Am 08.02.2017 21:37 schrieb "Frank Richter" <frank.richter83 at gmail.com>:
>> Hi,
>>
>> möglicherweise ist dein /tmp/ zu klein für das was MySQL da vorhat. Ist das ein Pi mit Udos Image (/tmp/ als Ramdisk)?
>>
>> Grüße
>> Frank
>>
>> Am 08.02.2017 21:25 schrieb <china2013 at abwesend.de>:
>>> Hallo Frank,
>>>
>>> ja, der Channel ist "El. Energie (Zählerstände)"
>>> CPU Last ist jetzt einen Tag später knapp 400% (Quadcore)
>>>
>>> Die Last kommt sicher von crontab der jede Minute aggregate startet.
>>> Da ich glaube, dass durch den kill und reboot die Arbeiten nicht sauber zu Ende gelaufen sind will ich nochmal aufräumen.
>>>
>>> 1. in crontab -e die 3x aggregate.php run -m delta -l minute/hour/day herausnehmen
>>> 2. sudo reboot
>>> 3. aggregate.php clear
>>>
>>> Ergebnis: :-(
>>> pi at PI3:~ $ php /var/www/volkszaehler.org/misc/tools/aggregate.php clear
>>> Clearing aggregation table.
>>> Done clearing aggregation table.
>>>
>>> pi at PI3:~ $ php /var/www/volkszaehler.org/misc/tools/aggregate.php run -m delta -l minute
>>> Performing 'delta' aggregation on 'minute' level.
>>> [Doctrine\DBAL\Exception\DriverException]
>>> An exception occurred while executing 'REPLACE INTO aggregate (channel_id, type, timestamp, v
>>> alue, count) SELECT channel_id, ? AS type, MAX(timestamp) AS timestamp, MAX(value) AS value,
>>> COUNT(timestamp) AS count FROM data WHERE channel_id = ? AND timestamp < UNIX_TIMESTAMP(DATE_
>>> FORMAT(NOW(), "%Y-%m-%d %H:%i:00")) * 1000 GROUP BY channel_id, YEAR(FROM_UNIXTIME(timestamp/
>>> 1000)), DAYOFYEAR(FROM_UNIXTIME(timestamp/1000)), HOUR(FROM_UNIXTIME(timestamp/1000)), MINUTE
>>> (FROM_UNIXTIME(timestamp/1000))' with params [1, "6"]:
>>> SQLSTATE[HY000]: General error: 3 Error writing file '/tmp/MYjCVsYM' (Errcode: 28)
>>>
>>> [Doctrine\DBAL\Driver\PDOException]
>>> SQLSTATE[HY000]: General error: 3 Error writing file '/tmp/MYjCVsYM' (Errcode: 28)
>>>
>>> [PDOException]
>>> SQLSTATE[HY000]: General error: 3 Error writing file '/tmp/MYjCVsYM' (Errcode: 28)
>>> run [-l|--level LEVEL] [-m|--mode MODE] [-p|--period PERIOD] [--] [<uuid>]...
>>>
>>> Der Error kommt so nach ca. 5 Minuten
>>> So ne Kacke - und wat nu? Die Tabelle aggregate ist jetzt nach dem Error immer noch komplett leer.
>>>
>>> Bitte helft mir
>>> Saftwerk
>>>
>>>> Am 08.02.2017 um 00:43 schrieb Frank Richter:
>>>> Ich geh mal davon aus, dass dein Kanaltyp "Zählerstände" ist, oder? Dann kannst du die betreffende Zeile in der Tabelle aggregate einfach händisch löschen.
>>>> Ansonsten stell mal die Rohwerte für den fraglichen Bereich hier rein (Middleware-Request mit options=raw).
>>>>
>>>> Gruß
>>>> Frank
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20170208/f837806b/attachment.html>
More information about the volkszaehler-users
mailing list