Sử dụng công cụ Theo dõi

Bạn đang xem tài liệu về Apigee Edge.
Hãy xem tài liệu về Apigee X.

Công cụ Theo dõi là gì?

Trace là một công cụ giúp khắc phục sự cố và theo dõi các proxy API chạy trên Apigee Edge. Trace cho phép bạn thăm dò thông tin chi tiết của từng bước thông qua quy trình proxy API.

Xem video này để được giới thiệu về công cụ Theo dõi.

Cách sử dụng Trace

Dấu vết rất dễ sử dụng. Bạn bắt đầu một phiên theo dõi, sau đó thực hiện lệnh gọi API đến nền tảng Edge và đọc kết quả.

  1. Truy cập trang proxy API, như được mô tả bên dưới.

    Edge

    Để truy cập trang proxy API bằng Giao diện người dùng Edge:

    1. Đăng nhập vào apigee.com/edge.
    2. Chọn Phát triển > Proxy API trong thanh điều hướng bên trái.

    Classic Edge (Đám mây riêng)

    Để truy cập trang proxy API bằng giao diện người dùng Classic Edge:

    1. Đăng nhập vào http://ms-ip:9000, trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Server Server.
    2. Chọn API > API Proxy trong thanh điều hướng trên cùng.
  2. Chọn một proxy API từ trang Proxy API.
  3. Hãy nhớ triển khai API mà bạn muốn theo dõi.
  4. Nhấp vào Theo dõi để chuyển đến chế độ xem công cụ Theo dõi.
  5. Sử dụng trình đơn thả xuống triển khai để theo dõi để chọn môi trường triển khai và bản sửa đổi proxy mà bạn muốn theo dõi.
  6. Nhấp vào Start Trace Session (Bắt đầu phiên theo dõi). Khi phiên Theo dõi hoạt động, proxy API sẽ ghi lại thông tin chi tiết về từng bước trong quy trình xử lý. Trong khi Phiên theo dõi đang chạy, thông báo và dữ liệu theo ngữ cảnh sẽ được ghi lại từ lưu lượng truy cập trực tiếp.

  7. Nếu không có bất kỳ lưu lượng truy cập trực tiếp nào đi qua proxy, bạn chỉ cần gửi yêu cầu đến API. Bạn có thể sử dụng bất kỳ công cụ nào mình muốn để gửi yêu cầu, chẳng hạn như curl, Postman hoặc bất kỳ công cụ quen thuộc nào. Hoặc, bạn có thể trực tiếp gửi yêu cầu từ chính công cụ Theo dõi này. Bạn chỉ cần nhập URL và nhấp vào Gửi. Lưu ý: Bạn chỉ có thể gửi yêu cầu GET qua công cụ Trace mà không cần gửi POST.

    Lưu ý: Một phiên Truy vết có thể hỗ trợ 10 giao dịch yêu cầu/phản hồi cho mỗi trình xử lý thông báo thông qua proxy API đã chọn. Trên đám mây Edge, với 2 trình xử lý tin nhắn xử lý lưu lượng truy cập, 20 giao dịch yêu cầu/phản hồi sẽ được hỗ trợ. Một phiên theo dõi sẽ tự động dừng sau 10 phút nếu bạn không dừng phiên đó theo cách thủ công.
  8. Khi bạn đã nắm bắt đủ số yêu cầu, hãy nhấp vào Stop Trace Session (Dừng theo dõi phiên).
  9. Danh sách các giao dịch yêu cầu/phản hồi đã chụp sẽ hiển thị trong trình đơn bên trái. Nhấp vào bất kỳ giao dịch nào để xem kết quả chi tiết.

Cách đọc dấu vết

Công cụ theo dõi có hai phần chính, bản đồ giao dịch và chi tiết giai đoạn:

  • Bản đồ giao dịch sử dụng các biểu tượng để đánh dấu từng bước đáng chú ý xảy ra trong giao dịch proxy API, bao gồm cả việc thực thi chính sách, các bước có điều kiện và chuyển đổi. Di chuột qua biểu tượng bất kỳ để xem thông tin tóm tắt. Các bước của luồng yêu cầu xuất hiện dọc theo phần trên cùng của sơ đồ giao dịch và các bước của luồng phản hồi ở dưới cùng.
  • Phần thông tin chi tiết về giai đoạn của công cụ này liệt kê thông tin về quá trình xử lý nội bộ của proxy, bao gồm cả các biến đã được đặt hoặc đọc, tiêu đề của yêu cầu và phản hồi, v.v. Nhấp vào biểu tượng bất kỳ để xem thông tin chi tiết về giai đoạn của bước đó.

Dưới đây là bản đồ công cụ theo dõi mẫu với các phân đoạn xử lý proxy chính được gắn nhãn:

Bản đồ giao dịch của công cụ Theo dõi

Chú giải bản đồ giao dịch

Bảng sau đây mô tả ý định của các biểu tượng mà bạn sẽ thấy trong bản đồ giao dịch. Các biểu tượng này đánh dấu từng bước xử lý đáng chú ý trong suốt luồng proxy.

Biểu tượng bản đồ giao dịch

Ứng dụng khách gửi yêu cầu đến ProxyEndpoint của proxy API.
Các vòng tròn sẽ đánh dấu các điểm cuối chuyển tiếp trong luồng proxy. Chúng ở đó khi một yêu cầu đến từ ứng dụng khách, khi yêu cầu chuyển đến mục tiêu, khi phản hồi quay lại từ mục tiêu và khi phản hồi quay lại ứng dụng khách.

Các thanh cao cho biết điểm bắt đầu của phân đoạn luồng trong luồng proxy API. Các phân đoạn theo luồng gồm: yêu cầu ProxyEndpoint, yêu cầu TargetEndpoint, phản hồi TargetEndpoint và ProxyEndpoint. Một phân khúc bao gồm PreFlow, Flow có điều kiện và PostFlow.

Xem phần Định cấu hình quy trình để biết thêm thông tin.

Cho biết rằng các hành động Analytics đã diễn ra trong nền.

Một luồng có điều kiện đánh giá là true. Để xem giới thiệu về quy trình có điều kiện, vui lòng xem phần Định cấu hình quy trình.

Xin lưu ý rằng một số điều kiện được Edge tạo. Ví dụ: sau đây là biểu thức mà Edge sử dụng để kiểm tra xem có lỗi xảy ra trong ProxyEndpoint hay không:

((error.state equals PROXY_REQ_FLOW) or (error.state equals PROXY_RESP_FLOW))

Một luồng có điều kiện có giá trị false. Để biết giới thiệu về flow có điều kiện, hãy xem phần Định cấu hình flow.

Xin lưu ý rằng một số điều kiện được Edge tạo. Ví dụ: sau đây là biểu thức mà Edge sử dụng để kiểm tra xem có lỗi xảy ra trong TargetEndpoint hay không:

(((error.state equals TARGET_REQ_FLOW) or (error.state equals TARGET_RESP_FLOW)) or ((error.state equals REQ_SENT) or (error.state equals RESP_START)))

Cảnh sát. Mỗi loại chính sách có một biểu tượng duy nhất. Câu hỏi này dành cho chính sáchassignMessage. Các biểu tượng này cho bạn biết nơi thực thi chính sách theo đúng thứ tự và liệu các chính sách có thành công hay không. Bạn có thể nhấp vào biểu tượng chính sách để xem kết quả thực thi và xem kết quả có được dự kiến hay không. Ví dụ: bạn có thể xem liệu thông báo có được chuyển đổi đúng cách hay không hoặc liệu thông báo có được lưu vào bộ nhớ đệm hay không.

Việc thực thi các chính sách đúng cách được biểu thị rõ ràng bằng dấu kiểm. Trong trường hợp xảy ra lỗi, dấu chấm than màu đỏ sẽ hiển thị trên biểu tượng này.

Mẹo: Chú ý đến chú giải công cụ hoặc dòng thời gian để xem có chính sách nào mất nhiều thời gian hơn dự kiến hay không.

