Puncte:0

apache în docker: cea mai bună practică pentru a gestiona jurnalele scrise pe volumul montat?

drapel in

Care este cea mai bună practică pentru a scrie și gestiona fișierele jurnal scrise de Apache HTTPD care rulează într-un container?

Rulăm Apache HTTPD folosind imaginea de bază Docker httpd:2.4-bullseye. În acest moment, HTTPD este configurat să își scrie jurnalele în stdout și stderr. Docker captează acea ieșire a containerului și pot vedea conținutul jurnalului prin jurnalele docker <containerId>.

Aș dori să reconfigurez HTTPD, astfel încât accesul, eroarea și alte rezultate de jurnal HTTPD să fie trimise la fișiere, care vor păstra/publica acea ieșire într-un mod evident. Mă descurc cu revizuirea httpd.conf și httpd-ssl.conf, cu siguranță pot monta un volum pe container și voi lupta cu permisiunile de proces și director până când procesul HTTPD care rulează docker poate scrie.

Sunt îngrijorat de rotirea periodică a fișierelor jurnal. Document apache relevant: https://httpd.apache.org/docs/2.4/logs.html#rotation

M-am gândit la logrotate, dar nu sunt sigur că este potrivit aici. Doar pentru context, în vechea metodă de implementare all-on-one-one-machine fără docker, HTTPD a scris un fișier cu ID-ul său de proces, apoi logrotate a citit acel fișier și a trimis un semnal (HUP) procesului httpd, care, la rândul său, re -citiți configurația sa, refaceți fișierele jurnal etc.

Vă rog să-mi spuneți, care este modalitatea corectă pentru o implementare apache-in-docker în care logrotate nu poate trimite un semnal către HTTPD-ul care rulează? Ieșirea jurnalului de conducte la executabilul furnizat de apache jurnalele rotative cea mai buna alegere?

UPDATE: creat cu succes un utilizator, configurat utilizatorul în httpd.conf, a montat un volum și a instalat următoarele linii httpd-ssl.conf în interiorul unei directive VirtualHost:

ErrorLog „|bin/rotatelogs -n 14 /opt/data/logs/httpd-error.log 86400”
TransferLog „|bin/rotatelogs -n 14 /opt/data/logs/httpd-transfer.log 86400”
CustomLog „|bin/rotatelogs -n 14 /opt/data/logs/httpd-ssl.log 86400” \
      „%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

Totusi as dori sa aud parerea unui expert, multumesc anticipat

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.