FHEM Forum

FHEM => Automatisierung => Thema gestartet von: amunra am 07 Januar 2016, 00:37:40

Titel: [gelöst] BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 07 Januar 2016, 00:37:40
Hallo Rudolf, Hallo zusammen,
im Bereich "Heizungssteuerung/Raumklima" wurde ein Modul entwickelt welches Blocking Call nutzt.
Es gibt einen User bei dem im BlockingCall die "BlockingInformParent" Funktion nicht abgearbeitet wird.
Nähere Informationen stehen hier (http://forum.fhem.de/index.php/topic,41064.msg386377.html#msg386377).
Hatst du/jemand eine Idee was auf dem System los ist und wie mein das Problem weiter eingränzen könnte bzw. warum die Funktion nicht abgearbeitet wird?
Vielen Dank und Grüße
Arthur
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: rudolfkoenig am 07 Januar 2016, 10:16:19
Ich habe im verlinkten Thread direkt geantwortet.
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 07 Januar 2016, 10:21:24
Danke.
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 08 Januar 2016, 10:37:25
Hallo Daniel,

ich habe in das BlockingCall Modul etwas mehr Logging eingebaut - bitte erneut probieren.

1)   Vorhandene Blocking.pm umbenennen und durch die im Anhang ersetzen.
2)   attr global verbose 5 setzen
3)   attr ebus1 verbose 5 setzen
4)   FHEM Restart und Logs hier posten
5)   Alles wieder rückgängig machen

Aber, das kennst du ja schon ;o)

Danke und Grüße
Arthur
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: yellowpinky am 08 Januar 2016, 16:52:02
Hallo Arthur;

Anbei der gewünsche log...


Vielen Dank für die super Unterstützung :-)
Daniel

Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 08 Januar 2016, 21:08:09
Hallo Daniel,
ok, das hier ist das Problem - es kann keine telnet Verbindung (Host: localhost => auf sich selbst) aufgebaut werden:
2016.01.08 15:57:15 1: BlockingInformParent (GAEBUS_GetUpdatesDone): Can't connect to localhost:7072: IO::Socket::INET: connect: Connection timed out
Könntest du bitte das Ergebnis von deiner telnetconfig hier posten
list telnetPort
dann bitte auch noch in der Konsole "shh/telnet" (mit dem RPI verbinden) folgeneden Befehl ausführen:
sudo ps -aux | grep fhem
und
sudo ifconfig
und die Ergebnisse hier posten.
Danke.
Viele Grüße
Arthur
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: yellowpinky am 08 Januar 2016, 23:07:18
Hallo Arthur;

Mir ist die Meldung auch schon mal aufgefallen, ich habe aber damals gedacht, dass es eine Folge des "shutdown restart" sei :-(
Das war aber bereits vor den Tests mi den modifizierten Blocking und GAEBUS.


Könntest du bitte das Ergebnis von deiner telnetconfig hier posten

Internals:
   DEF        7072 global
   FD         5
   NAME       telnetPort
   NR         4
   NTFY_ORDER 50-telnetPort
   PORT       7072
   STATE      Initialized
   TYPE       telnet
Attributes:

sudo ps aux | grep fhem
(sudo ps -aux | grep fhem -> bringt eine Fehlemeldung)

root     21256  0.0  0.1   3560  1784 pts/0    S+   22:56   0:00 grep fhem
fhem     22710  1.0  3.5  35372 33580 ?        S    18:38   2:35 /usr/bin/perl fhem.pl fhem.cfg

sudo ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:8b:a0:e4
          inet addr:10.0.0.12  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3911899 errors:0 dropped:612 overruns:0 frame:0
          TX packets:3986424 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:212161601 (202.3 MiB)  TX bytes:294911153 (281.2 MiB)


Vielen Dank
Daniel
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 08 Januar 2016, 23:38:17
Hallo Daniel,
ok, wir haben es!
Ablauf:
Bitte in der Konsole "shh/telnet" (mit dem RPI verbinden) folgenede Befehle ausführen:
sudo cp /etc/network/interfaces /etc/network/interfaces_bak
sudo echo '' >> /opt/network/interfaces
sudo echo '# The loopback network interface' >> /etc/network/interfaces
sudo echo 'auto lo' >> /etc/network/interfaces
sudo echo 'iface lo inet loopback' >> /etc/network/interfaces
sudo echo '' >> /opt/network/interfaces

Damit werden die folgenden Einträge in die Datei /etc/network/interfaces (Netzwerkkonfiguration) hinzugefügt:
# The loopback network interface
auto lo
iface lo inet loopback

Wenn Du möchtest kannst du die Einträge auch gerne per Editor deiner Wahl hinzufügen - wie Du magst.
Bitte Einträge prüfen mit:
cat /etc/network/interfaces
Falls Du dir unsicher bist, dann einfach die Ausgabe hier posten - ich bin noch etwas da -> Wichtig "kein Neustart" durchführen - falls du dir unsicher bist.
Falls die Einträge korrekt sind (plausibel aussehen), dein RPI neustarten.
Danach sollte auch GAEBUS auto Update funktionieren.
Ansonsten FHEM Logs hier posten - wird aber zu 99,99% nicht mehr nötig sein.
Viele Grüße
Arthur
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: yellowpinky am 09 Januar 2016, 00:03:53
Hallo Arthur;

... es funktioniert !!!
Ich möchte mich recht herzlich für deine Mühe und die Zeit bedanken die du investiert hast.
Ebenso ein Dankeschön an  Andy & Rudolf.

Könntest du mir vielleicht noch auf die Sprünge helfen was der interface Loopback damit zu tun hatte ?

Liebe Grüße
Daniel
Titel: Antw:BlockingCall - BlockingInformParent läuft in Timeout
Beitrag von: amunra am 09 Januar 2016, 00:38:13
Hallo Daniel,

gerne und freut mich, dass es nun funktioniert.

Zum Thema "loopback interface" - das genau zu erklären würde den Rahmen sprängen, aber das loopback interface wird unter anderem auch in FHEM von BlockingCall für den internen Datenaustausch verwendet (High-level => (Vereinfacht/Grob) Beschreibung).
Nähere Informationen findest Du im Wiki (https://de.wikipedia.org/wiki/Loopback) und auch im WEB.

In der Regel wird immer empfohlen das loopback interface anzulegen (eigentlich "Pflicht" ), deine Konfiguration ist also etwas, ich nenne es, ungewöhnlich gewesen. ;o)

Viele Grüße
Arthur

P.S. Und viel Spaß noch mit dem EBUSD und GAEBUS.

@Rudolf: Eine Prüfung im Blocking.pm auf das loopback interface wäre hier sicher sinnvoll - Umsetzung noch "offen".