CodeGym /Kursy /Docker SELF /Logowanie kontenerów

Logowanie kontenerów

Docker SELF
Poziom 22 , Lekcja 0
Dostępny

6.1 Główne funkcje polecenia docker logs

Logowanie kontenerów to ważna część zarządzania i monitorowania aplikacji Docker. Logi pozwalają śledzić zachowanie kontenerów, diagnozować problemy i rozumieć, jak działają aplikacje wewnątrz kontenerów. W tym wykładzie szczegółowo przeanalizujemy, jak używać polecenia docker logs do logowania kontenerów.

Główne funkcje polecenia docker logs

Polecenie docker logs używane jest do wyciągania i przeglądania logów kontenerów. Pozwala na:

  • Przeglądanie standardowego wyjścia (stdout) i standardowego wyjścia błędów (stderr) kontenera.
  • Filtrowanie i śledzenie logów w czasie rzeczywistym.
  • Wyszukiwanie i analizowanie logów w celu diagnozowania problemów.

6.2 Korzystanie z komendy docker logs

1. Podgląd logów kontenera

Aby zobaczyć logi kontenera, użyj komendy:

Terminal

docker logs <container_id_or_name>

Przykład:

Terminal

docker logs my_container 

Ta komenda wyświetli wszystkie logi kontenera my_container.

2. Śledzenie logów w czasie rzeczywistym

Aby śledzić logi w czasie rzeczywistym, użyj flagi -f (lub --follow):

Terminal

docker logs -f <container_id_or_name>

Przykład:

Terminal

docker logs -f my_container

Ta komenda wyświetli nowe logi w miarę ich pojawiania się.

3. Ograniczenie liczby wyświetlanych linii

Aby ograniczyć liczbę linii wyświetlanych przez komendę docker logs, użyj flagi --tail:

Terminal

docker logs --tail <number_of_lines> <container_id_or_name>

Przykład:

Terminal

docker logs --tail 10 my_container

Ta komenda wyświetli ostatnie 10 linii logów kontenera my_container.

4. Wyświetlanie logów zaczynających się od określonego czasu

Aby wyświetlić logi zaczynające się od określonego czasu, użyj flagi --since:

Terminal

docker logs --since <timestamp> <container_id_or_name>

Przykład:

Terminal

docker logs --since 2022-01-01T00:00:00 my_container

Ta komenda wyświetli logi kontenera my_container, zaczynając od 1 stycznia 2022 roku.

5. Wyświetlanie logów do określonego czasu

Aby wyświetlić logi do określonego czasu, użyj flagi --until:

Terminal

docker logs --until <timestamp> <container_id_or_name>

Przykład:

Terminal

docker logs --until 2022-01-02T00:00:00 my_container

Ta komenda wyświetli logi kontenera my_container do 2 stycznia 2022 roku.

6.3 Przykłady użycia docker logs

Przykład 1: Diagnostyka błędu aplikacji

Jeśli Twoja aplikacja wewnątrz kontenera niespodziewanie zakończyła działanie z błędem, możesz użyć docker logs, aby zdiagnozować przyczynę:

Terminal

docker logs my_app_container 

Przeglądanie logów może pomóc Ci zrozumieć, co poszło nie tak i dlaczego aplikacja zakończyła działanie z błędem.

Przykład 2: Monitorowanie działania serwisu

Aby monitorować działanie serwisu web w czasie rzeczywistym, użyj flagi -f:

Terminal

docker logs -f web_service_container 

Ta komenda pozwoli Ci zobaczyć wszystkie nowe logi, które pojawiają się w serwisie web.

Przykład 3: Analiza logów z określonego okresu

Jeśli potrzebujesz przeanalizować logi z określonego okresu, użyj flag --since i --until:

Terminal

docker logs --since "2023-07-01" --until "2023-07-02" my_app_container 

Ta komenda wyświetli logi kontenera my_app_container z dnia 1 lipca 2023 roku.

6.4 Konfiguracja driverów logowania Docker

Docker wspiera różne drivery logowania, które można skonfigurować dla kontenerów. Główne drivery logowania to:

  • json-file: Domyślnie. Logi są zapisywane do plików w formacie JSON.
  • syslog: Logi są wysyłane do systemowego dziennika (syslog).
  • journald: Logi są wysyłane do systemu journald.
  • gelf: Logi są wysyłane do serwerów obsługujących protokół GELF (Graylog Extended Log Format).
  • fluentd: Logi są wysyłane do serwera Fluentd.

Instalacja drivera logowania

Aby zainstalować driver logowania, użyj flagi --log-driver przy uruchamianiu kontenera:

Terminal

docker run --log-driver <driver_name> <container_image>

Przykład:

Terminal

docker run --log-driver syslog my_app_image

Ten przykład uruchamia kontener z użyciem drivera logowania syslog.

Konfiguracja parametrów logowania

Możesz podać parametry logowania przy pomocy flagi --log-opt:

Terminal

docker run --log-driver syslog --log-opt syslog-address=udp://localhost:514 my_app_image
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION