Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce --verbose_gcp_api flag to dump GCP requests and responses #84

Merged
merged 2 commits into from
May 21, 2024

Conversation

sergiitk
Copy link
Member

Create a new flag --verbose_gcp_api that enables GCP API verbose logging (requests and responses) by setting the value of global googleapiclient.model.dump_request_response. See googleapiclient.model.BaseModel._log_request, and other _log_request methods in the same file.

@sergiitk
Copy link
Member Author

sergiitk commented May 21, 2024

Tests:

@sergiitk
Copy link
Member Author

cc @larry-safran

@sergiitk
Copy link
Member Author

Log example:

I0521 17:02:49.408864 135099804438528 compute.py:543] Creating compute resource:
---
defaultService: [https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl&sa=D)
hostRules:
- hosts:
  - psm-grpc-server:46408
  pathMatcher: psm-interop-path-matcher-20240521-1701-arknl
name: psm-interop-url-map-20240521-1701-arknl
pathMatchers:
- defaultService: [https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl&sa=D)
  name: psm-interop-path-matcher-20240521-1701-arknl
...

I0521 17:02:49.409166 135099804438528 model.py:113] --request-start--
I0521 17:02:49.409238 135099804438528 model.py:114] -headers-start-
I0521 17:02:49.409284 135099804438528 model.py:116] accept: application/json
I0521 17:02:49.409329 135099804438528 model.py:116] accept-encoding: gzip, deflate
I0521 17:02:49.409385 135099804438528 model.py:116] user-agent: (gzip)
I0521 17:02:49.409424 135099804438528 model.py:116] x-goog-api-client: gdcl/1.12.11 gl-python/3.10.12
I0521 17:02:49.409460 135099804438528 model.py:116] content-type: application/json
I0521 17:02:49.409494 135099804438528 model.py:117] -headers-end-
I0521 17:02:49.409528 135099804438528 model.py:118] -path-parameters-start-
I0521 17:02:49.409571 135099804438528 model.py:120] project: grpc-testing
I0521 17:02:49.409606 135099804438528 model.py:121] -path-parameters-end-
I0521 17:02:49.409640 135099804438528 model.py:122] body: {"name": "psm-interop-url-map-20240521-1701-arknl", "defaultService": "[https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl&sa=D)", "hostRules": [{"hosts": ["psm-grpc-server:46408"], "pathMatcher": "psm-interop-path-matcher-20240521-1701-arknl"}], "pathMatchers": [{"name": "psm-interop-path-matcher-20240521-1701-arknl", "defaultService": "[https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/backendServices/psm-interop-backend-service-20240521-1701-arknl&sa=D)"}]}
I0521 17:02:49.409683 135099804438528 model.py:123] query: ?alt=json
I0521 17:02:49.409717 135099804438528 model.py:124] --request-end--
I0521 17:02:50.252444 135099804438528 model.py:192] --response-start--
I0521 17:02:50.252697 135099804438528 model.py:194] content-type: application/json; charset=UTF-8
I0521 17:02:50.252766 135099804438528 model.py:194] vary: Origin, X-Origin, Referer
I0521 17:02:50.252812 135099804438528 model.py:194] date: Tue, 21 May 2024 17:02:50 GMT
I0521 17:02:50.252854 135099804438528 model.py:194] server: ESF
I0521 17:02:50.252890 135099804438528 model.py:194] cache-control: private
I0521 17:02:50.252925 135099804438528 model.py:194] x-xss-protection: 0
I0521 17:02:50.252958 135099804438528 model.py:194] x-frame-options: SAMEORIGIN
I0521 17:02:50.252993 135099804438528 model.py:194] x-content-type-options: nosniff
I0521 17:02:50.253026 135099804438528 model.py:194] transfer-encoding: chunked
I0521 17:02:50.253059 135099804438528 model.py:194] status: 200
I0521 17:02:50.253095 135099804438528 model.py:194] content-length: 686
I0521 17:02:50.253133 135099804438528 model.py:194] -content-encoding: gzip
I0521 17:02:50.253167 135099804438528 model.py:196] b'{\n  "kind": "compute#operation",\n  "id": "3637086710034165078",\n  "name": "operation-1716310969436-618f9c9a84a6e-cac6d6a2-0ee6d67e",\n  "operationType": "insert",\n  "targetLink": "[https://www.googleapis.com/compute/v1/projects/grpc-testing/global/urlMaps/psm-interop-url-map-20240521-1701-arknl](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/urlMaps/psm-interop-url-map-20240521-1701-arknl&sa=D)",\n  "targetId": "3842519063135874390",\n  "status": "RUNNING",\n  "user": "830293263384-compute@developer.gserviceaccount.com",\n  "progress": 0,\n  "insertTime": "2024-05-21T10:02:50.021-07:00",\n  "startTime": "2024-05-21T10:02:50.031-07:00",\n  "selfLink": "[https://www.googleapis.com/compute/v1/projects/grpc-testing/global/operations/operation-1716310969436-618f9c9a84a6e-cac6d6a2-0ee6d67e](https://www.google.com/url?q=https://www.googleapis.com/compute/v1/projects/grpc-testing/global/operations/operation-1716310969436-618f9c9a84a6e-cac6d6a2-0ee6d67e&sa=D)"\n}\n'
I0521 17:02:50.253211 135099804438528 model.py:197] --response-end--

@sergiitk sergiitk merged commit feef233 into grpc:main May 21, 2024
7 checks passed
@sergiitk sergiitk deleted the gcp-logging branch May 21, 2024 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants