Điểm:0

apache trong docker: cách tốt nhất để quản lý nhật ký được ghi vào âm lượng được gắn?

lá cờ in

Cách tốt nhất để viết và quản lý các tệp nhật ký được viết bởi Apache HTTPD đang chạy trong một vùng chứa là gì?

Chúng tôi chạy Apache HTTPD bằng hình ảnh cơ sở docker httpd:2.4-bullseye. Ngay bây giờ HTTPD được định cấu hình để ghi nhật ký của nó vào thiết bị xuất chuẩn và thiết bị xuất chuẩn. Docker nắm bắt đầu ra của vùng chứa đó và tôi có thể xem nội dung nhật ký qua nhật ký docker <containerId>.

Tôi muốn định cấu hình lại HTTPD để quyền truy cập, lỗi và đầu ra nhật ký HTTPD khác chuyển đến tệp, tệp này sẽ bảo toàn/xuất bản đầu ra đó theo cách rõ ràng. Tôi có thể xử lý việc sửa đổi httpd.conf và httpd-ssl.conf, tôi chắc chắn có thể gắn một ổ đĩa vào vùng chứa và tôi sẽ chiến đấu với các quyền của quy trình và thư mục cho đến khi quy trình HTTPD chạy docker có thể ghi.

Tôi lo lắng về việc xoay các tệp nhật ký theo định kỳ. Tài liệu apache có liên quan: https://httpd.Apache.org/docs/2.4/logs.html#rotation

Tôi nghĩ về logrotate nhưng không chắc nó phù hợp ở đây. Đối với ngữ cảnh, trong phương thức triển khai không có docker tất cả trên một máy cũ, HTTPD đã viết một tệp có ID tiến trình của nó, sau đó logrotate đọc tệp đó và gửi tín hiệu (HUP) đến quy trình httpd, quy trình này sẽ lần lượt -đọc cấu hình của nó, làm lại các tệp nhật ký của nó, v.v.

Vui lòng cho tôi biết, cách phù hợp để triển khai apache-in-docker trong đó logrotate không thể gửi tín hiệu tới HTTPD đang chạy là gì? Đầu ra nhật ký đường ống có phải là tệp thực thi do apache cung cấp không quay nhật ký sự lựa chọn tốt nhất?

CẬP NHẬT: đã tạo thành công người dùng, đã định cấu hình người dùng trong httpd.conf, gắn một ổ đĩa và đặt các dòng sau vào httpd-ssl.conf bên trong một chỉ thị 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"

Vẫn muốn nghe ý kiến ​​​​của một chuyên gia, cảm ơn trước

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.