Vận hành một phần mềm luôn là câu chuyện phức tạp đối với người dùng, sẽ luôn có những sai sót thậm chí là gian lận xảy ra, vậy nên truy vết hành động của một quản trị viên chính là một nỗi đau của khách hàng.

Những hành động nào của quản trị viên sẽ được quản lý

Để có bao quát được nhiều hành động nhất thì EzyPlatform sẽ quản lý các hành động sau của quản trị viên:

  1. Truy cập vào một màn hình nào đó.
  2. Gọi các API dạng POST, PUT, DELETE nghĩa là các API gây ra sự thay đổi dữ liệu.

Nếu có các số kèm theo các hành động thì EzyPlatform cũng sẽ lưu lại.

Cách thức quản lý hành động

Một hành động của quản trị viên sẽ làm phát sinh một request gửi đến trang admin và sẽ được đánh chặn theo sơ đồ sau:

EzyPlatform quản lý hành động quản trị viên.png
  1. Lớp AdminActivityHistoryInterceptor sẽ làm nhiệm vụ đánh chặn tất cả các yêu cầu gửi đến admin, nó sẽ xem xét các hành động cần quản lý.
  2. Khi một hành động của quản trị việc được xem là cần quản lý AdminActivityHistoryInterceptor sẽ gọi đến lớp AdminAdminActivityHistoryService đê lưu lại thông tin.
  3. Lớp AdminAdminActivityHistoryService sẽ gọi đến lớp AdminAdminActivityHistoryRepository để lưu lại thông tin về URI, các tham số, loại phương thức của hành động vào cơ sở dữ liệu.

Truy xuất danh sách hành động của quản trị viên

Từ giao diện quản trị bạn có thể truy xuất vào profile của mình hoặc của một admin khác nếu được cấp quyền, bạn sẽ thấy được toàn bộ cách hành động của quản trị viên.

Screenshot 2024-11-28 at 15.48.43.png

Vấn đề hiệu năng

Sẽ có các nhà phát triển phân vân rằng với hàng trăm nghìn, hàng triệu hành động có thể diễn ra thì hiệu năng ở phần truy xuất danh sách các hành động của quản trị viên sẽ gặp vấn. Thì không có gì đáng lo ngại, dựa theo cơ chế phân trang dữ liệu của EzyPlatform theo kiểu con trỏ sẽ đáp ứng thoải mái với số lượng lớn các hành động.

Tổng kết

Việc quản lý các hành động của quản trị viên là cực kỳ cần thiết để truy vết lại khi cần. EzyPlatform đã đóng gọi lại tính năng này để các nhà phát triển và người dùng có thể yên tâm sử dụng mà không cần phải phát triển lại.