Khi cổng kết nối MQTT gặp lỗi, hãy kiểm tra khâu đầu tiên thất bại: phân giải địa chỉ đích, kết nối mạng, TLS nếu bắt buộc, máy chủ môi giới chấp nhận kết nối hoặc quyền gửi thông điệp. Đổi chủ đề không sửa được lỗi bắt tay TLS. Lưu thông báo lỗi phía ứng dụng khách và nhật ký tương ứng của máy chủ môi giới để phép thử tiếp theo tập trung đúng khâu.
Xác nhận phần mềm và cấu hình đang chạy trên cổng kết nối
Cụ thể, cổng kết nối METRAVON TG451 có MQTT trong danh sách chức năng phần mềm, nhưng vẫn phải xác nhận chế độ phần sụn cần dùng và cách thiết kế thông điệp cho nền tảng. Ghi phiên bản phần sụn, phiên bản MQTT, phương thức truyền tải, tên máy chủ môi giới, cổng dịch vụ và định danh được gán cho hệ lắp này.

Kiểm tra đặc tả thực tế của dịch vụ để biết dùng TCP không mã hóa, TLS hay phương thức truyền tải khác được hỗ trợ. Không suy ra cổng đúng từ giá trị mặc định nhớ sẵn. Xác nhận đích được cấu hình là điểm kết nối của máy chủ môi giới, không phải địa chỉ giao diện quản trị web hoặc tuyến cân bằng tải dành cho dịch vụ khác.
Xác định lỗi kết nối cổng MQTT trong nhật ký
| Kết quả | Khâu có thể lỗi | Bằng chứng hữu ích |
|---|---|---|
| Lỗi phân giải tên | Chưa phân giải được địa chỉ đích có thể sử dụng. | Ghi tên máy chủ, kết quả phân giải và đường mạng hoạt động mà không đổi thông tin xác thực. |
| Lỗi cổng | Chưa lập kết nối tới dịch vụ yêu cầu. | Đối chiếu lần thử kết nối với nhật ký dịch vụ đang lắng nghe trên máy chủ và nhật ký tường lửa. |
| Lỗi TLS | Chưa lập phiên bảo mật. | Lưu lỗi bắt tay và xác minh đồng hồ, tên máy chủ cùng các chứng chỉ bắt buộc. |
| Máy chủ từ chối | Máy chủ đã trả kết quả kết nối MQTT. | Diễn giải kết quả theo phiên bản giao thức đã thương lượng và nhật ký máy chủ môi giới. |
| Chưa có dữ liệu dùng được | Kết nối đã được chấp nhận nhưng chưa mang lại kết quả ứng dụng mong đợi. | Kiểm tra quyền đối với chủ đề, cách xử lý nội dung dữ liệu và nhật ký bản ghi được nền tảng chấp nhận. |
Sửa cấu hình tin cậy và định danh, không bỏ qua các bước kiểm tra
Với TLS, xác nhận đồng hồ cổng kết nối, hiệu lực chứng chỉ và tên máy chủ. Nếu dùng tổ chức cấp chứng chỉ riêng, cần cấu hình tin cậy phù hợp. Khi bắt buộc dùng TLS hai chiều, xác minh chứng chỉ ứng dụng khách và khóa riêng khớp nhau, đồng thời thuộc đúng thiết bị dự kiến.
Không đưa khóa riêng vào phiếu hỗ trợ hoặc tắt xác minh chứng chỉ để làm lỗi biến mất. Hỏi chủ dịch vụ về chuỗi tin cậy và cài đặt kết nối được hỗ trợ, rồi áp dụng qua quy trình cấu hình được cho phép.
Định danh ứng dụng khách MQTT và quyền gửi thông điệp là hai vấn đề riêng. Máy chủ môi giới có thể chấp nhận kết nối nhưng từ chối thao tác không được phép. Kiểm tra chính xác chủ đề, chữ hoa/thường và chính sách tài khoản. Với MQTT 3.1.1, khi máy chủ chấp nhận kết nối mới dùng định danh ứng dụng khách đã có kết nối, nó sẽ ngắt ứng dụng khách hiện tại. Vì vậy, hai cổng kết nối dùng cùng định danh có thể liên tục ngắt kết nối của nhau khi kết nối lại. So sánh định danh ứng dụng khách và thời điểm kết nối trong nhật ký máy chủ trước khi đổi anten hoặc cài đặt duy trì kết nối.
Phân biệt gửi thông điệp thành công với giá trị đo đúng
Máy chủ môi giới truyền nội dung dữ liệu, chứ không mặc nhiên kiểm tra ý nghĩa kỹ thuật của giá trị cảm biến. So sánh thông điệp đã ghi lại với cấu trúc dữ liệu thống nhất và số đọc nguồn đã kiểm tra. Xác minh đơn vị, hệ số quy đổi, định danh nguồn và thời gian thu thập trước khi quy việc không có đường xu hướng thành lỗi kết nối.
PUBACK ở QoS 1 xác nhận bên nhận MQTT đã nhận trách nhiệm xử lý thông điệp, không có nghĩa là cơ sở dữ liệu cuối cùng đã lưu giá trị đo. QoS 1 có thể chuyển thông điệp trùng lặp; QoS 2 ngăn chuyển trùng trong phạm vi trao đổi của giao thức nhưng không bảo đảm việc xử lý ở cơ sở dữ liệu phía sau. Kiểm tra các mức QoS mà phần sụn đã cài và dịch vụ nhận hỗ trợ, rồi xác định cách ứng dụng nhận diện và đối soát các bản ghi lặp. Thông điệp được máy chủ giữ lại không phải kho lưu trữ chuỗi thời gian; có phiên kết nối cũng chưa chứng minh mọi giá trị đo trước đó vẫn còn.
Nếu phiên kết nối không ổn định, đối chiếu cấu hình duy trì kết nối, các lần gián đoạn mạng và lý do máy chủ đóng phiên. Thiết lập cách thử lại và duy trì kết nối theo yêu cầu dịch vụ và điều kiện quan sát được. Thử lại liên tục với tần suất quá cao có thể che lỗi ban đầu và tăng tải cho đích nhận.
Chỉ dùng ứng dụng khách riêng để so sánh khi cần trả lời câu hỏi cụ thể
Ứng dụng khách thử nghiệm được phê duyệt trên cùng mạng có thể giúp phân biệt vấn đề truy cập dịch vụ với lỗi cấu hình cổng kết nối. Gán cho nó định danh riêng và chủ đề thử được cho phép. Không dùng trùng định danh của thiết bị đang hoạt động hoặc gửi giá trị thử vào dữ liệu đo sản xuất.
Ghi rõ điểm kết nối, phương thức truyền tải và loại thông tin xác thực đã thử. Máy tính kết nối thành công qua mạng khác là bằng chứng hữu ích, nhưng chưa xác minh tuyến, đồng hồ hoặc kho chứng chỉ tin cậy của cổng kết nối.
Câu hỏi tích hợp MQTT
Câu 1. Có nên đổi chủ đề khi máy chủ môi giới chưa bao giờ nhận phiên không?
Trước tiên khắc phục khâu kết nối bị lỗi. Ánh xạ chủ đề dữ liệu đo từ xa thông thường chỉ cần xét sau khi kết nối được chấp nhận, dù các tính năng gắn với kết nối có thể có yêu cầu chính sách riêng. Dựa vào kết quả từ chối thực tế của máy chủ môi giới thay vì thay đổi trường không liên quan.
Câu 2. Xác thực thành công có chứng minh đã có quyền gửi thông điệp không?
Không. Xác nhận các thao tác được cho phép và đường dẫn chủ đề chính xác của tài khoản. Sau đó kiểm tra nội dung dữ liệu có được ứng dụng phía sau chấp nhận hay không; quyền truyền tải và việc kiểm tra dữ liệu ở ứng dụng là hai bước riêng.
Câu 3. Yêu cầu hỗ trợ MQTT cần có gì?
Gửi model, phiên bản phần sụn, phiên bản giao thức, phương thức truyền tải, điểm kết nối, thời điểm lỗi và kết quả phía ứng dụng khách/máy chủ môi giới đã loại thông tin nhạy cảm. Nếu phiên hoạt động nhưng dữ liệu lỗi, bổ sung ví dụ chủ đề và nội dung dữ liệu đã che thông tin nhạy cảm. Không gửi mật khẩu, mã truy cập hoặc khóa riêng.
Tóm tắt
Chẩn đoán khâu kết nối bị lỗi, rồi kiểm tra riêng quyền gửi thông điệp và dữ liệu kỹ thuật. Yêu cầu METRAVON đánh giá cấu hình MQTT kèm lỗi đã ghi và đặc tả dịch vụ, thay vì chỉ gửi ảnh màn hình báo ngoại tuyến.