Xuất hiện khi đích của phần phụ trợ là một ứng dụng Node.js. Xem bài viết Tổng quan về Node.js trên Apigee Edge.
Mục tiêu phụ trợ được proxy API gọi.
Dòng thời gian cho biết thời gian hoàn tất (tính bằng mili giây) để kết thúc. Việc so sánh các phân đoạn thời gian đã trôi qua sẽ giúp bạn tách riêng các chính sách mất nhiều thời gian thực thi nhất để làm chậm lệnh gọi API.
Epsilon biểu thị khoảng thời gian nhỏ hơn mili giây.

Đang tắt. Xuất hiện trên biểu tượng chính sách khi bạn tắt một chính sách. Bạn có thể tắt một chính sách bằng API công khai. Xem Tài liệu tham khảo về cấu hình proxy API.

Lỗi. Xuất hiện trên biểu tượng chính sách khi điều kiện Bước chính sách có giá trị false (xem Biến và điều kiện của flow) hoặc trên biểu tượng chính sách LiftFault bất cứ khi nào chính sách LiftFault thực thi.
Đã bỏ qua. Xuất hiện trên biểu tượng chính sách khi chính sách không được thực thi vì điều kiện bước được đánh giá là sai. Hãy xem bài viết Các biến và điều kiện của quy trình để biết thêm thông tin.

Tìm hiểu chi tiết về giai đoạn

Phần Chi tiết về giai đoạn của công cụ cho bạn biết nhiều về trạng thái của proxy ở mỗi bước xử lý. Dưới đây là một số thông tin chi tiết được cung cấp trong phần Thông tin chi tiết về giai đoạn. Nhấp vào bất kỳ biểu tượng nào trong công cụ theo dõi để xem chi tiết cho bước đã chọn hoặc sử dụng nút Tiếp theo/Quay lại để chuyển từ bước này sang bước khác.

Chi tiết giai đoạn Nội dung mô tả
Proxy Endpoint Cho biết luồng ProxyEndpoint nào đã được chọn để thực thi. Một proxy API có thể có nhiều điểm cuối proxy được đặt tên.
Biến

Liệt kê các biến flow đã được đọc và gán một giá trị theo chính sách, hãy xem thêm bài viết Quản lý trạng thái proxy bằng các biến flow.

Lưu ý:

  • Dấu bằng (=) cho biết giá trị được gán cho biến.
  • Dấu gạch chéo bằng (≠) cho biết biến không thể được chỉ định giá trị vì biến này chỉ đọc hoặc đã xảy ra lỗi khi thực thi chính sách.
  • Trường trống cho biết rằng giá trị biến đã được đọc.
Tiêu đề của yêu cầu Liệt kê các tiêu đề của yêu cầu HTTP.
Yêu cầu nội dung Hiển thị nội dung yêu cầu HTTP.
Thuộc tính Thuộc tính thể hiện trạng thái nội bộ của proxy API. Theo mặc định, những nội dung này sẽ không xuất hiện.
Điểm cuối mục tiêu Cho biết TargetEndpoint được chọn để thực thi.
Tiêu đề phản hồi Liệt kê tiêu đề phản hồi HTTP.
Nội dung phản hồi Hiển thị nội dung phản hồi HTTP.
Luồng ứng dụng khách Hiển thị thông tin về PostClientFlow. Thao tác này sẽ thực thi sau khi yêu cầu được trả về ứng dụng khách yêu cầu. Chỉ có thể đính kèm chính sách MessageLogging vào PostClientFlow. PostClientFlow hiện được dùng chủ yếu để đo khoảng thời gian giữa dấu thời gian bắt đầu và kết thúc cho thông báo phản hồi.

Tinh chỉnh tính năng ghi tin nhắn bằng bộ lọc

Bạn có thể lọc những yêu cầu sẽ hiển thị trong công cụ Theo dõi bằng cách chỉ định các giá trị tham số tiêu đề và/hoặc truy vấn. Bộ lọc cho phép bạn nhắm mục tiêu các cuộc gọi cụ thể có thể gây ra sự cố. Ví dụ: bạn có thể cần tập trung vào các yêu cầu có nội dung cụ thể hoặc các yêu cầu đến từ các đối tác hoặc ứng dụng cụ thể. Bạn có thể lọc trên:

  • Tiêu đề HTTP – Chỉ theo dõi các lệnh gọi chứa một tiêu đề cụ thể. Đây là một cách tốt để giúp bạn khắc phục sự cố. Bạn có thể gửi tiêu đề cho nhà phát triển ứng dụng của mình và yêu cầu họ đưa tiêu đề đó vào cuộc gọi đang gây ra sự cố. Sau đó, Apigee Edge sẽ chỉ ghi lại các cuộc gọi có tiêu đề cụ thể đó để bạn có thể kiểm tra kết quả.
  • Tham số truy vấn – Chỉ các lệnh gọi có giá trị cụ thể của một tham số mới được ghi lại.

Những điều bạn cần biết về tính năng Bộ lọc

  • Bạn phải khởi động lại phiên Truy vết sau khi chỉ định thông số bộ lọc trong các trường lọc.
  • Các tham số bộ lọc được kết hợp với nhau bằng toán tử AND. Tất cả các cặp truy vấn và/hoặc tên tiêu đề/giá trị tiêu đề phải có trong yêu cầu để đối sánh thành công.
  • Đối sánh mẫu không được hỗ trợ trong công cụ Bộ lọc.
  • Các thông số bộ lọc và giá trị có phân biệt chữ hoa chữ thường.

Cách tạo bộ lọc theo dõi

  1. Nếu một phiên theo dõi đang chạy, hãy dừng phiên đó bằng cách nhấp vào Stop Trace Session (Dừng phiên theo dõi).
  2. Nhấp vào Bộ lọc ở góc trên bên trái của Công cụ theo dõi để mở rộng trường Bộ lọc.

    Trong công cụ Theo dõi, nhãn thanh bên Bộ lọc được khoanh tròn.
  3. Trong trường Bộ lọc, hãy chỉ định các giá trị tiêu đề và/hoặc truy vấn mà bạn muốn lọc. Trong ví dụ này, chúng ta chỉ định hai tham số truy vấn để lọc. Cả hai thông số phải xuất hiện trong yêu cầu đối sánh thành công.

    Trong Công cụ theo dõi, dưới Bộ lọc, dưới Tham số truy vấn, có hai tên
     và giá trị mẫu được đặt.
  4. Bắt đầu phiên theo dõi.
  5. Gọi API của bạn. Chỉ những yêu cầu bao gồm tất cả(các) tiêu đề và/hoặc(các) tham số truy vấn được chỉ định mới tạo ra kết quả phù hợp.

Trong phần Giao dịch, bốn kết quả xuất hiện khớp với hai tham số truy vấn đặt trước.

Trong ví dụ trên, lệnh gọi API này sẽ hiển thị trong Trace:

http://docs-test.apigee.net/cats?name=Penny&breed=Calico

Tuy nhiên, điều này sẽ không:

http://docs-test.apigee.net/cats?name=Penny

Gỡ lỗi bằng Trace

Trace cho phép bạn xem nhiều chi tiết nội bộ về proxy API. Ví dụ:

  • Bạn có thể xem nhanh chính sách nào đang thực thi chính xác hoặc không đạt.
  • Giả sử bạn nhận thấy một trong các trang tổng quan của Analytics rằng một trong các API của bạn đang bị giảm hiệu suất bất thường. Giờ đây, bạn có thể sử dụng Trace để xác định nơi xảy ra nút thắt cổ chai. Trace cung cấp thời gian cần thiết để hoàn tất mỗi bước xử lý tính bằng mili giây. Nếu phát hiện một bước quá dài, bạn có thể tiến hành điều chỉnh.
  • Bằng cách xem chi tiết về giai đoạn, bạn có thể kiểm tra các tiêu đề đang được gửi tới phần phụ trợ, xem các biến do chính sách đặt, v.v.
  • Bằng cách xác minh đường dẫn cơ sở, bạn có thể đảm bảo rằng một chính sách đang định tuyến thông báo đến đúng máy chủ.

Chọn Tuỳ chọn Xem

Chọn tùy chọn chế độ xem cho phiên theo dõi.

