Kiểm thử và gỡ lỗi tiện ích bổ sung HTTP của Google Workspace

Là nhà phát triển tiện ích bổ sung của Google Workspace, bạn có thể cần gỡ lỗi mã để kiểm thử các thay đổi hoặc khắc phục sự cố phức tạp. Bạn có thể gỡ lỗi tiện ích bổ sung của Google Workspace theo nhiều cách, tuỳ thuộc vào cấu trúc của ứng dụng, chức năng của ứng dụng, cách triển khai ứng dụng và lựa chọn ưu tiên của bạn.

Trang này giải thích cách gỡ lỗi tiện ích bổ sung HTTP của Google Workspace bằng ngrok. Đây là một nền tảng truy cập hợp nhất mà bạn có thể dùng để kiểm thử môi trường phát triển cục bộ. Trong hướng dẫn này, bạn sẽ kiểm thử các thay đổi về mã trong môi trường cục bộ và khắc phục sự cố trong môi trường từ xa.

Gỡ lỗi từ môi trường phát triển cục bộ

Trong phần này, bạn tương tác với tiện ích bổ sung Google Workspace thực thi trong môi trường cục bộ.

Gỡ lỗi từ môi trường phát triển cục bộ

Hình 1. Gỡ lỗi trong môi trường phát triển cục bộ.

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

Node.js

Python

Java

Cung cấp dịch vụ máy chủ cục bộ công khai

Bạn cần kết nối môi trường cục bộ với Internet để tiện ích bổ sung Google Workspace có thể truy cập vào môi trường đó. Ứng dụng ngrok được dùng để chuyển hướng các yêu cầu HTTP được thực hiện đến một URL công khai đến môi trường cục bộ của bạn.

  1. Trong trình duyệt trong môi trường cục bộ, hãy đăng nhập vào tài khoản ngrok.
  2. Cài đặt ứng dụng và thiết lập authtoken trong môi trường cục bộ.
  3. Tạo một miền tĩnh trong tài khoản ngrok. Miền này được tham chiếu là NGROK_STATIC_DOMAIN trong hướng dẫn của hướng dẫn này.

Tạo và cài đặt bản triển khai tiện ích bổ sung

  1. Định cấu hình tiện ích bổ sung Google Workspace để gửi tất cả các yêu cầu HTTP đến miền tĩnh của bạn. Tệp triển khai của bạn sẽ có dạng như sau:

    {
      "oauthScopes": [
        "https://www.googleapis.com/auth/workspace.linkpreview",
        "https://www.googleapis.com/auth/workspace.linkcreate"
      ],
      "addOns": {
        "common": {
          "name": "Manage support cases",
          "logoUrl": "https://developers.google.com/workspace/add-ons/images/support-icon.png",
          "layoutProperties": {
            "primaryColor": "#dd4b39"
          }
        },
        "docs": {
          "linkPreviewTriggers": [
            {
              "runFunction": "NGROK_STATIC_DOMAIN",
              "patterns": [
                {
                  "hostPattern": "example.com",
                  "pathPrefix": "support/cases"
                },
                {
                  "hostPattern": "*.example.com",
                  "pathPrefix": "cases"
                },
                {
                  "hostPattern": "cases.example.com"
                }
              ],
              "labelText": "Support case",
              "localizedLabelText": {
                "es": "Caso de soporte"
              },
              "logoUrl": "https://developers.google.com/workspace/add-ons/images/support-icon.png"
            }
          ],
          "createActionTriggers": [
            {
              "id": "createCase",
              "labelText": "Create support case",
              "localizedLabelText": {
                "es": "Crear caso de soporte"
              },
              "runFunction": "$URL2",
              "logoUrl": "https://developers.google.com/workspace/add-ons/images/support-icon.png"
            }
          ]
        }
      }
    }
    

    Thay thế NGROK_STATIC_DOMAIN bằng miền tĩnh trong tài khoản ngrok.

  2. Đặt dự án Google Cloud để sử dụng:

    gcloud config set project PROJECT_ID
  3. Thu thập thông tin xác thực người dùng mới để sử dụng cho Thông tin xác thực mặc định của ứng dụng:

    gcloud auth application-default login

    Thay thế PROJECT_ID bằng mã dự án cho dự án Google Cloud của ứng dụng.

  4. Tạo quá trình triển khai:

    gcloud workspace-add-ons deployments create manageSupportCases \
        --deployment-file=DEPLOYMENT_FILE_PATH

    Thay thế DEPLOYMENT_FILE_PATH bằng đường dẫn của tệp triển khai.

  5. Cài đặt bản triển khai:

    gcloud workspace-add-ons deployments install manageSupportCases

Tiện ích bổ sung Google Workspace gửi tất cả các yêu cầu HTTP đến miền tĩnh

Hình 2. Tiện ích bổ sung Google Workspace gửi tất cả các yêu cầu HTTP đến miền tĩnh. Dịch vụ công khai ngrok đóng vai trò là cầu nối giữa tiện ích bổ sung Google Workspace và mã ứng dụng thực thi cục bộ.

Kiểm thử tiện ích bổ sung của Google Workspace

Bạn có thể triển khai, kiểm thử, gỡ lỗi và tự động tải lại tiện ích bổ sung Google Workspace trên máy.

Node.js

  1. Từ IDE Visual Studio Code đã cài đặt trong môi trường cục bộ, hãy làm như sau:

    1. Trong một cửa sổ mới, hãy mở thư mục add-ons-samples/node/3p-resources.
    2. Định cấu hình ứng dụng để chạy cục bộ và tự động tải lại tính năng gỡ lỗi bằng cách thêm một phần phụ thuộc và hai tập lệnh trong tệp package.json:

      {
          ...
          "dependencies": {
            ...
            "@google-cloud/functions-framework": "^3.3.0"
          },
          "scripts": {
              ...
              "start": "npx functions-framework --target=createLinkPreview --port=9000",
              "debug-watch": "nodemon --watch ./ --exec npm start"
          }
          ...
      }
      
    3. Trong thư mục gốc, hãy cài đặt ứng dụng:

      npm install
    4. Tạo và định cấu hình một lần khởi chạy có tên là Debug Watch để kích hoạt tập lệnh debug-watch bằng cách tạo tệp .vscode/launch.json trong thư mục gốc:

      {
          "version": "0.2.0",
          "configurations": [{
              "type": "node",
              "request": "launch",
              "name": "Debug Watch",
              "cwd": "${workspaceRoot}",
              "runtimeExecutable": "npm",
              "runtimeArgs": ["run-script", "debug-watch"]
          }]
      }
      
    5. Thêm một điểm ngắt tạm dừng quá trình xử lý yêu cầu HTTP trong tệp index.jsbắt đầu chạy và gỡ lỗi bằng cấu hình Debug Watch đã thêm trước đó. Ứng dụng hiện đang chạy và theo dõi các yêu cầu HTTP trên cổng 9000.

      Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng "9000"

      Hình 3. Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng 9000.

  2. Chạy ứng dụng ngrok trong môi trường cục bộ:

    ngrok http --domain=NGROK_STATIC_DOMAIN 9000

    Thay thế NGROK_STATIC_DOMAIN bằng miền tĩnh trong tài khoản ngrok. Tất cả các yêu cầu hiện được chuyển hướng đến môi trường cục bộ và cổng mà ứng dụng sử dụng.

    Thiết bị đầu cuối có máy chủ `ngrok` đang chạy và chuyển hướng

    Hình 4. Cổng kết nối có máy chủ ngrok đang chạy và chuyển hướng.

  3. Giao diện web cũng được khởi động trên máy chủ cục bộ của bạn bằng ứng dụng ngrok, bạn có thể theo dõi tất cả hoạt động bằng cách mở giao diện web đó trong trình duyệt.

    Giao diện web do ứng dụng "ngrok" lưu trữ không hiển thị yêu cầu HTTP nào

    Hình 5. Giao diện web do ứng dụng ngrok lưu trữ không hiển thị yêu cầu HTTP nào.

  4. Kiểm thử tiện ích bổ sung Google Workspace bằng cách xem trước URL của một trường hợp trong một Google Tài liệu mới bằng tài khoản người kiểm thử:

    • Tạo một tài liệu mới trên Google Tài liệu.

      Tạo tài liệu mới trên Google Tài liệu

    • Nhập đường liên kết sau rồi nhấn enter:

      https://example.com/support/case/?name=Name1&description=Description1&priority=P1
      
    • Nhấp vào liên kết này.

  5. Trong Visual Studio Code trong môi trường cục bộ, bạn có thể thấy rằng quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

    Quá trình thực thi bị tạm dừng tại điểm ngắt đã được đặt

    Hình 6. Quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

  6. Khi bạn tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code trước khi các tiện ích bổ sung của Google Workspace hết thời gian chờ, tiện ích bổ sung của Google Workspace sẽ hiển thị bản xem trước đường liên kết trong Google Tài liệu từ bộ nhớ đệm.

  7. Bạn có thể kiểm tra nhật ký yêu cầu và phản hồi HTTP từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ.

    Yêu cầu HTTP từ giao diện web do ứng dụng `ngrok` lưu trữ

    Hình 7. Yêu cầu HTTP từ giao diện web do ứng dụng ngrok lưu trữ.

  8. Để thay đổi hành vi của ứng dụng, hãy thay thế Case bằng Case: cùng dòng 51 của index.js. Khi bạn lưu tệp, nodemon sẽ tự động tải lại ứng dụng bằng mã nguồn đã cập nhật và Visual Studio Code vẫn ở chế độ gỡ lỗi.

    Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng
`9000` với thay đổi về mã đã tải

    Hình 8. Ứng dụng đang chạy và nghe các yêu cầu HTTP trên cổng 9000 với thay đổi về mã được tải.

  9. Lần này, thay vì nhấp vào đường liên kết và đợi vài giây trong Google Doc mới, bạn có thể chọn yêu cầu HTTP gần đây nhất được ghi lại trên giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ của bạn rồi nhấp vào Replay. Tương tự như lần trước, tiện ích bổ sung Google Workspace của bạn không trả lời vì đang được gỡ lỗi.

  10. Khi tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code, bạn có thể thấy từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ rằng ứng dụng sẽ tạo một phản hồi với phiên bản cập nhật của thẻ xem trước.

Python

  1. Từ IDE Visual Studio Code đã cài đặt trong môi trường cục bộ, hãy làm như sau:

    1. Trong một cửa sổ mới, hãy mở thư mục add-ons-samples/python/3p-resources/create_link_preview.
    2. Tạo một môi trường ảo mới cho Python env và kích hoạt môi trường đó:

      virtualenv env
      source env/bin/activate
    3. Cài đặt tất cả phần phụ thuộc dự án bằng pip trong môi trường ảo:

      pip install -r requirements.txt
    4. Tạo tệp .vscode/launch.json trong thư mục gốc và định cấu hình một lần khởi chạy có tên là Debug Watch để kích hoạt ứng dụng từ mô-đun functions-framework trên cổng 9000 ở chế độ gỡ lỗi trên môi trường ảo env:

      {
          "version": "0.2.0",
          "configurations": [{
              "type": "python",
              "request": "launch",
              "name": "Debug Watch",
              "python": "${workspaceFolder}/env/bin/python3",
              "module": "functions_framework",
              "args": [
                  "--target", "create_link_preview",
                  "--port", "9000",
                  "--debug"
              ]
          }]
      }
      
    5. Thêm một điểm ngắt tạm dừng quá trình xử lý yêu cầu HTTP trong tệp main.pybắt đầu chạy và gỡ lỗi bằng cấu hình Debug Watch đã thêm trước đó. Ứng dụng hiện đang chạy và theo dõi các yêu cầu HTTP trên cổng 9000.

      Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng "9000"

      Hình 3. Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng 9000.

  2. Chạy ứng dụng ngrok trong môi trường cục bộ:

    ngrok http --domain=NGROK_STATIC_DOMAIN 9000

    Thay thế NGROK_STATIC_DOMAIN bằng miền tĩnh trong tài khoản ngrok. Tất cả các yêu cầu hiện được chuyển hướng đến môi trường cục bộ và cổng mà ứng dụng sử dụng.

    Thiết bị đầu cuối có máy chủ `ngrok` đang chạy và chuyển hướng

    Hình 4. Cổng kết nối có máy chủ ngrok đang chạy và chuyển hướng.

  3. Giao diện web cũng được khởi động trên máy chủ cục bộ của bạn bằng ứng dụng ngrok, bạn có thể theo dõi tất cả hoạt động bằng cách mở giao diện web đó trong trình duyệt.

    Giao diện web do ứng dụng "ngrok" lưu trữ không hiển thị yêu cầu HTTP nào

    Hình 5. Giao diện web do ứng dụng ngrok lưu trữ không hiển thị yêu cầu HTTP nào.

  4. Kiểm thử tiện ích bổ sung Google Workspace bằng cách xem trước URL của một trường hợp trong một Google Tài liệu mới bằng tài khoản người kiểm thử:

    • Tạo một tài liệu mới trên Google Tài liệu.

      Tạo tài liệu mới trên Google Tài liệu

    • Nhập đường liên kết sau rồi nhấn enter:

      https://example.com/support/case/?name=Name1&description=Description1&priority=P1
      
    • Nhấp vào liên kết này.

  5. Trong Visual Studio Code trong môi trường cục bộ, bạn có thể thấy rằng quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

    Quá trình thực thi bị tạm dừng tại điểm ngắt đã được đặt

    Hình 6. Quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

  6. Khi bạn tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code trước khi các tiện ích bổ sung của Google Workspace hết thời gian chờ, tiện ích bổ sung của Google Workspace sẽ hiển thị bản xem trước đường liên kết trong Google Tài liệu từ bộ nhớ đệm.

  7. Bạn có thể kiểm tra nhật ký yêu cầu và phản hồi HTTP từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ.

    Yêu cầu HTTP từ giao diện web do ứng dụng `ngrok` lưu trữ

    Hình 7. Yêu cầu HTTP từ giao diện web do ứng dụng ngrok lưu trữ.

  8. Để thay đổi hành vi của ứng dụng, hãy thay thế Case bằng Case: cùng dòng 56 của tệp main.py. Khi bạn lưu tệp, Visual Studio Code sẽ tự động tải lại ứng dụng bằng mã nguồn đã cập nhật và vẫn ở chế độ gỡ lỗi.

    Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng
`9000` với thay đổi về mã đã tải

    Hình 8. Ứng dụng đang chạy và nghe các yêu cầu HTTP trên cổng 9000 với thay đổi về mã được tải.

  9. Lần này, thay vì nhấp vào đường liên kết và đợi vài giây trong Google Doc mới, bạn có thể chọn yêu cầu HTTP gần đây nhất được ghi lại trên giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ của bạn rồi nhấp vào Replay. Tương tự như lần trước, tiện ích bổ sung Google Workspace của bạn không trả lời vì đang được gỡ lỗi.

  10. Khi tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code, bạn có thể thấy từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ rằng ứng dụng sẽ tạo một phản hồi với phiên bản mới cập nhật của thẻ xem trước.

Java

  1. Từ IDE Visual Studio Code đã cài đặt trong môi trường cục bộ, hãy làm như sau:

    1. Trong một cửa sổ mới, hãy mở thư mục add-ons-samples/java/3p-resources.
    2. Định cấu hình dự án Maven để chạy ứng dụng CreateLinkPreview trên cổng 9000 cục bộ bằng cách thêm trình bổ trợ bản dựng Khung chức năng trên đám mây function-maven-plugin trong tệp pom.xml:

      ...
      <plugin>
          <groupId>com.google.cloud.functions</groupId>
          <artifactId>function-maven-plugin</artifactId>
          <version>0.11.0</version>
          <configuration>
              <functionTarget>CreateLinkPreview</functionTarget>
              <port>9000</port>
          </configuration>
      </plugin>
      ...
      
    3. Giờ đây, bạn có thể chạy ứng dụng này trên máy tính ở chế độ gỡ lỗi:

      mvnDebug function:run
      Preparing to execute Maven in debug mode
      Listening for transport dt_socket at address: 8000
    4. Tạo tệp .vscode/launch.json trong thư mục gốc và định cấu hình một lần khởi chạy có tên Remote Debug Watch đính kèm vào ứng dụng đã khởi chạy trước đó bằng cổng 8000:

      {
          "version": "0.2.0",
          "configurations": [{
              "type": "java",
              "request": "attach",
              "name": "Remote Debug Watch",
              "projectName": "http-function",
              "hostName": "localhost",
              "port": 8000
          }]
      }
      
    5. Thêm một điểm ngắt tạm dừng quá trình xử lý yêu cầu HTTP trong tệp CreateLinkPreview.javabắt đầu đính kèm và gỡ lỗi bằng cấu hình Remote Debug Watch đã thêm trước đó. Ứng dụng hiện đang chạy và theo dõi các yêu cầu HTTP trên cổng 9000.

      Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng &quot;9000&quot;

      Hình 3. Ứng dụng đang chạy và lắng nghe các yêu cầu HTTP trên cổng 9000.

  2. Chạy ứng dụng ngrok trong môi trường cục bộ:

    ngrok http --domain=NGROK_STATIC_DOMAIN 9000

    Thay thế NGROK_STATIC_DOMAIN bằng miền tĩnh trong tài khoản ngrok. Tất cả các yêu cầu hiện được chuyển hướng đến môi trường cục bộ và cổng mà ứng dụng sử dụng.

    Thiết bị đầu cuối có máy chủ `ngrok` đang chạy và chuyển hướng

    Hình 4. Cổng kết nối có máy chủ ngrok đang chạy và chuyển hướng.

  3. Giao diện web cũng được khởi động trên máy chủ cục bộ của bạn bằng ứng dụng ngrok, bạn có thể theo dõi tất cả hoạt động bằng cách mở giao diện web đó trong trình duyệt.

    Giao diện web do ứng dụng &quot;ngrok&quot; lưu trữ không hiển thị yêu cầu HTTP nào

    Hình 5. Giao diện web do ứng dụng ngrok lưu trữ không hiển thị yêu cầu HTTP nào.

  4. Kiểm thử tiện ích bổ sung Google Workspace bằng cách xem trước URL của một trường hợp trong một Google Tài liệu mới bằng tài khoản người kiểm thử:

    • Tạo một tài liệu mới trên Google Tài liệu.

      Tạo tài liệu mới trên Google Tài liệu

    • Nhập đường liên kết sau rồi nhấn enter:

      https://example.com/support/case/?name=Name1&description=Description1&priority=P1
      
    • Nhấp vào liên kết này.

  5. Trong Visual Studio Code trong môi trường cục bộ, bạn có thể thấy rằng quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

    Quá trình thực thi bị tạm dừng tại điểm ngắt đã được đặt

    Hình 6. Quá trình thực thi bị tạm dừng tại điểm ngắt đã đặt.

  6. Khi bạn tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code trước khi các tiện ích bổ sung của Google Workspace hết thời gian chờ, tiện ích bổ sung của Google Workspace sẽ hiển thị bản xem trước đường liên kết trong Google Tài liệu từ bộ nhớ đệm.

  7. Bạn có thể kiểm tra nhật ký yêu cầu và phản hồi HTTP từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ.

    Yêu cầu HTTP từ giao diện web do ứng dụng `ngrok` lưu trữ

    Hình 7. Yêu cầu HTTP từ giao diện web do ứng dụng ngrok lưu trữ.

  8. Để thay đổi hành vi của ứng dụng, hãy thay thế Case bằng Case: cùng dòng 78 của tệp CreateLinkPreview.java, khởi động lại quy trình mvnDebug và chạy lại Remote Debug Watch để đính kèm lại và bắt đầu lại quá trình gỡ lỗi.

  9. Lần này, thay vì nhấp vào đường liên kết và đợi vài giây trong Google Doc mới, bạn có thể chọn yêu cầu HTTP gần đây nhất được ghi lại trên giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ của bạn rồi nhấp vào Replay. Tương tự như lần trước, tiện ích bổ sung Google Workspace của bạn không trả lời vì đang được gỡ lỗi.

  10. Khi tiếp tục thực thi từ trình gỡ lỗi của Visual Studio Code, bạn có thể thấy từ giao diện web do ứng dụng ngrok lưu trữ trong môi trường cục bộ rằng ứng dụng sẽ tạo một phản hồi với phiên bản cập nhật của thẻ xem trước.

Gỡ lỗi từ môi trường từ xa

Trong phần này, bạn tương tác với tiện ích bổ sung Google Workspace thực thi trên môi trường từ xa.

Gỡ lỗi từ môi trường từ xa

Hình 9. Gỡ lỗi từ môi trường từ xa.

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

  • Tiện ích bổ sung của Google Workspace đã được triển khai và cài đặt.
  • Ứng dụng của bạn chạy trong môi trường từ xa với trình gỡ lỗi được bật trên một cổng nhất định, được tham chiếu là REMOTE_DEBUG_PORT trong hướng dẫn của hướng dẫn này.
  • Môi trường cục bộ có thể ssh đến môi trường từ xa.
  • Một IDE được thiết lập trong môi trường cục bộ của bạn có thể gỡ lỗi. Chúng tôi sử dụng Visual Studio Code IDE và các tính năng gỡ lỗi mặc định của IDE này trong hướng dẫn này để minh hoạ.

Kết nối môi trường cục bộ và từ xa

Trong môi trường cục bộ mà bạn muốn bắt đầu kết nối máy khách gỡ lỗi, hãy thiết lập một đường hầm SSH:

ssh -L LOCAL_DEBUG_PORT:localhost:REMOTE_DEBUG_PORT REMOTE_USERNAME@REMOTE_ADDRESS

Thay thế nội dung sau:

  • LOCAL_DEBUG_PORT: Cổng gỡ lỗi trong môi trường cục bộ.
  • REMOTE_USERNAME: Tên người dùng trong môi trường từ xa.
  • REMOTE_ADDRESS: Địa chỉ của môi trường từ xa.
  • REMOTE_DEBUG_PORT: Cổng gỡ lỗi trong môi trường từ xa.

Cổng gỡ lỗi trong môi trường cục bộ của bạn hiện đã được liên kết với cổng gỡ lỗi trong môi trường từ xa.

Bắt đầu gỡ lỗi

Từ IDE Visual Studio Code đã cài đặt trong môi trường cục bộ, hãy làm như sau:

  1. Trong một cửa sổ mới, hãy mở mã nguồn của ứng dụng.
  2. Tạo tệp .vscode/launch.json trong thư mục gốc và định cấu hình một lần chạy có tên là Debug Remote đính kèm vào cổng gỡ lỗi trong môi trường cục bộ:

    Node.js

    {
        "version": "0.2.0",
        "configurations": [{
            "type": "node",
            "request": "attach",
            "name": "Debug Remote",
            "address": "127.0.0.1",
            "port": LOCAL_DEBUG_PORT
        }]
    }
    

    Python

    {
        "version": "0.2.0",
        "configurations": [{
            "type": "python",
            "request": "attach",
            "name": "Debug Remote",
            "connect": {
                "host": "127.0.0.1",
                "port": LOCAL_DEBUG_PORT
            }
        }]
    }
    

    Java

    {
        "version": "0.2.0",
        "configurations": [{
            "type": "java",
            "request": "attach",
            "name": "Debug Remote",
            "hostName": "127.0.0.1",
            "port": LOCAL_DEBUG_PORT
        }]
    }
    

    Thay thế LOCAL_DEBUG_PORT bằng cổng gỡ lỗi trong môi trường cục bộ.

  3. Thêm một điểm ngắt trong mã nguồn của ứng dụng để tạm dừng quá trình xử lý yêu cầu HTTP và bắt đầu chạy và gỡ lỗi bằng cấu hình Debug Remote đã thêm trước đó.

Tương tác với tiện ích bổ sung của Google Workspace mà bạn đã cài đặt. Tiện ích bổ sung Google Workspace của bạn không trả lời vì đang được gỡ lỗi trong IDE Visual Studio Code.

Tìm hiểu cách truy vấn nhật ký lỗi.