Theo dõi từ khóa
HTTP 200 không có nghĩa là trang hoạt động. Theo dõi từ khóa giúp phát hiện các trường hợp máy chủ báo OK nhưng nội dung lại bị lỗi.
Vấn đề "200 OK nhưng bị lỗi"
Mọi công cụ kiểm tra uptime đều có thể cho bạn biết liệu máy chủ có trả về mã HTTP 2xx hay không. Tín hiệu này nghe có vẻ yên tâm, nhưng thực tế lại đánh lừa bạn nhiều hơn bạn tưởng. Trang chủ có thể chỉ hiển thị một trang trắng trống nhưng vẫn trả về 200. Trang giỏ hàng có thể âm thầm làm mất nút "Mua ngay" sau khi deploy mà không hề báo lỗi. WordPress có thể thay thế nội dung bằng thông báo "Lỗi kết nối cơ sở dữ liệu" – tất nhiên, được hiển thị dưới dạng 200 OK với HTML thật.
Giám sát từ khóa giúp lấp đầy vùng chết này. Bạn chỉ định cho hệ thống những gì trang nên chứa – hoặc những gì không nên – và mỗi lần kiểm tra sẽ tìm kiếm chuỗi ký tự đó trong nội dung phản hồi. Nếu từ khóa không tồn tại (dù lẽ ra phải có) hoặc có mặt (dù không nên xuất hiện), hệ thống sẽ báo sự cố ngay cả khi mọi tín hiệu HTTP cho thấy mọi thứ đều ổn.
Nên giám sát chuỗi nào
Một từ khóa tốt là thứ xác nhận phần quan trọng nhất của trang đã được hiển thị chính xác. Một vài ví dụ:
- Trang chủ thương mại điện tử: Giám sát "Thêm vào giỏ hàng" hoặc tên sản phẩm phổ biến nhất. Nếu nguồn dữ liệu bị lỗi, từ khóa biến mất – và bạn sẽ biết ngay.
- Trang đăng nhập: Giám sát "Đăng nhập" hoặc "Khôi phục mật khẩu". Lỗi JS làm mất form – từ khóa cũng biến mất.
- Blog hoặc cổng tin tức: Giám sát tiêu đề bài viết mới nhất. Nếu CMS bắt đầu hiển thị nội dung cũ, từ không khớp nữa.
- Trang giá: Giám sát chuỗi hiển thị giá bán. Nếu deploy gây mất block giá, bạn sẽ phát hiện ngay lập tức.
- Endpoint trạng thái / health: Giám sát "ok" hoặc "healthy". Nếu upstream bị lỗi, endpoint trả về "degraded" – từ khóa không khớp.
Bạn cũng có thể sử dụng chế độ không xuất hiện – báo động khi phát hiện chuỗi mà không nên có mặt. Các ví dụ điển hình: "Database connection error", "Whoops! Something went wrong", "Chế độ bảo trì", "Fatal error", "Sắp có". Nếu bất cứ chuỗi nào trong số đó rò rỉ lên môi trường production, bạn sẽ nhận được cảnh báo.
Cách kiểm tra hoạt động
Hệ thống thực hiện một yêu cầu HTTP(S) GET tiêu chuẩn (hoặc bất kỳ phương thức nào – POST, PUT, v.v.), đi theo tối đa 5 chuyển hướng, lấy response body và quét theo dạng không phân biệt hoa thường để tìm từ khóa. Kết quả tìm kiếm sẽ được lưu cùng với mã HTTP, thời gian phản hồi và SSL. Nếu điều kiện không được đáp ứng 2 lần liên tục (ngưỡng xác nhận mặc định), một sự cố sẽ được mở và thông báo sẽ gửi đến các kênh đã bật – Email, Telegram, Slack, Discord và SMS.
Với nội dung động (SPA) mà từ khóa chỉ xuất hiện sau khi thực thi JavaScript, hãy sử dụng tính năng premium multi-location, tận dụng trình duyệt headless thực sự thông qua ScrapingBee.
Kết hợp với HTTP và SSL
Một giám sát từ khóa trên DiagnoSEO Uptime Monitoring cũng đồng thời thực hiện kiểm tra toàn diện cho trang: mã HTTP, thời gian phản hồi, SSL, ngày hết hạn tên miền, bản ghi DNS và phát hiện hosting. Một giám sát duy nhất giúp bạn bảo vệ trước toàn bộ dải rủi ro – sự cố máy chủ, hết hạn chứng chỉ, thay đổi DNS và các sự cố nội dung ngầm.
Cách cấu hình
Mở công cụ, nhấn "Thêm giám sát", chọn loại "Từ khóa", dán URL, nhập chuỗi, chọn "bắt buộc xuất hiện" hoặc "bắt buộc không xuất hiện", đặt chu kỳ kiểm tra (1-30 phút tùy gói) rồi lưu. Từ chu kỳ kế tiếp, hệ thống sẽ giám sát trang đó và cảnh báo nếu từ khóa biến mất – ngay cả khi mọi tín hiệu khác cho thấy trang vẫn hoạt động.
Câu hỏi thường gặp
-
Hệ thống sẽ lấy nội dung phản hồi và kiểm tra xem chuỗi xác định có xuất hiện (chế độ xuất hiện) hay không xuất hiện (chế độ không xuất hiện). Hãy dùng để phát hiện khi trang thay đổi nội dung, xuất hiện thông báo lỗi hoặc một phần tử cụ thể bị loại bỏ.
-
Cả hai. Hệ thống kiểm tra chuỗi con trực tiếp trên nội dung phản hồi thô. Bạn có thể dò plain text ("Thêm vào giỏ hàng"), đoạn HTML (
<button class="buy">) hoặc thuộc tính cụ thể. Bất cứ thứ gì xuất hiện nguyên văn trong mã nguồn HTML đều có thể dò được. -
Các công cụ diff so sánh với baseline và báo cáo mọi thay đổi. Keyword monitoring là xác nhận có chủ đích – bạn xác định cái gì PHẢI có (hoặc KHÔNG ĐƯỢC có). Diff sẽ gây nhiễu trên các trang động; keyword thì tập trung vào thứ bạn thực sự quan tâm.
-
Có – sử dụng chế độ "không xuất hiện" với từ khóa như "Internal Server Error" hoặc "Đã xảy ra lỗi". Hệ thống sẽ báo lỗi khi phát hiện từ khóa này xuất hiện. Hữu ích để bắt lỗi 500 vẫn trả về HTTP 200 cùng với trang lỗi (cấu hình framework sai phổ biến).
-
Mặc định là không – hệ thống lấy HTML thô trước khi chạy JS. Với SPA hoặc trang dùng nhiều JS, từ khóa cần xuất hiện trong phản hồi HTML ban đầu (ví dụ: server-rendered hoặc trong thẻ
<noscript>). Kiểm tra bằng trình duyệt là một tính năng riêng.
UptimeRobot · Pingdom · BetterStack · Oh Dear · Site24x7 · StatusCake · Sentry · Uptrends · Cronitor · New Relic
Kiểm tra SSL · Hết hạn miền · Theo dõi DNS · Ping (ICMP) · Cổng (TCP) · Endpoint · API · Cron / Heartbeat · Thời gian phản hồi · Backlink · Theo từng khu vực · Giám sát website