Định dạng truy cập gốc của Squid bắt đầu bằng dấu thời gian epoch, thường được viết là %ts.%03tu: số giây kể từ epoch theo sau là ba chữ số mili giây. Giá trị ở vị trí đó không phải là ngày lịch được định dạng.

Trước tiên hãy kiểm tra định dạng access_log đang hoạt động. Với Squid 7, hãy xem lựa chọn đầu ra và định dạng của access_log cho phiên bản đó. Định dạng nhật ký tùy chỉnh, tiền tố syslog hoặc bộ xử lý nhật ký hạ nguồn có thể đặt một dấu thời gian khác ở đầu dòng hiển thị.

Ba bước kiểm tra thu hẹp vấn đề

  1. Giải mã giá trị số bằng đơn vị chính xác. Các chữ số thập phân là một phần của giá trị giây, không phải một dấu thời gian nguyên riêng biệt tính bằng mili giây.
  2. So sánh thời gian UTC đã giải mã với hiển thị giờ địa phương. Chênh lệch múi giờ có thể dịch chuyển giờ hiển thị và đôi khi cả ngày lịch; nhưng nó không giải thích được một ngày cách xa nhiều năm.
  3. So sánh một bản ghi mới với đồng hồ của máy đang chạy phiên bản Squid đó. Trên máy chủ systemd, timedatectl status báo cáo cài đặt đồng hồ và trạng thái đồng bộ hóa.

Nếu đồng hồ của máy chủ cũng sai, hãy điều tra việc đồng bộ thời gian và, nếu có, cấu hình thời gian của máy ảo. Một ngày nhật ký không hợp lý duy nhất không đủ để xác định pin đồng hồ phần cứng bị hỏng.

Nếu đồng hồ của máy chủ đúng, hãy xác nhận tệp là hiện tại và thuộc về phiên bản đó. Kiểm tra các kho lưu trữ luân chuyển, bộ thu thập từ xa và việc chuyển đổi dấu thời gian trong công cụ xem.

Cũng phân biệt dấu thời gian của giao dịch với thời điểm bộ thu thập nhận được dòng. Ghi nhật ký truy cập thông thường xảy ra khi yêu cầu hoàn tất, và ghi nhật ký daemon có thể ghi không đồng bộ. Một yêu cầu hoặc đường hầm chạy lâu không nhất thiết phải xuất hiện ở thời điểm kết nối ban đầu.

Bài viết liên quan