Skip to content

feat(observability): added section for using global tags across SDKs - #5270

Open
flippedcoder wants to merge 9 commits into
mainfrom
mm/global-tags
Open

feat(observability): added section for using global tags across SDKs#5270
flippedcoder wants to merge 9 commits into
mainfrom
mm/global-tags

Conversation

@flippedcoder

Copy link
Copy Markdown
Contributor

What does this PR do?

This adds a section on each SDK's observability page to describe globalTags.

Notes to reviewers

Copilot AI balanced review requested due to automatic review settings September 8, 2026 18:39
@vercel

vercel Bot commented Sep 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
temporal-documentation Ready Ready Preview Sep 10, 2026 9:01pm UTC

Request Review

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

📖 Docs PR preview links

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The documentation scope, placement, title, and incident narrative need revision before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds Python SDK documentation for applying low-cardinality global tags to emitted metrics.

Changes:

  • Documents TelemetryConfig.global_tags with an example.
  • Adds tag-selection and diagnostic guidance.
  • Updates the page title and table-of-contents depth.
File summaries
File Description
docs/develop/python/platform/observability.mdx Adds global-tag guidance. Retain the Python title qualifier, align the stated cross-SDK scope, move shared policy to Best practices, and tighten the incident narrative.
Review details

Suppressed comments (1)

docs/develop/python/platform/observability.mdx:75

  • This organization-wide tag taxonomy and the incident/cost-allocation discussion below are SDK-independent prescriptive guidance. The information architecture says Develop pages should stay focused on accomplishing a task in a specific language, while organizational standards belong under Best practices (readme/INFORMATION-ARCHITECTURE.md:21-29,71-75). Move this shared guidance to a Best practices page and link to it here, leaving only the Python API and example on this page; otherwise the same policy will be duplicated across every SDK page.
#### Choose a tag set

Tags group metrics only when every Worker across your organization emits the same keys, so decide on the set before teams adopt it.
These five suit most organizations:
  • Files reviewed: 1/1 changed files
  • Comments generated: 3
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread docs/develop/python/platform/observability.mdx
Comment thread docs/develop/python/platform/observability.mdx
Comment thread docs/develop/python/platform/observability.mdx Outdated
Your metrics backend stores one series per distinct combination of tag values, so a value that changes per Workflow Execution, such as a Workflow Id or a customer identifier, multiplies what it stores.
Ownership and deployment identifiers avoid this because they stay fixed for the life of the process.

## Setup Tracing {/* #tracing */}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

📝 [vale] <Temporal.Headings> reported by reviewdog 🐶
'Setup Tracing ****************' should use sentence-style capitalization.

Your metrics backend stores one series per distinct combination of tag values, so a value that changes per Workflow Execution, such as a Workflow Id or a customer identifier, multiplies what it stores.
Ownership and deployment identifiers avoid this because they stay fixed for the life of the process.

## Setup Tracing {/* #tracing */}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

📝 [vale] <Temporal.Headings> reported by reviewdog 🐶
'Setup Tracing ****************' should use sentence-style capitalization.

@flippedcoder
flippedcoder marked this pull request as ready for review September 10, 2026 20:06
@flippedcoder
flippedcoder requested a review from a team as a code owner September 10, 2026 20:06

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 16dc0b878e

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

var client = await TemporalClient.ConnectAsync(new("localhost:7233") { Runtime = runtime });
```

#### Choose a tag set

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Move shared tag policy out of per-SDK pages

The entire “Choose a tag set” block is language-neutral organizational policy and is duplicated across all six modified observability pages: .NET, Go, Java, Python, Ruby, and TypeScript. This turns SDK how-to pages into repeated best-practice guidance that can drift independently; move the shared policy to one language-neutral Best Practices page and keep only a link plus the SDK-specific configuration here.

AGENTS.md reference: AGENTS.md:L247-L253

Useful? React with 👍 / 👎.

Comment on lines +125 to +127
That gap costs you time during an incident.
When several Namespaces degrade at once, what you need first is the name of the team that owns the affected Workers, so you can ask whether they deployed recently.
Standardized tags put that name on the dashboard, which turns a broad question about the Temporal Service into a direct message to one team.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Lead the incident guidance with the reader's action

In each of the six copies, this incident passage spends three sentences describing an abstract gap before telling the reader what to do. Rewrite it as direct triage steps—group by team, check that team's recent deployments, and investigate a shared cause when multiple team values are affected—then state the rationale.

AGENTS.md reference: AGENTS.md:L266-L268

Useful? React with 👍 / 👎.

@polymorfiq polymorfiq left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Looks great to me!

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.

4 participants