Merged
Conversation
3c7cba0 to
8e8dc92
Compare
8e8dc92 to
5af1197
Compare
Codecov Report❌ Patch coverage is
❌ Your project status has failed because the head coverage (74.59%) is below the target coverage (75.00%). You can increase the head coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #2329 +/- ##
==========================================
+ Coverage 74.54% 74.59% +0.05%
==========================================
Files 484 484
Lines 59201 59228 +27
==========================================
+ Hits 44126 44173 +47
+ Misses 11982 11969 -13
+ Partials 3093 3086 -7 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
5af1197 to
2a7dba4
Compare
2a7dba4 to
7600fd6
Compare
840fca8 to
c6b094c
Compare
recent changes mean client-side spanner metrics are no longer exposed the prometheus scrape endpoint. The SDK has deprecated OpenCensus support, which was wired into the prometheus endpoint, in favour of OpenTelemetry. This was reflected in a recent SpiceDB change, which made the otel approach the default, and as a consequence all prometheus metrics disappeared. This commit adds the prometheus exporter as a OpenTelemetry MetricsResolver, to add some the metrics back. The naming convention has changed, and I'm not aware of a way around that. Also client-side latency metrics are not supported via the opentelemetry integration. See https://cloud.google.com/spanner/docs/capture-custom-metrics-opentelemetry#capture-client-round-trip-latency Instead they now have to be manually instrumented.
c6b094c to
cfc12dc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
When using
--datastore-spanner-metrics=otel, none of the Spanner metrics were being emmitted. This PR fixes that.The SDK has deprecated OpenCensus support, which was wired into the prometheus endpoint, in favour of OpenTelemetry. This was reflected in a recent SpiceDB change, which made the otel approach the default, and as a consequence all prometheus metrics disappeared.
This commit adds the prometheus exporter as a OpenTelemetry MetricsResolver, to add some the metrics back. The naming convention has changed, and I'm not aware of a way around that.
Also client-side latency metrics are not supported via the opentelemetry integration. See https://cloud.google.com/spanner/docs/capture-custom-metrics-opentelemetry#capture-client-round-trip-latency Instead they now have to be manually instrumented.
Testing
Try
docker-compose -f docker-compose.spanner.yaml up --buildand go to http://localhost:3000/. You should see the metrics:If you set in the Docker-compose file
--datastore-spanner-metrics=deprecated-prometheus, you get the same metrics but with the prefixspicedb_cloud_google_com_go_.