Skip to content

Conversation

@estringana
Copy link
Contributor

@estringana estringana commented Dec 24, 2025

Description

This feature will collect(once) all endpoints of the following framework: symfony(except version 4), laravel and wordpress

Reviewer checklist

  • Test coverage seems ok.
  • Appropriate labels assigned.

@codecov-commenter
Copy link

codecov-commenter commented Dec 30, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62.01%. Comparing base (2c70c61) to head (d49f445).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #3548   +/-   ##
=======================================
  Coverage   62.01%   62.01%           
=======================================
  Files         140      140           
  Lines       13309    13309           
  Branches     1762     1762           
=======================================
  Hits         8253     8253           
  Misses       4268     4268           
  Partials      788      788           

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2c70c61...d49f445. Read the comment docs.

🚀 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.

@pr-commenter
Copy link

pr-commenter bot commented Dec 30, 2025

Benchmarks [ tracer ]

Benchmark execution time: 2026-01-13 15:53:34

Comparing candidate commit d49f445 in PR branch estringana/collect-framework-endpoints-2 with baseline commit 2c70c61 in branch master.

Found 0 performance improvements and 8 performance regressions! Performance is the same for 185 metrics, 1 unstable metrics.

scenario:SymfonyBench/benchSymfonyDdprof

  • 🟥 execution_time [+3.704ms; +3.886ms] or [+42.955%; +45.063%]

scenario:SymfonyBench/benchSymfonyDdprof-opcache

  • 🟥 execution_time [+3.708ms; +3.816ms] or [+43.178%; +44.425%]

scenario:SymfonyBench/benchSymfonyOverhead

  • 🟥 execution_time [+3.531ms; +3.605ms] or [+44.143%; +45.071%]

scenario:SymfonyBench/benchSymfonyOverhead-opcache

  • 🟥 execution_time [+3.474ms; +3.618ms] or [+42.526%; +44.294%]

scenario:WordPressBench/benchWordPressDdprof

  • 🟥 execution_time [+2.027ms; +2.178ms] or [+6.888%; +7.401%]

scenario:WordPressBench/benchWordPressDdprof-opcache

  • 🟥 execution_time [+2.067ms; +2.228ms] or [+7.034%; +7.584%]

scenario:WordPressBench/benchWordPressOverhead

  • 🟥 execution_time [+2.047ms; +2.240ms] or [+7.498%; +8.205%]

scenario:WordPressBench/benchWordPressOverhead-opcache

  • 🟥 execution_time [+1.937ms; +2.126ms] or [+7.045%; +7.734%]

@estringana estringana force-pushed the estringana/collect-framework-endpoints-2 branch from be10f87 to 4dd7002 Compare January 2, 2026 11:38
@estringana estringana changed the title Estringana/collect framework endpoints 2 Collect framework endpoints Jan 8, 2026
@estringana estringana requested a review from cataphract January 8, 2026 09:18
@estringana estringana marked this pull request as ready for review January 8, 2026 11:30
@estringana estringana requested review from a team as code owners January 8, 2026 11:30
@cataphract
Copy link
Contributor

@codex review

Copy link

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

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: 7f84f03e8c

ℹ️ About Codex in GitHub

Your team has set up Codex to 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 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +372 to +374
) -> bool {
let cache_entry = ddog_sidecar_telemetry_cache_get_or_update(cache, service, env);
let result = cache_entry.last_endpoints_push.elapsed().map_or(false, |d| d < Duration::from_secs(60)); // 1 minute

Choose a reason for hiding this comment

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

P2 Badge Keep endpoint collection from expiring after 60s

This predicate only treats endpoints as “collected” for 60 seconds (elapsed() < 60s), so in long‑running PHP workers the Symfony/Laravel/WordPress hooks will start re‑enumerating routes/posts and re‑emitting app‑endpoints after a minute. That contradicts the “collect once” behavior and can create duplicate telemetry plus repeated route/DB scans on every request once the minute elapses.

Useful? React with 👍 / 👎.

Comment on lines +170 to +172
def deadline = System.currentTimeSeconds() + timeoutSec
def lastHttpReq = System.currentTimeSeconds() - 6
while (System.currentTimeSeconds() < deadline) {

Choose a reason for hiding this comment

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

P3 Badge Fix nonexistent System.currentTimeSeconds call

System.currentTimeSeconds() is not a Java/Groovy API, so this will throw MissingMethodException at runtime the first time waitForTelemetryData is used. That means the new endpoint telemetry tests that call waitForAppEndpoints/waitForMetrics/… will fail immediately instead of waiting on telemetry. Use System.currentTimeMillis() / 1000 or Instant.now().epochSecond instead.

Useful? React with 👍 / 👎.

@estringana estringana force-pushed the estringana/collect-framework-endpoints-2 branch from 7f84f03 to 4bdf65f Compare January 13, 2026 09:46
@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Jan 13, 2026

⚠️ Tests

Fix all issues with Cursor

⚠️ Warnings

❄️ 6 New flaky tests detected

ext/mbstring/tests/gb18030_2022_encoding.phpt (Exhaustive test of verification and conversion of GB18030-2022 text) from php.ext.mbstring.tests (Datadog) (Fix with Cursor)
001- Tested GB18030-2022 (BMP) -> UTF-16BE
002- Tested GB18030-2022 (SMP) <-> UTF-32BE
003- Tested UTF-16BE -> GB18030-2022 (BMP)
004- Done!
001+ Killed
socket_bind_params.phpt - ext/sockets - socket_bind - test with empty parameters from php-src.php-src.ext.sockets.tests (Datadog) (Fix with Cursor)
002+ 
008+ 
allocation_jit_01.phpt - [profiling] Allocation profiling should not crash when run with `USE_ZEND_ALLOC=0` from php-src.php-src.profiling.tests.phpt (Datadog) (Fix with Cursor)
005+ 
001- .*Done.
View all

🧪 1059 Tests failed

    testSearchPhpBinaries from integration.DDTrace\Tests\Integration\PHPInstallerTest (Fix with Cursor)

    testSimplePushAndProcess from laravel-58-test.DDTrace\Tests\Integrations\Laravel\V5_8\QueueTest (Fix with Cursor)

testSimplePushAndProcess from laravel-8x-test.DDTrace\Tests\Integrations\Laravel\V8_x\QueueTest (Datadog) (Fix with Cursor)
DDTrace\Tests\Integrations\Laravel\V8_x\QueueTest::testSimplePushAndProcess
Test code or tested code printed unexpected output: spanLinksTraceId: 69665d3d000000004b910384d33449b4
tid: 69665d3d00000000
hexProcessTraceId: 4b910384d33449b4
hexProcessSpanId: 1e220efa6b7de447
processTraceId: 5445137293481626036
processSpanId: 2171314439054025799
View all
This comment will be updated automatically if new data arrives.
🔗 Commit SHA: d49f445 | Docs | Datadog PR Page | Was this helpful? Give us feedback!

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