Skip to content

Update temporal integration to support temporal version 1.27 #20142

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

Open
wants to merge 21 commits into
base: master
Choose a base branch
from

Conversation

phuongdnguyen
Copy link
Contributor

@phuongdnguyen phuongdnguyen commented Apr 24, 2025

What does this PR do?

  • Update generate_metadata script to adapt with metrics definition metric_defs.go defined in multiple lines in temporal 1.27
  • Update tests

Motivation

Temporal integration is outdated. Current integration support temporal server 1.19, the latest version is 1.27. While we can include missing metrics in extra_metrics section, i think it's better to keep the integration up to date so users can use the agent without any more configurations.
Currently, the diff between list of metrics this integration support and the latest major version of temporal is already quite large, around 70 metrics.

Review checklist (to be filled by reviewers)

  • Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
  • Add the qa/skip-qa label if the PR doesn't need to be tested during QA.
  • If you need to backport this PR to another branch, you can add the backport/<branch-name> label to the PR and it will automatically open a backport PR once this one is merged

@phuongdnguyen phuongdnguyen requested a review from a team as a code owner April 24, 2025 11:10
@phuongdnguyen phuongdnguyen changed the title update temporal integration to support temporal version 1.27 Update temporal integration to support temporal version 1.27 Apr 24, 2025
Copy link

codecov bot commented Apr 24, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 89.49%. Comparing base (09056ae) to head (193f06e).

Additional details and impacted files
Flag Coverage Δ
activemq ?
cassandra ?
confluent_platform ?
hive ?
hivemq ?
hudi ?
ignite ?
jboss_wildfly ?
kafka ?
presto ?
solr ?
temporal 100.00% <ø> (ø)
tomcat ?
weblogic ?

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@phuongdnguyen phuongdnguyen force-pushed the update-temporal-integration branch from 6f46a92 to 589c384 Compare May 4, 2025 09:49
@phuongdnguyen phuongdnguyen force-pushed the update-temporal-integration branch from 589c384 to b5a68d1 Compare May 4, 2025 09:57
@phuongdnguyen phuongdnguyen marked this pull request as draft May 5, 2025 09:46
@phuongdnguyen phuongdnguyen marked this pull request as ready for review May 7, 2025 01:46
@phuongdnguyen phuongdnguyen marked this pull request as draft May 7, 2025 03:55
@phuongdnguyen phuongdnguyen marked this pull request as ready for review May 14, 2025 05:42
@phuongdnguyen
Copy link
Contributor Author

Hi @Kyle-Neale , sorry for the direct ping but i see you're approver of temporal integration before. Can you kindly take a look?

@phuongdnguyen
Copy link
Contributor Author

Not sure why the ci is complaining about missing ACTIONS_ID_TOKEN_REQUEST_URL

Copy link
Contributor

@janine-c janine-c left a comment

Choose a reason for hiding this comment

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

The docs team is only responsible for the metadata file, but it looks fine to me :)

Copy link
Contributor

@iliakur iliakur left a comment

Choose a reason for hiding this comment

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

Thanks for the contribution and apologies for the delayed response.

I noticed we're dropping support for Temporal v1. Do you mind undoing those changes please? We'd like to support customers who are monitoring older versions of Temporal too.

@phuongdnguyen
Copy link
Contributor Author

phuongdnguyen commented Jun 4, 2025

Hi @iliakur , not sure if i'm following.
In general, i think a new version of temporal (with metrics change) should have a corresponding version of DataDog agent. What is our strategy to do it here? Are we saying that because we want to support customer running older version of temporal, hence we won't update the temporal integration, which also mean that we won't support customer running newer version of temporal?

@iliakur
Copy link
Contributor

iliakur commented Jun 4, 2025

Hi @iliakur , not sure if i'm following. In general, i think a new version of temporal (with metrics change) should have a corresponding version of DataDog agent. What is our strategy to do it here? Are we saying that because we want to support customer running older version of temporal, hence we won't update the temporal integration, which also mean that we won't support customer running newer version of temporal?

@phuongdnguyen we want any given agent version to support both versions of Temporal.

Say you're a customer who wants to upgrade your Datadog Agent, but (for whatever reason) cannot update your Temporal deployment. You'd be pissed if you're blocked from upgrading your agent, right?

@phuongdnguyen
Copy link
Contributor Author

phuongdnguyen commented Jun 4, 2025

Hi @iliakur , in that case, perhaps what we might want to do is just accumulate all metrics supported through all version of Temporal. Are there any limit cause it sounds not too efficient 🤔

@iliakur
Copy link
Contributor

iliakur commented Jun 4, 2025

In files like metadata.csv we definitely keep all the metrics. If you want, you can add notes to descriptions saying which versions of temporal a given metric comes from.

Figuring out which metrics to collect efficiently is a question of implementation. Let me know if you want concrete tips for that.

@phuongdnguyen
Copy link
Contributor Author

phuongdnguyen commented Jun 4, 2025

@iliakur Thanks, understood your concerns now, will make updates to the patch 👍

@phuongdnguyen
Copy link
Contributor Author

phuongdnguyen commented Jun 7, 2025

Hi @iliakur, can take a look at #20469, much appreciated 🙇.
I'm going to split this PR into 2 PR, the first is 20469, update the script to generate metadata.
The second PR following that will patch the METRIC_MAP & tests to up to date with temporal latest version

@iliakur iliakur self-requested a review June 7, 2025 07:31
@iliakur
Copy link
Contributor

iliakur commented Jun 13, 2025

Hi @iliakur, can take a look at #20469, much appreciated 🙇. I'm going to split this PR into 2 PR, the first is 20469, update the script to generate metadata. The second PR following that will patch the METRIC_MAP & tests to up to date with temporal latest version

@phuongdnguyen done! left some suggestions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants