Mục lục thư viện
Thư viện tài liệuBảo mật
Nhật ký hoạt động
Mỗi lần phần mềm của bạn kích hoạt key, đăng nhập, bắt đầu dùng thử hay tải bản cập nhật, ClavisAUH ghi lại một dòng: sự kiện gì, được chấp nhận hay bị từ chối, và vì sao. Khi khách báo "không vào được", đây là nơi đầu tiên bạn nên mở.
12 phút đọc
Mở nhật ký
- Vào Không gian làm việc › Ứng dụng và mở ứng dụng cần xem.
- Chọn Bảo mật ứng dụng › Nhật ký hoạt động. Khi đang ở trong một ứng dụng, bạn cũng có thể bấm
grồiy.
Mọi thành viên của workspace đều xem được trang này. Dòng mới nhất nằm trên cùng, danh sách tự làm mới mỗi 20 giây và tải 50 dòng mỗi lần; bấm Tải cũ hơn ở cuối danh sách để xem tiếp.
Muốn xem riêng một key, mở Phát hành & bản quyền › License và bấm vào dòng key (hoặc Xem chi tiết trong menu của dòng). Mục Lượt gọi SDK gần đây trong ngăn chi tiết liệt kê 10 dòng nhật ký mới nhất của license đó, kèm lý do nếu bị từ chối.
Mỗi dòng ghi lại gì
| Trường | Nội dung |
|---|---|
| Sự kiện | Loại yêu cầu, ví dụ license.activate (xem bảng bên dưới) |
| Kết quả | ok, denied hoặc error |
| Lý do | Mã lý do khi bị từ chối hoặc lỗi, trùng với err.code mà SDK nhận được |
| License | License liên quan, khi máy chủ đã xác định được |
| Người dùng | Tài khoản người dùng cuối, với các lần đăng ký, đăng nhập và đổi key thành công |
| Thiết bị | Máy liên quan, với các lần thành công |
| IP | Địa chỉ IP của yêu cầu |
| Quốc gia | Mã quốc gia của yêu cầu từ phần mềm, chỉ có khi máy chủ API chạy sau Cloudflare |
| Thời gian | Thời điểm ghi |
Bảng trên trang hiện chấm màu kết quả, Sự kiện, Lý do, IP (ẩn trên màn hình hẹp) và Thời gian dạng tương đối; rê chuột lên thời gian để xem ngày giờ chính xác. License, người dùng, thiết bị và quốc gia được lưu cùng dòng nhưng chưa có cột riêng; để xem theo key, dùng mục Lượt gọi SDK gần đây nói trên.
Ba kết quả:
- Chấp nhận (chấm xanh): yêu cầu thành công.
- Từ chối (chấm đỏ): yêu cầu đúng giao thức nhưng bị trạng thái license hoặc luật của bạn chặn. Dòng này có thể gắn license liên quan, nhưng không gắn người dùng và thiết bị.
- Lỗi (chấm vàng): lỗi bất ngờ phía máy chủ. Lý do luôn là
internal_error(Lỗi máy chủ) và không gắn license.
Các sự kiện được ghi
| Sự kiện | Nhãn trên dashboard | Khi nào |
|---|---|---|
license.activate | Kích hoạt key | clavis.activate(key) |
trial.start | Dùng thử | clavis.trial() |
user.register | Người dùng đăng ký | clavis.register(...) |
user.login | Người dùng đăng nhập | clavis.login(...) |
user.redeem | Đổi key nâng cấp | clavis.redeem(key) |
device.release | Tự trả suất máy | clavis.transfer() |
session.logout | Đăng xuất | clavis.logout() thành công |
release.check | Kiểm tra cập nhật | clavis.checkUpdates() khi kênh có bản phát hành |
release.download | Tải bản cập nhật | Phần mềm tải file qua link trong manifest cập nhật |
client.report | SDK báo can thiệp | SDK gửi báo cáo can thiệp hoặc báo câu trả lời không xác minh được |
portal.device_release | (hiện nguyên mã) | Khách gỡ máy trong cổng khách hàng |
Sáu sự kiện đầu được ghi ở cả ba kết quả. Năm sự kiện còn lại chỉ ghi lần thành công. Link tải bạn lấy từ dashboard không tạo dòng release.download. Với client.report, Chấp nhận nghĩa là máy chủ đã nhận báo cáo, không có nghĩa máy đó an toàn; mỗi phiên được ghi tối đa 5 báo cáo mỗi giờ.
Những gì không có trong nhật ký
init(),heartbeat()vàvariables()không tạo dòng nào, kể cả khi lỗi, ví dụsession_expiredlúc gọi heartbeat. Lỗi phiên khi gọicheckUpdates()cũng không được ghi.- Yêu cầu bị chặn ngay ở lớp giao thức, trước bước xử lý: thiếu header, chữ ký sai, request bị phát lại, đồng hồ lệch (
clock_skew), body sai định dạng, ứng dụng đang tạm dừng, IP đang bị Protect chặn, hoặc luật ở tab Quy tắc truy cập (access_blocked). Phần mềm vẫn nhận đúng mã lỗi, và phần lớn các trường hợp này được Protect 24/7 ghi thành tín hiệu như Chữ ký giả mạo, Yêu cầu phát lại, Lệch đồng hồ hay Bị chặn bởi luật truy cập. Riêngclock_skew, SDK JavaScript tự chỉnh đồng hồ theo máy chủ và thử lại một lần. - Các mã
unsigned_response,unknown_key,invalid_response_signaturevàstale_responsedo SDK tự sinh khi không xác minh được câu trả lời, nên không bao giờ là lý do trong nhật ký. Ở lần nhận được câu trả lời hợp lệ kế tiếp, SDK JavaScript báo lại cho máy chủ và bạn thấy một dòng SDK báo can thiệp.
Lọc nhật ký
Thanh lọc ở đầu trang có bốn lựa chọn: Tất cả, Chấp nhận, Từ chối, Lỗi. Lựa chọn được giữ trên URL (ví dụ ?outcome=denied), nên bạn có thể đánh dấu trang hoặc gửi link cho đồng đội để mở thẳng danh sách bị từ chối. Hiện trang chỉ lọc theo kết quả.
Khi khách báo lỗi, cách tìm nhanh nhất:
- Mở Bảo mật ứng dụng › Nhật ký hoạt động và chọn Từ chối.
- Tìm dòng theo thời điểm khách thử và IP của khách.
- Đọc cột Lý do rồi tra bảng bên dưới.
- Nếu biết key, mở license đó để xem Lượt gọi SDK gần đây và danh sách thiết bị.
Mã lý do từ chối
Cột Nhãn là chữ hiện ở cột Lý do. Mã chưa có nhãn được hiện nguyên văn. Danh sách mã lỗi đầy đủ của giao thức có trong tham chiếu giao thức.
Key, license và đăng nhập
| Mã | Nhãn | Ý nghĩa |
|---|---|---|
invalid_credentials | Thông tin đăng nhập không hợp lệ | Sai tên đăng nhập hoặc mật khẩu. Với SDK JavaScript (giao thức CLV1.1), key không tồn tại, bị tạm khoá, bị thu hồi hay đã hết hạn cũng trả về mã này, trừ khi chính máy đó đang giữ suất của key, để kẻ dò key không phân biệt được key nào có thật |
invalid_key | Key không tồn tại | Key không thuộc ứng dụng này; chỉ client dùng giao thức CLV1 cũ nhận mã này |
license_expired | License hết hạn | Đã qua ngày hết hạn và cả số ngày ân hạn của gói |
license_suspended | License bị tạm khoá | Key đang bị Tạm khoá |
license_revoked | License bị thu hồi | Key đã bị Thu hồi hoặc đã bị xoá |
too_many_attempts | Thử quá nhiều lần | Cùng một IP đã nhập sai key hoặc mật khẩu 20 lần vào ứng dụng; IP đó phải đợi tối đa 15 phút, IP khác không bị ảnh hưởng |
mode_not_allowed | sai cửa đăng nhập | Phần mềm gọi hàm mà chế độ đăng nhập của ứng dụng không nhận, xem Chế độ đăng nhập và dùng thử |
Thiết bị và phiên
| Mã | Nhãn | Ý nghĩa |
|---|---|---|
device_limit | Vượt số thiết bị | Key đã đủ số máy, xem Thiết bị, HWID và chuyển máy |
device_blocked | thiết bị bị chặn | Máy đã bị chặn trong ứng dụng này |
session_limit | vượt số phiên cùng lúc | Key đã chạm số phiên đồng thời cho phép |
session_device_mismatch | phiên của máy khác | Mã phiên được gửi từ một máy có khoá thiết bị khác, thường là phiên bị sao chép |
transfer_limited | chuyển máy đang bị giới hạn | Hết lượt chuyển máy hoặc đang trong thời gian chờ |
transfer_not_allowed | không được tự chuyển máy | Gói không cho khách tự chuyển máy |
device_limit và session_device_mismatch được Protect 24/7 tính là tín hiệu Chia sẻ key, session_limit là Vượt phiên đồng thời.
Tài khoản người dùng
| Mã | Nhãn | Ý nghĩa |
|---|---|---|
user_banned | Người dùng bị cấm | Tài khoản đã bị Cấm |
no_license | Tài khoản chưa có license | Tài khoản không gắn license nào |
username_taken | Tên đăng nhập đã có | Tên đăng nhập đã được dùng trong ứng dụng |
license_already_registered | License đã được đăng ký | Key đã gắn với một tài khoản khác |
user_limit | đủ số tài khoản của gói | Ứng dụng đã đủ số người dùng gói workspace cho phép; gói có hạn mức mềm (Premium mặc định) không chặn ở bước này |
account_required | cần đăng nhập tài khoản | Gọi redeem() khi chưa đăng nhập bằng tài khoản |
already_redeemed | key đã thuộc tài khoản này | Đổi lại đúng key tài khoản đang dùng |
Dùng thử
| Mã | Nhãn | Ý nghĩa |
|---|---|---|
trial_unavailable | app chưa mở dùng thử | Không gói nào của ứng dụng có Số ngày thử lớn hơn 0 |
trial_used | máy đã dùng thử | Máy này đã dùng lượt thử và sau đó đã kích hoạt key mua |
trial_expired | hết thời gian thử | Lượt thử đã hết và ô Hết thử thì về của gói là Dừng hẳn |
trial_denied | máy rủi ro không được thử | IP của máy đang có điểm rủi ro cao trong Protect 24/7 |
Phiên bản và bảo trì
| Mã | Nhãn | Ý nghĩa |
|---|---|---|
update_required | cần cập nhật | Phiên bản thấp hơn Phiên bản tối thiểu trong Phát hành & bản quyền › Bản phát hành |
build_blocked | bản bị chặn | Phiên bản hoặc file đang chạy thuộc một bản phát hành đã bị Chặn bản này |
unknown_build | bản build lạ | Kiểm tra toàn vẹn build ở chế độ Chặn, ứng dụng đã có bản phát hành, và hash file đang chạy không khớp file nào trong đó |
maintenance | đang bảo trì | Chế độ bảo trì đang bật |
Đọc lý do từ chối trong phần mềm
Mã ở cột Lý do chính là err.code mà SDK ném ra. Hãy dùng nó để hiện thông báo dễ hiểu cho khách, và để đối chiếu với nhật ký khi hỗ trợ.
import { ClavisError, ClavisVerificationError } from "@clavisauh/sdk";
const MESSAGES: Record<string, string> = {
invalid_credentials: "Key hoặc tài khoản không hợp lệ.",
device_limit: "Key đã dùng đủ số máy. Hãy gỡ một máy cũ rồi thử lại.",
license_expired: "License đã hết hạn.",
too_many_attempts: "Bạn đã thử sai quá nhiều lần, vui lòng đợi ít phút.",
update_required: "Vui lòng cập nhật lên phiên bản mới.",
};
try {
await clavis.activate(licenseKey);
} catch (err) {
if (err instanceof ClavisVerificationError) {
// Không xác minh được câu trả lời: coi như mất kết nối, không đổi trạng thái license
} else if (err instanceof ClavisError) {
// Kèm mã lỗi để khách gửi lại, bạn tra đúng dòng trong Nhật ký hoạt động
showMessage(`${MESSAGES[err.code] ?? err.message} (${err.code})`);
}
}
Biểu đồ ở trang Tổng quan
Trang Không gian làm việc › Tổng quan tổng hợp nhật ký của mọi ứng dụng trong workspace:
- Ô Lượt đăng nhập · 30 ngày cộng các lượt đăng nhập được chấp nhận trong 30 ngày qua (cùng số liệu với biểu đồ bên dưới), kèm một đường xu hướng nhỏ.
- Biểu đồ Lượt đăng nhập vẽ theo ngày (UTC) trong 30 ngày: Chấp nhận là vùng tô màu, Từ chối là nét đứt. Chỉ ba sự kiện được tính: kích hoạt key, người dùng đăng nhập và người dùng đăng ký. Dùng thử, đổi key, đăng xuất hay cập nhật không nằm trong biểu đồ.
- Thẻ Lý do bị từ chối liệt kê tối đa 6 lý do gặp nhiều nhất trong 7 ngày qua, tính trên mọi sự kiện. Lần từ chối không có mã được gộp vào Khác.
Trang Tổng quan của từng ứng dụng có cùng biểu đồ Lượt đăng nhập, chỉ tính ứng dụng đó. Các ô License đang dùng, Key chưa dùng và Phiên đang hoạt động lấy từ license và phiên, không từ nhật ký.
Nhật ký cũng là nguồn dữ liệu cho Protect 24/7: biểu đồ theo giờ đếm lượt chấp nhận và từ chối, và tín hiệu Từ chối tăng đột biến bật khi một giờ có từ 20 lần từ chối trở lên, cao hơn hẳn mức thường thấy của ứng dụng trong 14 ngày trước.
Thời gian lưu nhật ký
Nhật ký được giữ theo hạn mức Lưu log (ngày) của gói workspace, xem tại Tài khoản & tổ chức › Gói & sử dụng. Theo cấu hình mặc định, Basic giữ 7 ngày và Premium giữ 90 ngày. So sánh các gói ở bảng giá.
Việc dọn dẹp chạy mỗi đêm lúc 03:30 giờ Việt Nam và không bao giờ xoá âm thầm:
- Khi dòng cũ nhất của workspace còn chưa tới 3 ngày nữa là quá hạn lưu, mọi Chủ sở hữu của workspace nhận email báo rằng log cũ hơn hạn lưu sẽ bị xoá sau 3 ngày. Đêm đó chưa có gì bị xoá.
- Khi email đã gửi được ít nhất 3 ngày, mỗi đêm hệ thống xoá phần cũ hơn hạn lưu.
- Trong lúc việc dọn dẹp còn tiếp diễn, email nhắc được gửi lại tối đa 30 ngày một lần, và sau mỗi lần nhắc, việc xoá lại chờ đủ 3 ngày.
Cùng hạn lưu này áp dụng cho nhật ký request của Seller API, tín hiệu Protect 24/7 và các lần gửi webhook đã hoàn tất. Nhật ký kiểm toán không bị đụng tới.