Docker Logausgabe/Protokoll hat falsche Zeitzone

dojo

Benutzer
Mitglied seit
14. Dez 2016
Beiträge
71
Punkte für Reaktionen
9
Punkte
8
Hallo zusammen,

wenn ich mir die Logausgabe bzw. das Protokoll meiner Docker Container anschaue, dann hab ich dort die falsche Uhrzeit bzw. Zeitzone. Gehe ich direkt in meinen Container und lass mir die aktuelle Uhrzeit ausgeben, so passt das alles. Muss ich noch irgendwo auf der Synology eine Zeitzone einstellen damit die Log/Protokollausgabe auch die richtige Zeitzone bekommt? Ich habe das Problem bei allen Containern.

2019-01-28 11_21_48-Tresor001 - Synology DiskStation.jpg
2019-01-28 11_22_40-Tresor001 - Synology DiskStation.jpg
2019-01-28 13_25_35-Tresor001 - Synology DiskStation.png

Edit: Screenshot Umgebungsvariablen hinzugefügt

Danke
Gruß
 
Zuletzt bearbeitet:

dany

Benutzer
Mitglied seit
31. Mrz 2008
Beiträge
352
Punkte für Reaktionen
0
Punkte
22

dany

Benutzer
Mitglied seit
31. Mrz 2008
Beiträge
352
Punkte für Reaktionen
0
Punkte
22
ah, sorry, hatte die Seite längere Zeit offen :)

das Phänomen habe ich auch. Ist mir nie aufgefallen da im Container alles OK ist. Sucht man im Web findet man aber einige Artikel dazu.
Meine Vermutung das Docker die Zeit als UTC behandelt.
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Zumindest bei der Syno sind sie in UTC. Könnte auch am selbstentwickelten DB Logging driver liegen.
Ich bin mir sicher, dass die Logausgabe unserer selbst entwickelten Images auf der Arbeit (auf RHEL) unserer Zeit entsprechen.

Übrigens klappt der Trick mit TZ nur, wenn der Autor das entsprechende Tool auch in das Image gepackt hat. Das ist nicht immer der Fall...
 
  • Like
Reaktionen: Stationary

dojo

Benutzer
Mitglied seit
14. Dez 2016
Beiträge
71
Punkte für Reaktionen
9
Punkte
8
Zuletzt bearbeitet von einem Moderator:

gender

Benutzer
Mitglied seit
25. Mrz 2012
Beiträge
48
Punkte für Reaktionen
2
Punkte
8
Möchte dieses Thema nochmal aufgreifen:
Auch ich habe das Problem, dass im Logfile des Dockers eine falsche Uhrzeit angezeigt wird.
Im Container selbst passt die Zeit, da ich auch die TZ-Variable gesetzt habe.

Im konkreten Fall geht es bei mir darum, dass ich einen ConBee-USB-Stick über einen Container laufen lasse. An dem Conbee hänen Sensoren, die dann aber leider die falsche bzw. Uhrzeit des Logfiles ausgeben und nicht etwa die richtige Uhrzeit.

Also: Jemand ne Idee, wie man die Uhrzeit des Dockers (also nicht die der Container) ändern kann?
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Hmm, eignetlich sollten die Logs in UTC sein.
Das neue "fix" schlägt bei mir aber tatsächlich mitlerweile auch eine Stunde auf, so dass das Log in der Zukunft läuft, aber der Container im jetzt. Merkwürdig.

Das Problem ist ein Problem des Syno Logging-Treibers. Ich bezweifle, dass dieses Problem im Container behoben werden kann.
 
Zuletzt bearbeitet:

daschmidt94

Benutzer
Mitglied seit
17. Mai 2020
Beiträge
266
Punkte für Reaktionen
19
Punkte
24
Möchte das Thema nochmal aufrollen. Gibt es hierfür schon eine Lösung.
 

khakan

Benutzer
Mitglied seit
03. Dez 2020
Beiträge
3
Punkte für Reaktionen
0
Punkte
1
ich schließe mich der Frage an, das Problem mit der Protokoll Zeit besteht immer noch (bei mir um 1 Stunden nach).
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.259
Punkte für Reaktionen
601
Punkte
174
Hast du es schon einmal mit diesen Arguments versucht?

-v /etc/localtime:/etc/localtime:ro
-v /etc/TZ:/etc/timezone:ro
 

daschmidt94

Benutzer
Mitglied seit
17. Mai 2020
Beiträge
266
Punkte für Reaktionen
19
Punkte
24

Hallo,


in Ihrem Screenshot ist die Zeit sowohl lokal als auch im Dockercontainer identisch. Bitte stellen Sie die Zeitzone im Container auf UTC/Localtime, ohne Landesabweichungen zu konfigurieren, es sollte dan die korrekte Zeit von DSM übernomme nwerden.


Ich hoffe, ich konnte Ihnen weiter helfen und stehe Ihnen für weitere Fragen gerne zur Verfügung.



Schöne Grüße
leider verstehe ich nicht was er meint
 

Yippie

Benutzer
Mitglied seit
01. Feb 2011
Beiträge
643
Punkte für Reaktionen
54
Punkte
54
Kann das überhaupt jeder Container? Dazu muss der Container die entsprechende Environment Variable bereitstellen, auslesen können, oder?
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.259
Punkte für Reaktionen
601
Punkte
174

daschmidt94

Benutzer
Mitglied seit
17. Mai 2020
Beiträge
266
Punkte für Reaktionen
19
Punkte
24
in meinem fall Nextcloudpi habe aber die TZ auf Europe/Berlin gestellt.
Im Docker stimmt die Zeit.
 

Yippie

Benutzer
Mitglied seit
01. Feb 2011
Beiträge
643
Punkte für Reaktionen
54
Punkte
54
Ich habe natürlich gleiches Problem in der Logausgabe des jeweiligen Containers, hat mich bisher aber nicht unbedingt gestört.
Jedoch konnte ich es ebenfalls nicht lösen auch nicht durch diverse TZ Angaben beim Start von Containern. Kann aber auch sein, dass ich mich zu blöd angestellt habe und nach wie vor bin ich der Meinung dass ein Container auch mit TZ Variablen umgehen können muss.
 

Dingsdada

Benutzer
Mitglied seit
20. Dez 2008
Beiträge
189
Punkte für Reaktionen
6
Punkte
18
Das Problem besteht immer noch.
Zumindest wird bei mir im Protokoll selbst die richtige Zeit angezeigt.

Unbenannt.PNG
 

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Das Protokoll von docker selber (also das was hier im Protokoll angezeigt wird, bzw. auch das was man mit docker logs bekommt) ist Stand heute immer in UTC. Das ist nicht änderbar. Hat also nichts mit Synology zu tun.

Siehe zB. auch hier

Wollte mir das heute auch mal ansehen, da ich grundsätzlich meine Zeit in CET hatte, aber eben das Log "nur" in UTC war. Geht leider nicht anders.
 

haydibe

Benutzer
Sehr erfahren
Mitglied seit
12. Apr 2016
Beiträge
1.519
Punkte für Reaktionen
404
Punkte
103
Normalerweise sehen meine Logs auf einem Nicht-Syno Docker bei mir so aus:
Code:
2022-01-04 19:35:11.196  INFO --- [http-nio-0.0.0.0-5] o.n.searching.IndexerForSearchSelector ...
Jeder Container, in dem die Anwendung das Datum mitloggt und in dem TZ gesetzt ist, sind die Ausgaben in CET:

Wenn man ´docker logs --timestamp ... verwendet, dann hast Du recht, der Timestamp ist tatsächlich in UTC:
Code:
2022-01-04T18:35:11.196761650Z 2022-01-04 19:35:11.196  INFO --- [http-nio-0.0.0.0-5] o.n.searching.IndexerForSearchSelector

Dann scheint Synology wohl auch einfach nur --timestamp zu verwenden.
Du hast Recht, dass Problem ist nicht der Syno-Logdriver, sondern das Synology sich nicht die Mühe gemacht hat, es beim Anzeigen im Client (hier also in der Docker-UI) in die lokale Zeit zu überführen.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat