Chuyển tới nội dung chính

Alerts

Route: /alerts

Trang này là màn hình theo dõi chỉ đọc (read-only) cho cảnh báo hệ thống.

Nguồn dữ liệu

  • GET /api/v1/admin/alerts/stats
  • GET /api/v1/admin/alerts?page=1&page_size=100

Thẻ KPI

  • Active Alerts (active_count)
  • Total Today (total_today)
  • Acknowledged (acknowledged_count)

Chi tiết danh sách cảnh báo

Mỗi dòng cảnh báo hiển thị:

  • Tiêu đề và nội dung
  • Nhãn nguồn (tên thiết bị hoặc email user dự phòng)
  • Mốc thời gian tương đối
  • Type badge
  • Severity badge
  • Status badge

Mapping type badge trong UI:

  • sos_alert -> SOS
  • geofence_alert -> Geofence
  • safe_search_alert -> Safe Search
  • limit_update -> Limit Update
  • device_disconnect_alert -> Disconnect
  • Loại không xác định -> Other

Mapping mức độ:

  • critical
  • warning
  • info

Mapping trạng thái:

  • active
  • acknowledged

Giá trị trạng thái không hợp lệ hiện được chuẩn hóa thành active trong UI hiện tại.

Hành vi bộ lọc

  • Bộ lọc phân đoạn: All, Active, Acknowledged
  • Trạng thái bộ lọc được đồng bộ vào query param status
    • Ví dụ: /alerts?status=active
    • Ví dụ: /alerts?status=acknowledged
  • Nếu status thiếu hoặc không hợp lệ, mặc định là all

Hành vi trang

  • Tự làm mới mỗi 30 giây cho cả stats và danh sách
  • Hiển thị skeleton khi đang tải
  • Trạng thái rỗng:
    • Không có cảnh báo
    • Không có cảnh báo active
    • Không có cảnh báo acknowledged

Giới hạn hiện tại (theo code)

  • Trang hiện chỉ tải 100 cảnh báo đầu tiên (page=1&page_size=100)
  • Lọc trạng thái đang thực hiện phía client trên tập đã tải
  • Trang này chưa có thao tác acknowledge hoặc resolve

Quy trình thường dùng

  1. Xem KPI để đánh giá tổng khối lượng cảnh báo.
  2. Dùng bộ lọc Active để xử lý sự cố đang mở.
  3. Ưu tiên theo loại và mức độ.
  4. Điều tra sâu ở trang thiết bị hoặc người dùng liên quan.
  5. Khi cần, đối chiếu timeline trong audit logs.

Trang liên quan