Skip to content

docs(influxdb3): add Enterprise load capture guide - #7539

Merged
jstirnaman merged 8 commits into
masterfrom
docs/7466-enterprise-load-capture
Aug 4, 2026
Merged

docs(influxdb3): add Enterprise load capture guide#7539
jstirnaman merged 8 commits into
masterfrom
docs/7466-enterprise-load-capture

Conversation

@jstirnaman

Copy link
Copy Markdown
Contributor

What changed

Adds a user-facing guide for InfluxDB 3 Enterprise load capture
(loadcap) at admin/load-capture ("Capture workload data"). The guide
covers:

  • Availability and the --mode query prerequisite.
  • query and write/both capture types and constraints.
  • Starting, listing, previewing, downloading, extracting, and deleting a
    capture (CLI and links to the API reference).
  • Inspecting a capture before sharing and what load capture anonymizes
    vs. preserves.

Also adds (?i)anonymiz\w* to the Vale accept vocabulary.

Why

Issue #7466 and PR #7476 deliver the load capture API reference, but the
feature had no guide explaining what it is, when to use it, who runs it,
and how to inspect a capture before sharing it with InfluxData. Self-hosted
operators and InfluxData support use load capture to troubleshoot write and
query performance by reproducing an anonymized workload.

Impact

Verification

All documented behavior was verified against the shipped InfluxDB 3
Enterprise 3.10.2
binary.

  • Availability: loadcap initializes only on a --mode query node.
    --mode all returns 404 loadcap not available; Core rejects the
    loadcap subcommand. (The engineering draft's "combined node that
    includes query mode" was incorrect and is corrected here.)
  • Query capture: start → preview → download → extract verified; 778
    queries captured and anonymized.
  • Write/both capture: verified on an ingest+query MinIO cluster; a
    both capture produced 18 .pt files, catalog.json, and
    queries.json.zst.
  • Anonymization: a plaintext leak grep for database, table, tag,
    tag-value, and string-field names across all .pt files and
    catalog.json returned 0 hits. SQL and InfluxQL identifiers and
    literals are hashed, regex structure is preserved, timestamps and time
    predicates are preserved, per-capture keys differ, and
    INSERT/UPDATE/DELETE become <unsupported:...>.
  • Constraints: one capture at a time (409), maximum duration 1h
    (400 above), and catalog.json is a start-of-capture snapshot.
  • Docs checks: npx hugo builds and the page renders; 14 code blocks
    pass lint-codeblocks; Vale reports 0 errors/0 warnings.

Follow-ups

Add a user-facing guide for InfluxDB 3 Enterprise load capture
(loadcap) at admin/load-capture, covering query and write/both
capture, inspection, and anonymization. Companion to the load
capture API reference (#7476, issue #7466).

All behavior documented here was verified against the shipped
InfluxDB 3 Enterprise 3.10.2 binary:

- Availability: loadcap initializes only on a --mode query node.
  --mode all returns 404 "loadcap not available"; Core rejects the
  loadcap subcommand entirely. (The engineering draft's "combined
  node that includes query mode" was wrong.)
- Query capture: start -> preview -> download -> extract verified;
  778 queries captured and anonymized.
- Write/both capture: verified on an ingest+query MinIO cluster;
  a both capture produced 18 .pt files, catalog.json, and
  queries.json.zst.
- Anonymization: leak grep for db/table/tag/value/string-field
  names across all .pt files and catalog.json returned 0 hits.
  SQL and InfluxQL identifiers/literals hashed, regex structure
  preserved, timestamps/time predicates preserved, per-capture
  keys differ, INSERT/UPDATE/DELETE -> <unsupported:...>.
- Constraints: one capture at a time (409), max duration 1h (400
  above), catalog.json is a start-of-capture snapshot.

Add "(?i)anonymiz\w*" to the Vale accept vocabulary.

Note: the guide links to the load capture API reference page, which
lands with #7476.
@jstirnaman
jstirnaman requested a review from a team as a code owner July 20, 2026 22:17
@jstirnaman
jstirnaman requested review from sanderson and removed request for a team July 20, 2026 22:17
@github-actions

Copy link
Copy Markdown
Contributor

Vale Style Check Results

Metric Count
Errors 0
Warnings 0

Check passed

@github-actions github-actions Bot added the product:v3-monolith InfluxDB 3 Core and Enterprise (single-node / clusterable) label Jul 20, 2026
@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🔗 Link Check Results — Link Check Bot

All links are valid

Metric Value
Files Checked 1
Total Links 424
Errors 0
Warnings 2
Success Rate 99.0566%
⚠️ 2 warning(s) (do not fail CI)
Source File URL Issue
content/influxdb3/enterprise/admin/load-capture/_index.md https://support.influxdata.com/ Network error: SSL certificate not trusted. Use --insecure if site is trusted (e…
content/influxdb3/enterprise/admin/load-capture/_index.md file:///home/runner/work/docs-v2/docs-v2/public/influxdb3/enterprise/api/load-capture File not found. Check if file exists and path is correct: File not found. Check …

Full details: workflow run summary and artifact. Last updated: 2026-08-04 19:35:14 UTC

@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://influxdata.github.io/docs-v2/pr-preview/pr-7539/

Built to branch gh-pages at 2026-07-21 22:25 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@jstirnaman
jstirnaman changed the base branch from master to fix/7464-show-in-table-splicing July 21, 2026 14:33
@jstirnaman
jstirnaman changed the base branch from fix/7464-show-in-table-splicing to master July 21, 2026 14:36
…ndow

Restructure 'Capture a workload profile' into ordered steps: start the
capture, send traffic while it runs, wait for completion, then preview.
State that only traffic received during the capture window is recorded
and that previously executed queries do not appear in the profile.
…e-load-capture

# Conflicts:
#	content/influxdb3/enterprise/admin/load-capture.md
@jstirnaman jstirnaman added the waiting:product Waiting for product/PM decision label Jul 21, 2026
Add the four missing loadcap operations, verified against a running
InfluxDB 3 Enterprise 3.10.3 cluster:

- GET /api/v3/loadcap/profiles/{profile_id} (returns the preview object)
- DELETE /api/v3/loadcap/profiles/{profile_id}
- GET /api/v3/loadcap/profiles/{profile_id}/preview
- GET /api/v3/loadcap/profiles/{profile_id}/download (application/gzip)

Fix the LoadCaptureProfile schema to match observed responses: the
capture-type field is named 'type', and node_id is an integer. Add the
LoadCapturePreview schema and the profile_id path parameter.

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.

Pull request overview

Adds an Enterprise workload-capture guide and completes its API reference.

Changes:

  • Documents capture, inspection, anonymization, and sharing workflows.
  • Adds profile management API operations and schemas.
  • Extends Vale vocabulary for anonymization terms.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
content/influxdb3/enterprise/admin/load-capture.md Adds the user guide.
api-docs/influxdb3/enterprise/influxdb3-enterprise-openapi.yaml Completes load-capture API coverage.
.ci/vale/styles/config/vocabularies/InfluxDataDocs/accept.txt Accepts anonymization terms.
Comments suppressed due to low confidence (6)

content/influxdb3/enterprise/admin/load-capture.md:83

  • The PR verification and linked issue #7534 say only an admin token was tested and the minimum required permission is still unknown. This definitive prerequisite is therefore unsupported; describe the token used by the examples until the authorization requirement is verified.
- Load capture requires an
  [admin token](/influxdb3/enterprise/admin/tokens/admin/).

api-docs/influxdb3/enterprise/influxdb3-enterprise-openapi.yaml:2526

  • The PR verification and #7534 state that only an admin token was tested; whether it is required remains unknown. This delete operation therefore documents an unverified authorization contract, including the corresponding 403 response. Remove or qualify the requirement until permission testing confirms it.
        This endpoint requires an admin token.

api-docs/influxdb3/enterprise/influxdb3-enterprise-openapi.yaml:2554

  • The PR verification and #7534 state that only an admin token was tested; whether it is required remains unknown. This preview operation therefore documents an unverified authorization contract, including the corresponding 403 response. Remove or qualify the requirement until permission testing confirms it.
        This endpoint requires an admin token.

api-docs/influxdb3/enterprise/influxdb3-enterprise-openapi.yaml:2587

  • The PR verification and #7534 state that only an admin token was tested; whether it is required remains unknown. This download operation therefore documents an unverified authorization contract, including the corresponding 403 response. Remove or qualify the requirement until permission testing confirms it.
        This endpoint requires an admin token.

content/influxdb3/enterprise/admin/load-capture.md:222

  • A write-only archive omits queries.json.zst, so this command fails for that supported capture type. Scope the instruction to captures that contain query artifacts.
Inspect the anonymized queries:

content/influxdb3/enterprise/admin/load-capture.md:240

  • Query-only archives omit .pt files, so this ls command fails for that supported capture type. Scope this inspection step to captures that contain WAL artifacts.
The `.pt` files are binary WAL files for InfluxData tooling.

Comment thread content/influxdb3/enterprise/admin/load-capture.md Outdated
Comment thread api-docs/influxdb3/enterprise/influxdb3-enterprise-openapi.yaml
Comment thread content/influxdb3/enterprise/admin/load-capture.md Outdated
@jstirnaman jstirnaman added waiting:support and removed waiting:product Waiting for product/PM decision labels Jul 31, 2026
jstirnaman and others added 3 commits August 4, 2026 14:30
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@jstirnaman
jstirnaman merged commit e191393 into master Aug 4, 2026
23 checks passed
@jstirnaman
jstirnaman deleted the docs/7466-enterprise-load-capture branch August 4, 2026 19:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

final review product:v3-monolith InfluxDB 3 Core and Enterprise (single-node / clusterable) waiting:support

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants