Skip to content

Support continuous profiling with declarative configuration - #818

Open
pmcollins wants to merge 19 commits into
mainfrom
feat/declarative-continuous-profiling
Open

pmcollins wants to merge 19 commits into
mainfrom
feat/declarative-continuous-profiling

Conversation

@pmcollins

@pmcollins pmcollins commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

Enable continuous CPU profiling from distribution.splunk.profiling.always_on.cpu_profiler when OTEL_CONFIG_FILE is set. Read the sampling interval and resource attributes from YAML, and send profiles through a dedicated OTLP HTTP exporter configured under distribution.splunk.profiling.exporter.otlp_log_http. Application logs continue through their own logger_provider configuration.

Use the SDK default profiling endpoint when no endpoint is supplied. Validate profiling settings with a schema that reuses OpenTelemetry's exporter definitions, and stop sampling before flushing profiles at process exit. Keep the existing start_profiling(env=None) entry point and lazy loading of declarative configuration dependencies.

Add configuration regression tests, default/custom exporter integration coverage, and documentation.

@pmcollins
pmcollins marked this pull request as ready for review November 6, 2026 20:07
@pmcollins
pmcollins requested review from a team as code owners November 6, 2026 20:07
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.

2 participants