log, debug - keo truc tiep

/imgposts/093wrfny.jpg

Sau khi cài đặt phiên bản mới nhất của Magento 2.4.7-p1, tôi phát hiện ra rằng không thể thêm sản phẩm từ giao diện quản trị. Cụ thể, không có bất kỳ thông báo nào hiển thị trên màn hình và quá trình lưu cũng không thực hiện được. Điều này buộc tôi phải kiểm tra các tệp nhật ký để tìm hiểu vấn đề.

Trong nhật ký Nginx, không có thông tin giá trị nào ngoài một bản ghi chuyển hướng 302 cho trang "edit".

Nhật ký của Magento được lưu trữ trong thư mục var/log/ tại thư mục gốc cài đặt Magento. Ví dụ, nếu Magento được cài đặt tại:

/var/www/html/magento/

thì thư b29 club mục chứa nhật ký sẽ nằm tại:

/var/www/html/magento/var/log/

Có bốn tệp nhật ký chính:

# ls var/log/
commerce-data-export.log debug.log exception.log system.log

system.log:

  • Tệp nhật ký này ghi lại các hoạt động và sự kiện chung của hệ thống Magento.
  • Nó chứa thông tin về các hoạt động và sự kiện xảy ra trong ứng dụng Magento như tải trang, xử lý đơn hàng, cập nhật sản phẩm, v.v.
  • Những thông tin này giúp bạn hiểu rõ hơn về tình trạng vận hành của hệ thống Magento và chẩn đoán các vấn đề tiềm ẩn.

debug.log:

  • Tệp nhật ký này ghi lại thông tin gỡ lỗi chi tiết của Magento.
  • Bao gồm các thông tin cụ thể như giá trị biến, cuộc gọi hàm, truy vấn SQL, v.v., giúp bạn dễ dàng chẩn đoán các vấn đề trong mã nguồn.
  • Tệp nhật ký này thường chỉ được sử dụng trong môi trường phát triển hoặc thử nghiệm vì nó có thể tạo ra khối lượng lớn thông tin, ảnh hưởng đến hiệu suất trong môi trường sản xuất.

exception.log:

  • Tệp nhật ký này chuyên ghi lại các ngoại lệ và lỗi xảy ra trong hệ thống Magento.
  • Bạn có thể xem trực tiếp các nhật ký lỗi ngoại lệ, đặc biệt là những lỗi xảy ra trong môi trường sản xuất mà không bị nhiễu bởi các thông tin khác.
  • Lưu ý rằng các lỗi liên quan đến việc không tìm thấy tài nguyên (như file CSS hoặc JS) sẽ không xuất hiện trong exception.log mà thay vào đó sẽ được ghi nhận trong system.log.

Ví dụ, nội dung trong system.log có thể trông như sau:

[2024-06-18T21:07:30] main.ERROR: Bộ máy tìm kiếm elasticsearch8 không tồn tại. Quay trở lại opensearch [] []
[2024-06-18T21:07:30] main.ERROR: Không thể kết nối với bộ máy tìm kiếm: Không tìm thấy nút sống trong cụm của bạn [] []
[2024-06-18T21:07:30] main.CRITICAL: Lỗi ngoại lệ: Không thể lưu mục kho. Vui lòng thử lại.

Trong khi đó, exception.log cung cấp logic rõ ràng hơn, ít nhất là có thông báo về việc không thể lưu trữ thành công. Ngoài ra, nó còn hiển thị lỗi liên quan đến các tệp tài nguyên như sau:

[2024-06-18T19:27:04] main.CRITICAL: Không thể giải quyết tệp nguồn cho 'adminhtml/Magento/backend/en_US/underscore-umd.js.map' [] []
[2024-06-18T19:27:11] main.ERROR: Không thể giải quyết tệp nguồn cho 'adminhtml/Magento/backend/en_US/jquery/uppy/dist/uppy.min.js.map' [] []

Ngoài ra, bạn có thể tham khảo các loại nhật ký khác như nhật ký cài đặt, kế hoạch công việc, bằng cách xem tài liệu chính thức của Magento.

Hướng dẫn phát triển tùy chỉnh chủ đề Magento 2