Skip to content

DOC-6304 DOC-6305 DOC-6306 DOC-6308 Client observability docs#2854

Open
andy-stark-redis wants to merge 22 commits intomainfrom
DOC-6302-otel-overview
Open

DOC-6304 DOC-6305 DOC-6306 DOC-6308 Client observability docs#2854
andy-stark-redis wants to merge 22 commits intomainfrom
DOC-6302-otel-overview

Conversation

@andy-stark-redis
Copy link
Contributor

@andy-stark-redis andy-stark-redis commented Mar 5, 2026

Don't be deceived by the branch name, the epic for this is actually DOC-6304 :-) node-redis will have support for this soon, but I'll make a separate PR for the docs to merge when it is released.

A few things to consider:

  • I've attempted to give a brief flavour of the tracing process, but let me know if you think it's too much or not detailed enough.
  • The attribute badges seem like they might be useful to users, but maybe they're intended more as an internal guide for implementation?
  • I've added links to the observability docs from a few relevant places, but if you can think of any other pages that should have links then let me know.

Note

Medium Risk
Mostly documentation/content, but it adds new site-wide template hooks plus JS/CSS that render JSON-driven content, which could affect page builds or client-side behavior on pages using the new shortcode.

Overview
Adds a new Redis client observability documentation section: an overview page (content/develop/clients/observability.md) plus new client-specific setup guides for go-redis and redis-py (including runnable local examples).

Introduces a rendered metrics reference driven by a new data/client_obs_metrics.json spec and otel-metric-groups shortcode, with conditional loading of new static/js/otel-metrics.js and static/css/otel-metrics.css via layouts/_default/baseof.html.

Updates cross-links to point to the new observability pages (including from error-handling and production-usage docs), removes the old Go landing-page observability section, and tweaks navigation ordering (clients/patterns weight).

Written by Cursor Bugbot for commit 9e35c84. This will update automatically on new commits. Configure here.

@andy-stark-redis andy-stark-redis requested review from a team and mortensi March 5, 2026 13:48
@andy-stark-redis andy-stark-redis self-assigned this Mar 5, 2026
@andy-stark-redis andy-stark-redis added the clients Client library docs label Mar 5, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Mar 5, 2026

DOC-6302

@jit-ci
Copy link

jit-ci bot commented Mar 5, 2026

🛡️ Jit Security Scan Results

CRITICAL HIGH MEDIUM

✅ No security findings were detected in this PR


Security scan by Jit

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Copy link
Collaborator

@dwdougherty dwdougherty left a comment

Choose a reason for hiding this comment

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

Just one nitpick.

Comment on lines +130 to +131
you are interested in, although all metrics in the group will be collected even
if you don't use them. The metrics in each group are described in the

Choose a reason for hiding this comment

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

although all metrics in the group will be collected even if you don't use them
This is not accurate. We have two metric groups that are enabled by default, (resiliency and connection-basic) and the metrics in those groups are only collected when OTel is enabled.

Comment on lines +137 to +138
visualize the metrics collected by OTel. This provides a target endpoint
that you specify when you configure the client in your application. The tool then

Choose a reason for hiding this comment

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

This provides a target endpoint that you specify when you configure the client in your application

We actually push metrics to an otel collector. The otel collector provides an endpoint for Prometheus (or other storage layers) to scrape, and Grafana (or other monitoring tools) can then get the metrics from Prometheus. But it's not accurate to say that we Grafana provides an endpoint we use in the client init.

Choose a reason for hiding this comment

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

We did a few small changes in the spec in the past 2 weeks. Pls verify if everything is up to date 🙏

error rate (suggesting a deeper problem that could be fixed to improve reliability).
-->

## Metrics overview

Choose a reason for hiding this comment

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

We should mention that the clients follow the push model, where we push metrics to an OTel collector using OTLP (with both gRPC and HTTP).

The flow is:

+------------------+
|   App            |
| (Redis SDK +     |
|  OTel SDK)       |
+------------------+
          |
          v
+------------------+
|  OTel Collector  |
| (otlp receiver)  |
| (prom exporter   |
|  exposes /metrics)
+------------------+
          ^
          |   HTTP scrape
          |
+------------------+
|   Prometheus     |
+------------------+
          ^
          |
+------------------+
|    Grafana       |
+------------------+

But we're only responsible for the part that pushes to the Otel collector, users can set up the rest of the system based on their requirements.

andy-stark-redis and others added 2 commits March 10, 2026 16:14
Co-authored-by: Elena Kolevska <elena-kolevska@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clients Client library docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants