55_GDS.pm - komplett überarbeitet - RC1

Begonnen von betateilchen, 09 Oktober 2015, 21:05:42

Vorheriges Thema - Nächstes Thema

betateilchen

Wiki find ich doof.

Man sieht ja nun, was dabei rauskommt...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

viegener

Zitat von: betateilchen am 02 November 2015, 10:55:11
Wiki find ich doof.

Man sieht ja nun, was dabei rauskommt...

Nun ja, ich war halt zu müde und faul um alles im Code nachzulesen...  ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

redflag237

Hallo Zusammen,
Danke erstmal für eure tolle Arbeit!

Ich habe seit gestern folgende Meldung im Log:
Zitat2015.11.03 11:40:05 1: PERL WARNING: Key 'archive' (/tmp/GDSWetter_alerts.zip) is of invalid type for 'Archive::Extract::new' provided by (eval) at ./FHEM/55_GDS.pm line 1390

Irgendetwas scheint mit dem Entpacken des Archives nicht zu stimmen.

Viele Grüße,
redflag

betateilchen

ja, dieser Fehler tritt manchmal auf, eine eindeutige Ursache dafür konnte ich noch nicht ausmachen. Solange der Fehler nicht bei jedem Datenabruf stattfindet, sollte man sich keine allzugroßen Gedanken darüber machen. Vielleicht fällt mir irgendwann eine Lösung ein, wie ich das unterbinden kann. Aktuell habe ich noch keine.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

redflag237

Zitat von: betateilchen am 03 November 2015, 12:31:34
ja, dieser Fehler tritt manchmal auf, eine eindeutige Ursache dafür konnte ich noch nicht ausmachen. Solange der Fehler nicht bei jedem Datenabruf stattfindet, sollte man sich keine allzugroßen Gedanken darüber machen. Vielleicht fällt mir irgendwann eine Lösung ein, wie ich das unterbinden kann. Aktuell habe ich noch keine.

Tut mir leid, aber seit Samstag wurde kein reading mehr ausgeführt und bricht stets mit der Meldung im Log ab.  Hier ist jetzt ein durchgehendes Problem. Ich habe auch mal ein bisschen gesucht, aber kenne mich leider zu wenig mit Perl aus. Hast du vielleicht eine Idee?

jensb

@redflag237
Das könnte bei dir auch ein Installationsproblem sein. Hatte am 27.10. die gleiche Fehlermeldung. Das neue GDS-Modul verwendet wie weiter oben beschrieben ein neues Perl-Modul, das ggf. nachinstalliert werden muss, siehe http://forum.fhem.de/index.php/topic,42015.msg349067.html#msg349067.

Auf einem RPi hilft für Archive::Extract z.B.

apt-get install libarchive-extract-perl

Das war aber nicht das einzige Paket was bei mir gefehlt hat. Welches Paket fehlt, kann man aus der Fehlermeldung schließen. Danach hilft eine Suchmaschine, den passenden apt-get install zu finden.

LG, Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

spikeh1

Zitat von: jensb am 04 November 2015, 19:59:28
Das könnte bei dir auch ein Installationsproblem sein. Hatte am 27.10. die gleiche Fehlermeldung. Das neue GDS-Modul verwendet wie weiter oben beschrieben ein neues Perl-Modul, das ggf. nachinstalliert werden muss, ...

Ich habe auf meiner Testumgebung dieses Problem auch ab und zu schon gehabt. Dort sind alle benötigten Perl-Module installiert.
Das einzige was bei mir geholfen hat, das Archiv aus dem /tmp Ordner manuell löschen und rereadcfg im GDS-Modul.
Dann lief es bei mir einige Zeit wieder.

redflag237

@Jens @spikeh1
Modul per CPAN nachinstalliert. Fehlte offensichtlich, danke für den Hinweis.

Für alle Leidensgenossen hier das notwendige Snippet:
/usr/bin/perl -MCPAN -e 'install Archive::Extract'


Ich muss nun alle 6 Stunden die Zip aus dem tmp Ordner löschen, weil die Aktualisierung immer wieder mit der bekannten Meldung hängt.

Viele Grüße,
redflag237

jensb

ZitatIch muss nun alle 6 Stunden die Zip aus dem tmp Ordner löschen, weil die Aktualisierung immer wieder mit der bekannten Meldung hängt.

Wahrscheinlich ist das nicht die Ursache bei euch, aber nur um sicher zu sein: Hat euer 55_GDS.pm die Versionsnummer 9751 (mit Kommando "version" abfragen)? Das Modul wurde Sonntag Abend noch einmal zur Verbesserung der Vorhersage-Abfrage aktualisiert, was sich allerdings nur bei aktivierter Vorhersage-Abfrage auswirkt und (eigentlich) nur auf die Vollständigkeit der Vorhersagedaten.

LG, Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

spikeh1

Zitat von: jensb am 04 November 2015, 21:45:43
Wahrscheinlich ist das nicht die Ursache bei euch, aber nur um sicher zu sein: Hat euer 55_GDS.pm die Versionsnummer 9751 (mit Kommando "version" abfragen)? Das Modul wurde Sonntag Abend noch einmal zur Verbesserung der Vorhersage-Abfrage aktualisiert, was sich allerdings nur bei aktivierter Vorhersage-Abfrage auswirkt und (eigentlich) nur auf die Vollständigkeit der Vorhersagedaten.

LG, Jens

Version bei mir ist die 9751. Allerdings nutze ich nicht die Vorhersage-Abfrage, sondern nur die Funktion für Warn-/Alarmmeldungen.

MfG

feeeem

Ich erhalte auf meinem RasPI einen Fehler beim Installieren von libarchive-extract-perl :

pi@raspberrypi ~ $ sudo apt-get install libarchive-extract-perl
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
E: Paket libarchive-extract-perl kann nicht gefunden werden.


Hat jemand eine Idee, woran das liegen könnte?

Vielen Dank vorab.

redflag237

Zitat von: feeeem am 05 November 2015, 13:24:01
Ich erhalte auf meinem RasPI einen Fehler beim Installieren von libarchive-extract-perl :
Hat jemand eine Idee, woran das liegen könnte?

Siehe mein Post weiter oben, das kannst du einfach so in der Befehlszeile absetzen. Das scheint für Debian irgendwie anders Paketiert zu sein, mcpan installiert es direkt aus den Perl Quellen. However, es funktioniert ;)

Grüße,
redflag237

feeeem

Hallo redflag237,

Habe gerade in dem Thread 55_GDS.pm - komplett überarbeitet - RC1 den Hinweis auf das Paket libarchive-any-perl gefunden und angewendet. Denke das ist eher der vorgesehene Weg.

Danke trotzdem für die Rückmeldung.
Norbert

betateilchen

Zitat von: viegener am 01 November 2015, 23:45:34

2015.11.01 23:23:26 1: PERL WARNING: Deep recursion on subroutine "main::GDS_GetUpdate" at fhem.pl line 2725.
2015.11.01 23:23:26 1: PERL WARNING: Deep recursion on subroutine "main::InternalTimer" at FHEM/Blocking.pm line 79.
2015.11.01 23:23:26 1: PERL WARNING: Deep recursion on subroutine "main::InternalTimer" at ./FHEM/55_GDS.pm line 682.


Dieses Problem sollte mit dem morgigen Update gelöst sein.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#89
Zitat von: redflag237 am 04 November 2015, 21:16:55

Ich muss nun alle 6 Stunden die Zip aus dem tmp Ordner löschen, weil die Aktualisierung immer wieder mit der bekannten Meldung hängt.


Die ZIP Datei sollte eigentlich nach der Datenaufbereitung automatisch gelöscht werden, aber die Zeile mit dem Löschen ist vermutlich irgendeinem Code-Cleanup zum Opfer gefallen.

Mit dem morgigen Update sollte es nach einer Aufbereitung der Daten im /tmp kein ZIP mehr geben.

Ausnahme: wenn das Attribut gdsDebug auf 1 gesetzt ist, wird die Datei auch weiterhin nicht gelöscht. Das ist manchmal nützlich für Tests und Fehlersuche.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!