Lựa chọn Nội dung mô tả
Hiển thị chính sách đã tắt Hiển thị mọi chính sách đã tắt. Bạn có thể tắt chính sách bằng API công khai. Xem Tài liệu tham khảo về cấu hình proxy API.
Hiển thị các giai đoạn đã bỏ qua Hiển thị mọi giai đoạn đã bị bỏ qua. Giai đoạn bị bỏ qua xảy ra khi chính sách không được thực thi do điều kiện bước được đánh giá là sai. Hãy xem bài viết Các biến và điều kiện của quy trình để biết thêm thông tin.
Hiển thị tất cả FlowInfos Thể hiện chuyển đổi trong một phân đoạn luồng.
Tự động so sánh giai đoạn đã chọn So sánh giai đoạn đã chọn với giai đoạn trước đó. Bạn có thể tắt tính năng này để chỉ xem giai đoạn đã chọn.
Hiển thị các Biến Hiển thị hoặc ẩn các biến đã đọc và/hoặc gán giá trị.
Hiển thị thuộc tính Thuộc tính thể hiện trạng thái nội bộ của proxy API. (Ẩn theo mặc định.)

Đang tải xuống các kết quả theo dõi

Bạn có thể tải tệp XML của các kết quả theo dõi thô để xem và tìm kiếm khi không có mạng trong trình chỉnh sửa văn bản. Tệp này cho thấy thông tin chi tiết đầy đủ về phiên nghe, bao gồm nội dung của tất cả tiêu đề, biến và chính sách.

Để tải xuống, hãy nhấp vào Tải phiên theo dõi xuống.

Đang hiển thị yêu cầu dưới dạng url

Sau khi theo dõi một lệnh gọi API được thực hiện đến máy chủ mục tiêu, bạn có thể xem yêu cầu dưới dạng lệnh curl. Điều này đặc biệt hữu ích khi gỡ lỗi vì một vài lý do:

  • Proxy API có thể sửa đổi yêu cầu, vì vậy, bạn nên xem yêu cầu từ proxy đến máy chủ đích khác với yêu cầu ban đầu như thế nào. Lệnh curl thể hiện yêu cầu đã sửa đổi.
  • Đối với những thông điệp có dung lượng lớn hơn, curl cho phép bạn xem tiêu đề HTTP và nội dung thông báo ở một nơi duy nhất. (Hiện có giới hạn khoảng 1.000 ký tự. Để biết mẹo về cách vượt qua giới hạn này, hãy xem bài đăng này trên thẻ Cộng đồng.)

Để bảo mật, tính năng cuộn sẽ che tiêu đề Uỷ quyền HTTP.

Để xem các yêu cầu được gửi dưới dạng curl sau khi lệnh gọi API đi đến trong Trace, hãy chọn giai đoạn "Request sent to target server" (Yêu cầu đã gửi tới máy chủ đích) trong sơ đồ Bản đồ giao dịch, rồi nhấp vào nút Hiển thị curl trên cột "Yêu cầu gửi đến máy chủ đích" trong ngăn Chi tiết giai đoạn.

Các chú thích hình ảnh chỉ ra nút Hiển thị Curl và một trong các vòng tròn trong sơ đồ Bản đồ giao dịch.

Hỗ trợ Apigee sử dụng Dấu vết

Theo mặc định, Apigee Edge cho phép bộ phận hỗ trợ Apigee sử dụng công cụ Theo dõi trên các API API để hỗ trợ. Bạn có thể tắt tùy chọn này bất cứ lúc nào. Tuy nhiên, việc tắt tuỳ chọn này có thể hạn chế khả năng của Apigee Support để hỗ trợ bạn.

Để vô hiệu hóa Hỗ trợ Apigee sử dụng công cụ Theo dõi:

  1. Đăng nhập vào https://apigee.com/edge.
  2. Chọn Quản trị > Bảo mật và quyền riêng tư trong thanh điều hướng bên trái.
  3. Nhấp vào nút bật/tắt Enable Apigee Support to Trace (Bật tính năng hỗ trợ Apigee) để tắt tính năng sử dụng công cụ Theo dõi của Apigee.