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

examples: Add CSM Observability example #7302

Merged
merged 1 commit into from
Jun 11, 2024
Merged

Conversation

zasweq
Copy link
Contributor

@zasweq zasweq commented Jun 5, 2024

This PR adds a CSM Observability example. This is not intended to be ran locally unless overwritten the address, the intended usage is to be built as docker images and deployed as part of the CSM user guide. This system will also have xDS Configuration as part of it, which will allow it to connect to upstream.

This is the same as #7296 expect it uses an xDS Target and configures OpenTelemetry using CSM Global Observability and not a specific Dial Option and Server Option.

RELEASE NOTES:

  • examples: Add CSM Observability example

@zasweq zasweq requested a review from easwars June 5, 2024 15:06
@zasweq zasweq added this to the 1.65 Release milestone Jun 5, 2024
Copy link

codecov bot commented Jun 5, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 80.54%. Comparing base (adf976b) to head (27b3973).
Report is 95 commits behind head on master.

Current head 27b3973 differs from pull request most recent head 7472b60

Please upload reports for the commit 7472b60 to get more accurate results.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #7302      +/-   ##
==========================================
- Coverage   81.24%   80.54%   -0.71%     
==========================================
  Files         345      348       +3     
  Lines       33941    33983      +42     
==========================================
- Hits        27574    27370     -204     
- Misses       5202     5422     +220     
- Partials     1165     1191      +26     

see 51 files with indirect coverage changes

@zasweq zasweq added the Type: Documentation Documentation or examples label Jun 5, 2024
@zasweq zasweq requested a review from yashykt June 5, 2024 15:50
examples/features/csm_observability/README.md Outdated Show resolved Hide resolved
examples/features/csm_observability/README.md Outdated Show resolved Hide resolved
@@ -0,0 +1,30 @@
# CSM Observability

This examples shows how to configure CSM Observability for a binary, and shows
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A hyperlink to CSM somewhere in this page?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, but the documentation is currently internal/confidential and there's no blog post about it yet or any public facing docs. Perhaps I can mention to refer to the CSM user guide?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, please.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added comment at the end of this paragraph. The UG is not published yet, will add a hyperlink once the public preview UG goes out.

examples/features/csm_observability/README.md Show resolved Hide resolved
examples/features/csm_observability/README.md Show resolved Hide resolved
examples/features/csm_observability/server/main.go Outdated Show resolved Hide resolved
examples/features/csm_observability/server/main.go Outdated Show resolved Hide resolved
examples/features/csm_observability/server/main.go Outdated Show resolved Hide resolved
examples/features/csm_observability/server/main.go Outdated Show resolved Hide resolved
examples/features/csm_observability/server/main.go Outdated Show resolved Hide resolved
@zasweq
Copy link
Contributor Author

zasweq commented Jun 5, 2024

Got to all comments; thank you for the pass.

@zasweq zasweq assigned easwars and unassigned yashykt Jun 5, 2024
@zasweq zasweq removed their assignment Jun 5, 2024
@arvindbr8 arvindbr8 modified the milestones: 1.65 Release, 1.66 Release Jun 6, 2024
examples/features/csm_observability/README.md Show resolved Hide resolved
examples/features/csm_observability/README.md Show resolved Hide resolved
server applications (configured once per binary), and shows what type of
telemetry data it can produce for certain RPCs with additional CSM Labels. The
gRPC Client accepts configuration from an xDS Control plane as the default
address that it connects to is "xds:///helloworld:50051", but this can be
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I don't understand is how is this example supposed to work without the user running a management server, given that the default dial target has an xds scheme.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added comment about needing to run in Cloud Service Mesh.

examples/features/csm_observability/README.md Show resolved Hide resolved
@easwars easwars assigned zasweq and unassigned easwars Jun 7, 2024
@zasweq zasweq assigned easwars and unassigned zasweq Jun 7, 2024
@easwars easwars assigned zasweq and unassigned easwars Jun 10, 2024
@zasweq
Copy link
Contributor Author

zasweq commented Jun 10, 2024

Discussed this with Richard; will also backport this to 1.65.x. This is so the docker tag of the image I upload for User Guide can have a stable tag rather than the unstable @latest.

@zasweq zasweq merged commit de51a63 into grpc:master Jun 11, 2024
11 checks passed
zasweq added a commit to zasweq/grpc-go that referenced this pull request Jun 11, 2024
zasweq added a commit to zasweq/grpc-go that referenced this pull request Jul 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Documentation Documentation or examples
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants