Chỉ số dựa trên nhật ký cho nhà thông minh

1. Trước khi bắt đầu

Như đã đề cập trong lớp học lập trình Gỡ lỗi cho Nhà thông minh, chúng ta sẽ xuất bản các chỉ số và nhật ký cho các dự án Nhà thông minh của bạn. Các chỉ số giúp bạn xác định xem Hành động trong nhà thông minh của bạn đang gặp sự cố ở đâu, và nhật ký sẽ rất hữu ích khi bạn tìm hiểu sâu hơn về giải quyết những vấn đề này.

848f483bfcd2997a.pngs

Ngoài các chỉ số mà chúng tôi tạo sẵn cho dự án của bạn, bạn cũng có thể tạo chỉ số của riêng mình bằng các Chỉ số dựa trên nhật ký của Google Cloud Platform. Tính năng này cho phép bạn giám sát một số mẫu nhất định trong nhật ký và gỡ lỗi hiệu quả các vấn đề về chất lượng.

Điều kiện tiên quyết

Kiến thức bạn sẽ học được

  • Cách viết các truy vấn hiệu quả để lọc nhật ký lỗi của Nhà thông minh
  • Cách tạo chỉ số dựa trên nhật ký để tạo chỉ số từ các truy vấn của bạn
  • Cách tạo biểu đồ và trang tổng quan từ các chỉ số dựa trên nhật ký để theo dõi

2. Làm việc với nhật ký

Như chúng ta đã đề cập ngắn gọn trong Lớp học lập trình về nhà thông minh, việc xử lý nhật ký là chìa khoá để thành công cho dự án. Google Cloud Platform có nhiều công cụ tuyệt vời để theo dõi và phân tích nhật ký của bạn. Để truy cập vào tất cả nhật ký có sẵn cho dự án của mình, bạn có thể sử dụng Logs Explorer (Trình khám phá nhật ký).

Truy cập nhật ký

Bước đầu tiên để truy cập vào nhật ký là đăng nhập vào Google Cloud Platform rồi chọn dự án của bạn. Chuyển đến Logs Explorer (Trình khám phá nhật ký) bằng trình đơn bên cạnh khi chuyển đến Operations > Logging > Logs Explorer (Thao tác > Ghi nhật ký > Trình khám phá nhật ký). Sau khi mở công cụ này, bạn sẽ thấy chế độ xem sau:

78982d8b6d19b827.pngS

Trình khám phá nhật ký bao gồm hai phần chính: Một phần để viết truy vấn của bạn lên đầu (Trình tạo truy vấn) và một phần để hiển thị kết quả trùng khớp (Kết quả truy vấn).

Theo mặc định, nhiều thành phần trên Google ghi nhật ký vào dự án của bạn. Để tìm và làm việc với nhật ký trong quá trình tích hợp Nhà thông minh, bạn phải viết các truy vấn tuỳ chỉnh.

Viết truy vấn

Nhật ký được xuất bản cho các dự án thuộc một loại tài nguyên. Mỗi loại tài nguyên đại diện cho một nền tảng khác nhau trong Google. Dự án của bạn có nhật ký lấy từ nền tảng Nhà thông minh thuộc loại tài nguyên assistant_action_project.

Ngoài ra, mọi nhật ký đều được chỉ định mức độ nghiêm trọng khi tạo. Với nhật ký Nhà thông minh, chúng tôi sử dụng cấp độ ERROR cho nhật ký thể hiện lỗi và ngoại lệ, cũng như cấp độ DEBUG cho mọi trường hợp khác.

Trong ví dụ sau, chúng tôi sẽ viết một truy vấn để lọc các nhật ký chỉ đại diện cho lỗi trên nền tảng của chúng tôi, như sau:

753bfe72a9f8e959.pngs

Sau khi bạn ghi xong truy vấn, hãy nhấp vào nút Chạy truy vấn để bắt đầu truy vấn. Thao tác này sẽ dẫn đến các lỗi khi tích hợp Nhà thông minh:

3ef42da5a6c322e1.png.

Như bạn thấy, chúng tôi gặp một số lỗi vào nhiều thời điểm khác nhau trong một giờ qua. Mỗi dòng đại diện cho một nhật ký lỗi. Bạn có thể nhấp thêm vào từng nhật ký và mở rộng các trường lồng nhau để xem thông tin chứa trong đó.

Sử dụng biểu đồ

Trình khám phá nhật ký cung cấp tính năng Biểu đồ hữu ích để xem phân phối thời gian của các nhật ký phù hợp với truy vấn của bạn. Để kích hoạt Biểu đồ, hãy nhấp vào BẢN ĐỒ TRANG từ các nút ở góc trên bên phải và chọn Biểu đồ để bật tính năng này.

10eaf1d204decf3c.png.

Sau khi bật, bạn sẽ thấy phân phối nhật ký phù hợp với truy vấn của mình:

dd3410e65a83cf5d.png

Như bạn có thể thấy trong hình ảnh ở trên, chúng tôi có một vài lỗi được nhóm thưa thớt trong giờ qua. Chúng dường như tạo thành ba cụm vào khoảng 1:45, 2:00 và 2:15 chiều. Biểu đồ có thể giúp bạn phát hiện các mẫu khó nhìn thấy bằng cách chỉ kiểm tra các giá trị dấu thời gian.

Hiện tại, truy vấn chúng tôi sử dụng không phân biệt giữa các nhật ký và cho chúng tôi thấy tất cả lỗi xảy ra trong quá trình Tích hợp nhà thông minh. Đôi khi, bạn có thể muốn phân biệt giữa các lỗi, chẳng hạn như theo dõi các mẫu lỗi bắt nguồn từ một số loại thiết bị hoặc đặc điểm nhất định. Để làm điều này, chúng ta sẽ xem cách viết truy vấn nâng cao.

Truy vấn nâng cao

Khi kiểm tra nhật ký sự kiện của Nhà thông minh, bạn sẽ thấy có nhiều trường mà bạn có thể thu thập thông tin qua:

825c57c36800844e.png.

action

  • trait: Nhắm mục tiêu đặc điểm của thiết bị theo người dùng (ví dụ: OnOff, StartStop, Độ sáng)
  • actionType: Trạng thái hạt nhỏ của đặc điểm (ví dụ: Bật, Tắt, Tạm dừng, Dừng, Tiếp tục)

device

  • deviceType: Nhắm đến loại thiết bị theo người dùng (ví dụ: Đèn, Công tắc, Máy giặt)

status

  • isSuccess: Liệu kết quả của hành động có được coi là thành công hay không (true / false)
  • statusType: Mã trạng thái của kết quả hành động (cho biết mã lỗi nếu không thành công)
  • externalDebugString: Chuỗi gỡ lỗi cho hành động (mô tả chi tiết lỗi)

Các trường khác

Bạn cũng có thể lấy thông tin từ các trường khác:

  • requestId: Mã nhận dạng duy nhất được liên kết với yêu cầu (do Google tạo)
  • executionType: Đường dẫn mà yêu cầu sử dụng (cho biết liệu Cloud hay Local)
  • latencyMsec: Độ trễ dự kiến của yêu cầu trên các máy chủ của Google (tính bằng mili giây)
  • locale: Ngôn ngữ/khu vực mà yêu cầu được gửi từ đó (ví dụ: en-US, fr-FR)

Bằng cách sử dụng trường trait trong danh sách trên, chúng tôi sẽ sửa đổi truy vấn của mình để chỉ bao gồm các lỗi xuất phát từ trait OnOff như sau:

resource.type="assistant_action_project" AND severity=ERROR AND
jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"

Sau khi chạy truy vấn được cập nhật của chúng tôi, hệ thống sẽ xác định nhật ký và cho chúng tôi thấy kết quả tương ứng:

76176d7a41962341.pngs

Đến giờ, chúng ta đã thực hiện tất cả truy vấn theo cách thủ công. Đó là một cách hay để nhanh chóng kiểm tra trạng thái của lỗi, nhưng không cần tốn nhiều thời gian để theo dõi sự thay đổi của các mẫu lỗi theo thời gian. Để tự động hoá quy trình này và thu thập dữ liệu trong khoảng thời gian dài hơn, chúng tôi sẽ tạo chỉ số dựa trên nhật ký.

3. Chỉ số dựa trên nhật ký

Để đếm số lượng nhật ký khớp với truy vấn của bạn theo thời gian, bạn có thể sử dụng các chỉ số dựa trên nhật ký. Nhờ đó, bạn có thể xem các quy luật và toàn bộ nhật ký của mình, đồng thời cung cấp thông tin chi tiết hữu ích về các vấn đề cơ bản.

Tạo chỉ số dựa trên nhật ký

