Skip to content

DBM Getting Started: update guide for orders app example - #37074

Merged
sangeetashivaji merged 7 commits into
masterfrom
sangeeta.shivajirao/dbm-getting-started-orders-app
Jun 12, 2026
Merged

DBM Getting Started: update guide for orders app example#37074
sangeetashivaji merged 7 commits into
masterfrom
sangeeta.shivajirao/dbm-getting-started-orders-app

Conversation

@sangeetashivaji

Copy link
Copy Markdown
Contributor

Summary

Updates the Getting Started with Database Monitoring guide to reflect the new Go orders app in dd-database-monitoring-example.

  • Replaces the outdated single-container (pgbench/sysbench) description with the 3-container setup: database, Datadog Agent, and Go orders app
  • Adds a signals table covering query metrics, explain plans, the built-in full-table-scan (orders.status has no index), lock contention, and APM↔DBM correlation
  • Adds MySQL support alongside PostgreSQL (make mysql) and a DD_SITE note for non-US1 users
  • Updates the explain plan step to show a Seq Scan (not Index Scan) and includes the fix (CREATE INDEX idx_orders_status ON orders(status))
  • Adds a new "Correlate traces and database queries" section for APM→DBM and DBM→APM navigation
  • Notes mysql.queries as the MySQL equivalent metric in the dashboard widget section

Screenshots needed

The following images need to be replaced/added before this PR merges:

Image Action
dbm_qm_sort_time.png Replace — show orders queries in Query Metrics
dbm_qs_explain_plan_duration.png Replace — show orders queries in Query Samples
dbm_qs_explain_plan_list_view.png Replace — show Seq Scan instead of Index Scan
dbm_apm_correlation.png New — APM trace linked to a DBM query sample

Test plan

  • Preview rendered docs to verify table, code blocks, and shortcodes render correctly
  • Replace/add screenshots listed above
  • Verify [7] APM Traces reference link resolves correctly

🤖 Generated with Claude Code

Replace pgbench/sysbench references with the new Go orders app:
- Describe 3-container setup (db, agent, orders app) with signals table
- Add MySQL support (make mysql) and DD_SITE note for non-US1 users
- Call out the orders.status full-table-scan as the built-in slow query
- Change explain plan step from Index Scan to Seq Scan with fix shown
- Add APM ↔ DBM correlation section
- Note mysql.queries metric for MySQL dashboard users

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@sangeetashivaji
sangeetashivaji requested a review from a team as a code owner May 28, 2026 18:55
@github-actions

Copy link
Copy Markdown
Contributor

Preview links (active after the build_preview check completes)

Modified Files

@cswatt cswatt self-assigned this May 28, 2026
@cswatt

cswatt commented May 28, 2026

Copy link
Copy Markdown
Contributor

added DOCS-14556 to track review

@cswatt cswatt added the editorial review Waiting on a more in-depth review label May 28, 2026
@cswatt cswatt removed their assignment May 28, 2026
@jeff-morgan-dd jeff-morgan-dd self-assigned this Jun 1, 2026

@jeff-morgan-dd jeff-morgan-dd 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.

Hi Sangeeta, thanks for this one! Please see notes inline.

Comment thread content/en/getting_started/database_monitoring/_index.md Outdated
Comment thread content/en/getting_started/database_monitoring/_index.md Outdated
Comment thread content/en/getting_started/database_monitoring/_index.md Outdated
4. Find a query in the table with data in the {{< ui >}}Explain Plan{{< /ui >}} column and click on it to open the Sample Details page.

5. Under {{< ui >}}Explain Plan{{< /ui >}}, click {{< ui >}}List View{{< /ui >}}. This Explain Plan at the bottom of the Explain Plan Sample page shows that the query requires an {{< ui >}}Index Scan{{< /ui >}}.
5. Under {{< ui >}}Explain Plan{{< /ui >}}, click {{< ui >}}List View{{< /ui >}}. This Explain Plan at the bottom of the Explain Plan Sample page shows that the query performs a **Seq Scan** on the `orders` table. Because there is no index on the `status` column, PostgreSQL reads every row in the table to find matches.

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.

This new content seems to be getting very in the weeds on how to resolve a specific type of slow query, and seems a bit out of place on a Getting Started page. Can you reframe to be more general about what the Explain Plan list view shows? And maybe we can have a separate, more detailed troubleshooting page for different types of slow queries that might show up here?

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.

The Correlate traces section below is a good example of how specific we should probably get on a Getting Started page.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Reframed this to be very general

sangeetashivaji and others added 4 commits June 8, 2026 16:08
Co-authored-by: jeff-morgan-dd <jeff.morgan@datadoghq.com>
Co-authored-by: jeff-morgan-dd <jeff.morgan@datadoghq.com>
Co-authored-by: jeff-morgan-dd <jeff.morgan@datadoghq.com>
Remove specific Seq Scan diagnosis, cause explanation, and SQL fix
recipe. Replace with a general description of what the list view shows,
consistent with the level of detail in other Getting Started sections.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

@jeff-morgan-dd jeff-morgan-dd 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.

Thanks Sangeeta, looks good! Appoved, i'm just committing 2 small fixes around emdashes.

Comment thread content/en/getting_started/database_monitoring/_index.md Outdated
Comment thread content/en/getting_started/database_monitoring/_index.md Outdated
@sangeetashivaji

Copy link
Copy Markdown
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351

gh-worker-devflow-routing-ef8351 Bot commented Jun 12, 2026

Copy link
Copy Markdown

View all feedbacks in Devflow UI.

2026-06-12 13:58:43 UTC ℹ️ Start processing command /merge


2026-06-12 13:58:50 UTC ℹ️ MergeQueue: waiting for PR to be ready

This pull request is not mergeable according to GitHub. Common reasons include pending required checks, missing approvals, or merge conflicts — but it could also be blocked by other repository rules or settings.
It will be added to the queue as soon as checks pass and/or get approvals. View in MergeQueue UI.
Note: if you pushed new commits since the last approval, you may need additional approval.
You can remove it from the waiting list with /remove command.


2026-06-12 14:15:00 UTC ⚠️ MergeQueue: This merge request was unqueued

sangeeta.shivajirao@datadoghq.com unqueued this merge request

@sangeetashivaji

Copy link
Copy Markdown
Contributor Author

/merge -c

@gh-worker-devflow-routing-ef8351

gh-worker-devflow-routing-ef8351 Bot commented Jun 12, 2026

Copy link
Copy Markdown

View all feedbacks in Devflow UI.

2026-06-12 14:14:55 UTC ℹ️ Start processing command /merge -c

@sangeetashivaji
sangeetashivaji merged commit 5cdeac5 into master Jun 12, 2026
21 of 24 checks passed
@sangeetashivaji
sangeetashivaji deleted the sangeeta.shivajirao/dbm-getting-started-orders-app branch June 12, 2026 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

editorial review Waiting on a more in-depth review mergequeue-status: removed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants