FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Navigator am 25 Oktober 2015, 10:45:52

Titel: Probleme mit at nach Zeitumstellung
Beitrag von: Navigator am 25 Oktober 2015, 10:45:52
Guten Morgen,

ich hatte heute morgen ein Problem, was ich so noch nie beobachtet habe und die Vermutung nahe liegt, daß dies mit der Zeitumstellung letzte Nacht zu tun hatte. Um 24 Uhr wurde noch ein AT korrekt ausgeführt. Um 1 Uhr wurde dieses AT noch einmal ausgeführt und verfing sich in einer Schleife. Es wurde bis heute früh ununterbrochen wiederholt, bis ich FHEM neu startete. Jetzt steht dieses in der Ausführung für morgen eine Stunde zu spät.
STATE Next: 01:00:00
TIMESPEC 00:00:00
.

Eine andere FHEM Instanz, die keine AT zwischen 0 und 3 Uhr ausführt hat die Umstellung allerdings ohne Probleme vollzogen.



Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: betateilchen am 25 Oktober 2015, 10:51:34
Schau Dich bitte mal hier im Forum um, zu der Problematik gibt es schon einige Threads seit dieser Nacht.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Navigator am 25 Oktober 2015, 10:52:36
geht klar..danke
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: flurin am 25 Oktober 2015, 11:22:53
Zitat von: betateilchen am 25 Oktober 2015, 10:51:34
Schau Dich bitte mal hier im Forum um, zu der Problematik gibt es schon einige Threads seit dieser Nacht.

In meinem Fall scheint es eher ein "at-Problem" zu sein.

Bei der Zeitumstellung in Frühling gab es bereits ein ähnliches Problem, deshalb habe ich die Perl-Funktion entsprechend
ausgebaut, evtl. ist es für andere nützlich:


define at_tc_addLog_am at *00:01 {my_addLog();}



sub
my_addLog()
{
  my ($sec,$min,$hour) = localtime(time);
 
  if (($hour == 0 and $min == 1) or ($hour == 23 and $min == 59)) {
    ...
}


Gruss
flurin
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Navigator am 25 Oktober 2015, 11:36:27
Seltsam ist immernoch, daß "Next" immer noch eine Stunde später als eingestellt stattfindet, auch wenn ich die Zeiten für das AT jetzt ändere.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: flurin am 25 Oktober 2015, 11:41:16
Zitat von: Dittel am 25 Oktober 2015, 11:36:27
Seltsam ist immernoch, daß "Next" immer noch eine Stunde später als eingestellt stattfindet, auch wenn ich die Zeiten für das AT jetzt ändere.

das ist bei mir auch so, jedoch zeigt TIMESPEC 00:01


STATE Next: 01:01:00
TIMESPEC 00:01


edit: übrigens um 00:01 wurde der "at" richtig ausgeführt, bedingt durch die Zeitumstellung wurde um 01:00 die Endlosschleife ausgelöst. Der Fehler wird irgendwann behoben aber "defensive programming" schadet nie  ;)
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 25 Oktober 2015, 13:00:41
Das Problem mit 01:01 habe ich gefixt, und die Endlosschleife vermutlich auch.
Hoffentlich ohne Nebeneffekte.

Ich habe die Aenderungen ausnahmsweise fuer update zur Verfuegung gestellt.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Navigator am 25 Oktober 2015, 13:10:42
Kann man interessehalber ein paar Infos über die Ursache erfahren? Die Umstellung wurde doch von 3 auf 2 Uhr vollzogen. Meine AT lagen ja vor dieser "kritischen" Phase.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: flurin am 25 Oktober 2015, 13:35:25
@rudolfkoenig
Vielen Dank für den "Sonntagssupport".
Update ausgeführt, List:


   ...
   STATE      Next: 00:01:00
   TIMESPEC   00:01
   TRIGGERTIME 1445814060
   TRIGGERTIME_FMT 2015-10-26 00:01:00
   TYPE       at
   Readings:
     2015-10-25 13:27:47   state           Next: 00:01:00
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Jojo11 am 28 Oktober 2015, 08:14:13
Hallo,

bei mir scheint seit der Zeitumstellung auch irgendetwas anders zu laufen als vorher. Die Last meines cubietrucks fährt jetzt regelmäßig nachts zwischen 00:00 Uhr und 01:00 Uhr extrem nach oben (s. Anhang).
Apptime zeigt auf den ersten Blick nichts Besonderes. Am ehesten evtl. noch "tmr-FileLog_dailySwitch", dessen Bedeutung ich nicht kenne. Ich bin leider ratlos und weiß nicht, wo ich sochen soll. FHEM habe ich gestern aktualisiert. Woran könnte das noch liegen?

schöne Grüße
Jo
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 28 Oktober 2015, 09:48:44
Die erwaehnte Funktion hat in der Tat ein "busy loop" (wie heisst sowas auf Deutsch?) gedreht zwischen 0:00 und 1:00. Habs gefixt und eingecheckt, und fuer update zur Verfuegung gestellt.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Jojo11 am 28 Oktober 2015, 09:53:05
Super, herzlichen Dank!

schöne Grüße
Jo
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: snickers2k am 27 März 2016, 19:15:17
weiterhin Probleme..
OpenHab2 wird Zeit :(
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Otto123 am 27 März 2016, 21:09:26
Zitat von: rudolfkoenig am 28 Oktober 2015, 09:48:44
"busy loop" (wie heisst sowas auf Deutsch?)
Eigentlich Warteschleife?  8)
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 29 März 2016, 11:27:45
Zitatweiterhin Probleme..
Wenn du sie nicht genau schilderst, dann kann ich es auch nicht beheben.

ZitatOpenHab2 wird Zeit (https://forum.fhem.de/Smileys/default/sad.gif)
Erpressung ist fehl am Platz, ich habe nichts dagegen, weniger Anwender zu betreuen.
Berichte uns bitte ueber deine Erfahrungen mit openhab2, ich lerne gerne dazu.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: dero am 31 März 2016, 00:08:35
Ich habe openhab ausprobiert und auch den Code mal gereviewed...

Fazit: FINGER WEG! Absolut overengineered, buggy, langsam und unflexibel. FHEM ist um längen besser!

Das einzige, was mich persönlich an FHEM stört, ist, dass Fehler in at/notify etc erst beim Ausführen und nicht schon beim Laden der Configs erkannt werden. Wäre gut, wenn FHEM die beim Laden precompilen würde...

Dero


Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 03 April 2016, 16:36:48
ZitatDas einzige, was mich persönlich an FHEM stört, ist, dass Fehler in at/notify etc erst beim Ausführen und nicht schon beim Laden der Configs erkannt werden. Wäre gut, wenn FHEM die beim Laden precompilen würde...

Siehe https://forum.fhem.de/index.php?topic=51744
Funktioniert z.Zt. nur bei einem define/modify im laufenden Betrieb, d.h. nix fuer Leute, die fhem.cfg direkt editieren :)
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: snickers2k am 30 Oktober 2016, 17:46:20
Wieder eine Zeitumstellung und leider wird diese wieder nicht respektiert.
FHEM zeigt die richtige Uhrzeit an. Also wird es vermutlich morgen wieder übernommen?
Was genau kann/soll man hier tun, damit die Zeitumstellung zukünftig direkt am "Umstellungs-Tag" berücksichtigt wird?

Danke
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 31 Oktober 2016, 08:08:44
Was ist mit openhab?
Und mit der genauen Schilderung der Probleme?
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: ht am 31 Oktober 2016, 20:28:42
Hi Rudi,

ich hänge mich hier mal mit rein. Ich hatte gestern folgendes Problem mit at bzw. vermutlich mit der verwendeten Funktion sunset:

   COMMAND    set sz_Rolladen 10
   DEF        *{sunset("REAL",0,"16:00","21:15")} set sz_Rolladen 10
   NAME       at_sz_Rolladen_Down
   NR         474
   NTM        16:39:40
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 16:39:40
   TIMESPEC   {sunset("REAL",0,"16:00","21:15")}
   TRIGGERTIME 1478014780
   TRIGGERTIME_FMT 2016-11-01 16:39:40
   TYPE       at
   Readings:
     2016-10-31 16:41:38   state           Next: 16:39:40


Mein Problem war gestern, dass das at eine Stunde zu spät geschaltet hat, also ca. 17:40, richtig wäre aber auch gestern schon ca. 16:40 gewesen.

Grüße, Volker
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Dietmar63 am 31 Oktober 2016, 21:38:40
Ich errechne die Zeit plus n Tage in WeekdayTimer so. Klappt auch bei Sommerzeit/Winterzeit immer.
Funktioniert sogar bei der Addition mehrerer Tage korrekt, selbst wenn es bis zum Tag der Umstellung noch Tage hin ist. 

Bis zu dieser Lösung hatte ich auch immer Probleme: Von einer Endlosschleife bis zu falschen Zeiten bei Sommerzeit oder Winterzeitumstellungen war immer alles dabei.


################################################################################
sub WeekdayTimer_zeitErmitteln  ($$$$$) {
   my ($now, $hour, $min, $sec, $days) = @_;

   my @jetzt_arr = localtime($now);
   #Stunden               Minuten               Sekunden
   $jetzt_arr[2]  = $hour; $jetzt_arr[1] = $min; $jetzt_arr[0] = $sec;
   $jetzt_arr[3] += $days;
   my $next = timelocal_nocheck(@jetzt_arr);
   return $next;
}
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Dietmar63 am 31 Oktober 2016, 21:45:21
ZitatDas einzige, was mich persönlich an FHEM stört, ist, dass Fehler in at/notify etc erst beim Ausführen und nicht schon beim Laden der Configs erkannt werden. Wäre gut, wenn FHEM die beim Laden precompilen würde...

Vielleicht wäre es eine Möglichkeit den PerlCode von at/notify ... grundsätzlich in 99_utils abzulegen. Als Perlcode ist dann nur noch ein Funktionsaufruf zu codieren. Die blöden / wären dann auch nicht mehr notwendig.

Dann würden Fehler überhaupt und früher als jetzt erkannt. Vielleicht kann man das über die Oberfläche irgendwie unterstützen, ähnlich dem RegEx Editor.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: satprofi am 01 November 2016, 10:23:44
Zitat von: ht am 31 Oktober 2016, 20:28:42
Hi Rudi,

ich hänge mich hier mal mit rein. Ich hatte gestern folgendes Problem mit at bzw. vermutlich mit der verwendeten Funktion sunset:

   COMMAND    set sz_Rolladen 10
   DEF        *{sunset("REAL",0,"16:00","21:15")} set sz_Rolladen 10
   NAME       at_sz_Rolladen_Down
   NR         474
   NTM        16:39:40
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 16:39:40
   TIMESPEC   {sunset("REAL",0,"16:00","21:15")}
   TRIGGERTIME 1478014780
   TRIGGERTIME_FMT 2016-11-01 16:39:40
   TYPE       at
   Readings:
     2016-10-31 16:41:38   state           Next: 16:39:40


Mein Problem war gestern, dass das at eine Stunde zu spät geschaltet hat, also ca. 17:40, richtig wäre aber auch gestern schon ca. 16:40 gewesen.

Grüße, Volker

mein problem ist jetzt , das alles eine stunde zu früh triggert, denn es wird ja früher dunkel. wie löst man das eigentlich, ohne neue zeilen zu schreiben?
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: volschin am 01 November 2016, 10:35:14
Das problem ist, dass danach
TRIGGERTIME 1478014780
getriggert wird.

Das kennt keine Zeitzone. Sollte sich eigentlich nach einem Fehlversuch erledigt haben.

Aus meiner Sicht liegt das Problem in 99_SUNRISE_EL.pm in Zeile 116ff
    $nt += 86400;
    @lt = localtime($nt);

Da hier mit Ticks gearbeitet wird, bleibt die TZ-Umstellung der Nacht außen vor.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Dietmar63 am 01 November 2016, 12:41:45
wenn das so umgebaut wird klappt es:
https://forum.fhem.de/index.php/topic,42920.msg513255.html#msg513255 (https://forum.fhem.de/index.php/topic,42920.msg513255.html#msg513255)
Im at gibt es eine Logik, die daylightsavingtime erkennt, aber nicht 100%ig.
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 01 November 2016, 16:28:50
Das Problem war, dass sowohl SUNRISE, wie auch at die Uhrzeit wg. Zeitumstellung korrigiert hat, was wg. doppelter Korrektur schiefging. Ich habe die Korrektur in 99_SUNRISE_EL.pm ausgebaut, in einem Linux-VM Datum auf 29.10.2016 bzw. 25.3.2017 gestellt, und mit sunset(), sunset_abs() und "defmod myAt {sunset()} hallo" herumexperimentiert: ich meine jetzt funktioniert es richtig.
Dabei ist mir aufgefallen, dass sun*_abs() nach dem entsprechenden Zeitpunkt die Zeit fuer den naechsten Tag gerechnet hat, das habe ich auch gefixt.

@volschin/Dietmar63: bitte Verbesserungen nur dann posten, wenn ihr das auch getestet habt, sonst entstehen nur Geruechte.

Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: volschin am 01 November 2016, 16:58:05
Ich habe keine Verbesserung gepostet, nur eine Vermutung zur fehlerhaften Routine geäußert.
Aber mal zu Deiner geplanten Korrektur: 99_SUNRISE_EL.pm wird doch nicht nur durch at genutzt, oder?
Funktionieren denn andere Module dann noch sauber?
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: rudolfkoenig am 01 November 2016, 17:13:33
ZitatFunktionieren denn andere Module dann noch sauber?
Keine Ahnung, haengt vom Modul ab.
Ich finde die aktuelle Loesung sauber, das kann ich notfalls auch mit Argumenten unterlegen :)
Titel: Antw:Probleme mit at nach Zeitumstellung
Beitrag von: Damian am 01 November 2016, 17:57:41
Zitat von: rudolfkoenig am 01 November 2016, 17:13:33
Keine Ahnung, haengt vom Modul ab.
Ich finde die aktuelle Loesung sauber, das kann ich notfalls auch mit Argumenten unterlegen :)

DOIF-Modul z. B. korrigiert die Zeit selbst, unabhängig davon von wo die Zeit kommt. Alles andere ist wenig sinnvoll. Sollte also mit dem Update kein Problem sein.

Gruß

Damian