Debug trong Sitecore gần như 100% dựa vào logs.
Nếu bạn hiểu cách hoạt động log và các công cụ diagnostics, bạn sẽ xử lý lỗi nhanh hơn rất nhiều.
Sitecore sinh ra nhiều loại log khác nhau nằm trong:
Tên file dạng:
Chứa:
Runtime errors
Rendering errors
Database error
Pipeline lỗi
Crawler/Indexing warnings
Performance warnings
Dùng khi debug:
Không index item
Search trả sai kết quả
Dùng để kiểm tra:
Publish failed
Publish không chạy
Publish performance issues
Trong môi trường Azure:
Nếu dùng XP hoặc Marketing Automation:
xconnect-search.txt
xconnect-collection.txt
xconnect-tracking.txt
Debug:
Analytics
Contact/Interaction tracking
ERROR
FATAL
EXCEPTION
WARN
InnerException
Stack Trace
Ví dụ stack trace:
Mặc định Sitecore log ở mức INFO.
Bạn có thể bật DEBUG mode để ghi log chi tiết hơn:
Mở file:
Tìm:
Đổi thành:
⚠ Chỉ bật debug trong môi trường DEV, không bật ở PROD vì:
Log quá nặng
Ảnh hưởng performance
Sử dụng Sitecore.Diagnostics:
Sitecore có nhiều trang admin giúp debug nhanh:
Xem toàn bộ cấu hình sau khi merge file config + patch.
Xem:
CPU usage
Memory usage
Cache usage
Xem và xóa cache:
Data Cache
Item Cache
HTML Cache
Media Cache
Quản lý index (Solr)
Kiểm tra serialization
Debug các dịch vụ
Muốn debug component nào, bạn nên:
Bật trình tự pipeline rendering
Log tại Controller / View Rendering
Ví dụ:
→ Thiếu datasource, thiếu item, sai field name.
→ DB connection lỗi, query timeout.
→ Sai đường dẫn layout hoặc thiếu file view.
→ Model binding MVC sai type.
→ File media bị hỏng hoặc không publish.
Sitecore có desktop Log Viewer:
Hoặc bạn có thể dùng:
https://github.com/Sitecore/Sitecore-Log-Analyzer
Tính năng:
Highlight lỗi
Group theo loại exception
Filter theo thời gian
Tìm stack trace
Tìm log mới nhất trong folder:
Tạo lỗi NullReference trong controller và xem log xuất hiện thế nào.
Bật DEBUG LogLevel trong dev → kiểm tra log chi tiết.
Dùng Log Analyzer để đọc log 1 ngày.