Giao diện
Cài đặt và sử dụng — Audit Logs
Yêu cầu hệ thống
- Server Digiforce đang chạy
- (Khuyến nghị) Plugin
plugin-audit-loggerđã bật để có engine ghi log
Bước 1: Kích hoạt plugin
Vào Settings → Plugin Manager, tìm plugin-audit-logs và bật. Khởi động lại server.
TIP
Plugin này cung cấp giao diện xem nhật ký và đăng ký DB hooks ghi log tự động. Kết hợp với plugin-audit-logger để có hệ thống audit đầy đủ.
Bước 2: Xem Audit Logs
Vào Settings → Audit Logs để xem nhật ký hoạt động:
| Cột | Mô tả | Ví dụ |
|---|---|---|
| Thời gian | Khi nào hành động xảy ra | 2024-03-15 10:30:00 |
| Người dùng | Ai thực hiện | admin, editor@company.com |
| Hành động | Loại hành động | create, update, destroy |
| Collection | Bảng/collection bị tác động | orders, products, users |
| Bản ghi | ID bản ghi cụ thể | #1234 |
| Chi tiết | Dữ liệu trước và sau thay đổi | title: "Draft" → "Published" |
Cơ chế ghi log
Plugin sử dụng DB Hooks để tự động ghi nhận mọi thay đổi:
| Hook | Khi nào | Ghi nhận gì |
|---|---|---|
afterCreate | Sau khi tạo bản ghi | action = create, before = null, after = giá trị mới |
afterUpdate | Sau khi cập nhật | action = update, before = giá trị cũ, after = giá trị mới |
afterDestroy | Sau khi xoá | action = destroy, before = giá trị cũ, after = null |
Bộ lọc (Filters)
Giao diện audit logs hỗ trợ bộ lọc mạnh mẽ:
| Bộ lọc | Mô tả | Ví dụ |
|---|---|---|
| Thời gian | Lọc theo khoảng thời gian | Từ 01/01/2024 đến 31/03/2024 |
| Người dùng | Lọc theo người thực hiện | Chỉ xem hành động của user "admin" |
| Collection | Lọc theo collection bị tác động | Chỉ xem thay đổi trên orders |
| Hành động | Lọc theo loại hành động | Chỉ xem delete (xoá) |
Xem chi tiết thay đổi
Nhấn vào một log entry để xem diff chi tiết dạng visual:
Field Before After
─────────────────────────────────────────
title "Bản nháp" "Đã xuất bản"
status "draft" "published"
updatedBy null "admin"Hiển thị rõ ràng giá trị trước (before) và sau (after) cho từng field thay đổi.
Cấu hình
| Tham số | Mặc định | Mô tả |
|---|---|---|
| Retention | 90 ngày | Thời gian giữ log — log cũ hơn tự động xoá |
| Collections | Tất cả | Chọn collections cần ghi log — bỏ chọn những cái không cần |
| Actions | create, update, delete | Loại hành động cần ghi |
Dung lượng Database
Audit logs tăng dung lượng database theo thời gian. Với hệ thống có nhiều thao tác:
- Cấu hình retention phù hợp (30–90 ngày)
- Chỉ ghi log cho collections quan trọng
- Chạy cleanup job định kỳ
Các trường hợp sử dụng
| Trường hợp | Mô tả | Cách sử dụng |
|---|---|---|
| Điều tra sự cố | Xem ai đã thay đổi dữ liệu dẫn đến lỗi | Lọc theo collection + thời gian |
| Theo dõi nhân viên | Giám sát hoạt động CRUD | Lọc theo người dùng |
| Tuân thủ (Compliance) | Lưu trữ nhật ký cho ISO 27001, SOC 2 | Cấu hình retention dài (1 năm+) |
| Khôi phục dữ liệu | Xem giá trị trước khi bị sửa/xoá | Xem chi tiết log → copy giá trị cũ |
| Xuất báo cáo | Báo cáo audit theo thời gian | Export log ra CSV |
Thêm Audit Logs Block vào trang
Ngoài trang Settings, bạn có thể thêm Audit Logs Block vào bất kỳ trang nào:
- Vào trang muốn thêm → Add Block
- Chọn Audit Logs từ danh sách block types
- Cấu hình bộ lọc mặc định (collection, thời gian...)
- Block hiển thị nhật ký thao tác với đầy đủ filter/sort/paginate
Lưu ý quan trọng
- Audit logs chỉ ghi thao tác qua API — truy vấn SQL trực tiếp không được ghi
- Log chiếm dung lượng database — cấu hình retention phù hợp
- Kết hợp với
plugin-audit-loggerđể có hệ thống audit đầy đủ - Audit log được thiết kế là bất biến — không nên sửa/xoá log đã ghi