Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Cara pekerja pelabuhan mencetak log

Cara pekerja pelabuhan mencetak log

PHPz
PHPzasal
2023-04-10 14:17:473600semak imbas

Apabila menggunakan Docker untuk mengurus aplikasi kami, keperluan biasa ialah mengurus log aplikasi dengan berkesan. Cara mencetak log dalam bekas Docker adalah salah satu kemahiran yang perlu dikuasai oleh setiap pengguna Docker. Artikel ini akan memperkenalkan pengurusan log kontena Docker, termasuk cara mencetak log kontena dan cara menggunakan alatan yang disediakan oleh Docker untuk mengurus log dengan berkesan.

1. Pengenalan kepada log kontena Docker

Log kontena Docker (Log Kontena) merujuk kepada output rekod maklumat oleh aplikasi yang dijalankan dalam bekas Docker. Rekod ini termasuk status berjalan aplikasi, mesej ralat, output penyahpepijatan, dsb. Maklumat log ini penting untuk menyelesaikan masalah dan memantau kesihatan aplikasi anda.

Log kontena Docker dikeluarkan melalui STDOUT dan STDERR, ditangkap dan direkodkan oleh daemon Docker. Docker menyimpan log kontena dalam direktori /var/lib/docker/containers hos secara lalai.

2. Cetak log bekas Docker

Docker menyediakan berbilang cara untuk melihat log kontena. Berikut akan memperkenalkan beberapa cara yang biasa digunakan untuk melihat log kontena Docker.

  1. arahan log docker

Perintah log docker ialah cara yang paling mudah dan paling biasa digunakan untuk melihat log kontena Docker. Dengan arahan ini, kami boleh melihat semua maklumat log kontena dengan mudah.

Sintaks:

log buruh pelabuhan [OPSYEN] BEKAS

Antaranya, parameter OPTIONS termasuk:

-a, semua bekas

- -perincian, paparkan maklumat output log tambahan

--ikut, jejak output log

--kerana, nyatakan cap masa untuk memulakan output dari masa yang ditetapkan

-- tail, Hanya keluarkan N baris terakhir maklumat log

--cap masa, paparan cap masa

Contoh:

$ docker logs my_container

Arahan ini akan keluarkan my_container Semua maklumat log bekas.

  1. Lihat fail log bekas

Anda boleh mendapatkan shell bash bekas Docker melalui arahan bash, dan kemudian lihat fail log bekas.

Sintaks:

$ docker exec -it CONTAINER bash
$ cd /var/log
$ ls

Baris arahan pertama boleh memasuki bash daripada cangkerang kontena, arahan kedua pergi ke direktori tempat fail log berada, dan perintah ketiga menyenaraikan fail log.

Contohnya:

$ docker exec -it my_container bash
$ cd /var/log
$ ls

  1. Gunakan pemacu log Docker

Pemandu log Docker menyokong penghantaran log kontena ke alat pengurusan log pihak ketiga, seperti ELK, dsb. Dengan mengkonfigurasi pemacu log Docker, kami boleh mengurus, menapis dan memajukan log dengan mudah untuk bekas kami. Berikut ialah beberapa pemacu log yang biasa digunakan:

json-file: Simpan log kontena dalam format Json ke dalam fail setempat

syslog: Hantar log kontena ke pelayan syslog melalui protokol syslog

jurnal: Hantar log kontena ke jurnal Linux melalui perkhidmatan systemd-journald dan rekodkannya dalam sistem fail log hos

Langkah khusus untuk menggunakan pemacu log Docker adalah seperti berikut:

1. Buat pemacu pembalakan. Seperti berikut:

$ docker plugin install --grant-all-permissions dev-logging

2. Mulakan bekas dan nyatakan pemacu log:

$ docker run - - name=my_container --log-driver=dev-logging IMAGE

3. Pengurusan log Docker

Docker menyediakan beberapa alatan berguna untuk mengurus log kontena, membolehkan kami menapis dan mencari , putaran dan kaedah lain untuk menguruskan log dengan berkesan.

  1. Gunakan perintah log docker untuk menapis

Gunakan parameter --grep perintah log docker untuk menapis log kontena berdasarkan parameter. Sebagai contoh, arahan berikut akan mengeluarkan semua mesej ralat dalam fail all.log dalam bekas my_container:

$ docker logs my_container |

  1. Logrotate ialah alat penggiliran log yang sangat baik. Dengan memasang alat Logrotate dalam bekas Docker, anda boleh memutarkan log kontena dengan mudah.
Pasang logrotate:

$ apt-get update && apt-get -y -q install logrotate

Gunakan alatan pihak ketiga

  1. Logplex ialah perkhidmatan pengelogan awan yang dibangunkan oleh Heroku untuk mengurus log aplikasi dan komponen. Kami boleh memuat naik output log dengan mudah oleh aplikasi ke Logplex melalui API Logplex dan menyokong pertanyaan tontonan dan penapisan log.
Pada ketika ini, anda telah menguasai kemahiran asas pengurusan log kontena Docker, termasuk cara mencetak log dan cara menggunakan pemacu log Docker untuk penapisan log, putaran dan operasi lain. Semoga artikel ini bermanfaat kepada anda.

Atas ialah kandungan terperinci Cara pekerja pelabuhan mencetak log. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn