Appearance
Skill / /znf:top-issues
/znf:top-issues [--stg] [--since <duration>] [service-id...]
Khảo sát Grafana, xếp hạng top 5 issue hiện tại của hệ thống theo impact, đối tượng, tenant, money path và rủi ro, kèm phương án xử lý; issue được chọn chuyển sang /znf:fix.
Cách gọi
text
/znf:top-issues [--stg] [--since <duration>] [service-id...]Khi nào dùng
Khi bạn muốn biết hệ thống đang có vấn đề gì nặng nhất trước khi chọn bug để fix: gõ /znf:top-issues, hoặc hỏi "hệ thống đang lỗi gì", "top issue hiện tại". Mặc định chạy trên prd; thêm --stg cho staging, --since <duration> đổi cửa sổ (tối đa 48h), và liệt kê service id để thu hẹp phạm vi. Khi đã biết một bug cụ thể thì dùng /znf:fix.
Cách hoạt động
- Skill đọc tham số: môi trường (mặc định prd), cửa sổ thời gian (mặc định 24h, so với 24h ngay trước đó) và danh sách service nếu có.
- Skill lấy nguồn dữ liệu từ
zenify catalog: datasource uid, tên app Loki, tên service Tempo, và thuộc tính tenant. - Skill thu thập năm tín hiệu: alert đang firing hoặc pending, lỗi theo service và route, p95 theo route, dòng lỗi Loki theo app, và backlog queue nếu có metric. Mỗi tín hiệu được ghi "read" hoặc "not read" kèm lý do; kết quả rỗng hay lỗi không bao giờ được coi là "không có issue".
- Skill gộp các ứng viên cùng call chain hoặc cùng mẫu lỗi thành một issue.
- Skill chấm điểm theo rubric cố định (đối tượng, mức tenant, money path, chạm data, impact, xu hướng, severity) sau khi đã đếm số tenant lỗi trong 2h gần nhất cho mọi ứng viên bằng một query gộp, nên không ứng viên nào bị loại khi chưa biết mức tenant; rồi giữ top 5. Có ít hơn 5 issue thì chỉ in số đó, không độn thêm. Mọi số
now/prevdùng để chấm đều được in ra để bạn tự tính lại. - Với mỗi issue trong top 5, skill đào sâu:
zenify obstheo route và một trace mẫu (chỉ đọc mẫu thông điệp lỗi đã lọc giá trị), và tạo deeplink Grafana làm bằng chứng. - Skill viết phần xử lý cho từng issue: tín hiệu, đối tượng, tenant, money path, impact, rủi ro nếu để 7 ngày, giả thuyết nguyên nhân (đánh dấu confirmed hoặc inferred), cách xử lý tạm và sửa gốc, rủi ro và cách rollback, repo cần sửa, lệnh handoff, bằng chứng.
- Skill in báo cáo trong chat và ghi file, rồi hỏi bạn chọn issue #1 đến #5 hoặc "none". Chọn một issue thì skill gọi
/znf:fixchỉ với các trường có cấu trúc: catalog id, repo, route, khung thời gian, trace id, số đếm và mẫu thông điệp lỗi đã lọc giá trị.
Lưu ý
- Skill chỉ đọc: không sửa code, config hay data, chỉ gọi các tool MCP đọc của Grafana, và không chuyển việc cho ai khi bạn chưa chọn.
- Số tenant bị ảnh hưởng được tính trên 2h gần nhất, không phải cả cửa sổ khảo sát. Số tenant thường là "không xác định" khi span lỗi không mang thuộc tính tenant.
- Không có alert rule thì skill vẫn chạy: tín hiệu alert được ghi là không có alert rule do Grafana quản lý (skill vẫn đọc thêm rule do datasource quản lý) và các tín hiệu còn lại tiếp tục.
- Skill chỉ chuyển issue bạn chọn cho
/znf:fix. Với issue P0 trên prd, skill báo rõ điều đó và/znf:fixtự chuyển sang/znf:hotfixở bước 2b. - Mỗi lần chạy tối đa 40 lượt gọi MCP; chạm trần thì skill dừng thu thập và liệt kê phần chưa đọc ở đầu báo cáo.
zenify obslà lệnh CLI nên không tính vào trần. - Báo cáo được ghi vào
docs/exports/_cross/YYYY-MM-DD-top-issues-<env>.md; chạy lại trong cùng ngày thì ghi đè file của ngày đó. Nội dung tin nhắn, số điện thoại, email, tên khách và token được thay bằng<REDACTED>; tenant id được phép in (tối đa 3).