Để tạo chỉ số dựa trên nhật ký, hãy chuyển đến Thao tác > Ghi nhật ký > Chỉ số dựa trên nhật ký. Thao tác này sẽ hiển thị cho bạn danh sách các chỉ số dựa trên nhật ký đã có trên dự án của bạn. Sau khi nhấp vào nút TẠO CHỈ SỐ, bạn sẽ thấy màn hình tạo chỉ số dựa trên nhật ký:

296af6e7d8dcf6cf.png.

Có hai loại chỉ số chính: Chỉ số bộ đếm tính số lượng nhật ký khớp với truy vấn của bạn. Chỉ số phân phối theo dõi mức phân phối cơ bản và cho phép các phép tính thống kê như trung bình, trung vị và phân vị thứ 95.

Cuộn xuống bạn sẽ thấy phần bộ lọc để nhập cụm từ tìm kiếm.

f7f2093fa1bce2ac.png

Chúng ta sẽ dán truy vấn từ phần trước vào vùng văn bản Tạo bộ lọc.

​​resource.type="assistant_action_project" AND severity=ERROR AND
jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"

Bạn cũng có thể nhấp vào nút XEM TRƯỚC NHẬT KÝ để xem nhanh các nhật ký trước đây phù hợp với bộ lọc của bạn. Sau khi hoàn tất, bạn có thể nhấp vào nút TẠO CHỈ SỐ rồi chuyển sang phần tiếp theo.

Xem dữ liệu chỉ số dựa trên nhật ký

Giờ đây, chỉ số dựa trên nhật ký của chúng ta sẽ được tạo, nó sẽ có trong phần Chỉ số do người dùng xác định trên trang Chỉ số dựa trên nhật ký.

1b2c88c18533fbcd.png.

Trên trình đơn tương ứng với chỉ số dựa trên nhật ký (3 dấu chấm), hãy chọn Xem trong Trình khám phá chỉ số để xem dữ liệu được thu thập trong chỉ số dựa trên nhật ký:

54a836fdc3a666a3.png.

Sau khi chúng tôi gặp lỗi mới, lỗi đó sẽ được thu thập bằng chỉ số dựa trên nhật ký của chúng tôi và hiển thị trong cửa sổ biểu đồ trên Trình khám phá chỉ số.

Giám sát thông qua Trang tổng quan tuỳ chỉnh

Khi chúng tôi thấy chỉ số mới dựa trên nhật ký của mình hoạt động như dự kiến, đã đến lúc lưu chế độ xem biểu đồ này vào trang tổng quan tuỳ chỉnh. Để làm được điều này, hãy nhấp vào nút Lưu biểu đồ ở góc trên bên phải của Trình khám phá chỉ số. Thao tác này sẽ đưa ra lời nhắc đặt tên cho biểu đồ và chọn Trang tổng quan mà bạn muốn lưu vào:

52329085f841782e.png.

Sau khi lưu biểu đồ vào trang tổng quan, chúng tôi có thể truy cập biểu đồ dễ dàng từ đó. Để truy cập vào danh sách các trang tổng quan có trong dự án của bạn, hãy chuyển đến Thao tác > Giám sát > Trang tổng quan.

44961e7cb3663341.pngs

Chúng ta đã lưu biểu đồ trong một trang tổng quan có tên là "Trang tổng quan của lớp học lập trình". Khi mở ứng dụng này, bạn sẽ thấy chế độ xem sau:

f7e025c27f30f996.png

Như bạn thấy biểu đồ trình bày chỉ số dựa trên nhật ký được hiển thị tại đây, cùng với dữ liệu mới được thu thập. Nhật ký nhà thông minh được xuất bản lên dự án của bạn theo thời gian thực. Khi có nhật ký mới, bạn sẽ thấy ngay nhật ký đó được tính theo chỉ số dựa trên nhật ký của mình.

4. Xin chúc mừng

674c4f4392e98c1.png.

Xin chúc mừng! Bạn đã tìm hiểu thành công cách chuyển truy vấn của mình thành chỉ số dựa trên nhật ký và lưu chúng vào trang tổng quan tuỳ chỉnh để theo dõi.

Các bước tiếp theo

Dựa trên lớp học lập trình này, hãy thử các bài tập sau và khám phá các tài nguyên khác:

  • Xem hướng dẫn Tạo chỉ số phân phối để tạo chỉ số dựa trên nhật ký trên các trường số, chẳng hạn như độ trễ.
  • Xem Thư viện truy vấn mẫu do Google Cloud cung cấp để xem một số bộ lọc phức tạp mà bạn có thể dùng cho các chỉ số dựa trên nhật ký.