[RemoteConfig] Add Support for Memory profiler#402
Conversation
pellared
left a comment
There was a problem hiding this comment.
Can you add a changelog entry?
MrAlias
left a comment
There was a problem hiding this comment.
The remote memory-profiler lifecycle conflicts with the stable configuration contract, so this should not merge until its precedence and disabled-state behavior are defined.
| * When `memory_profiler` is present, it indicates that the memory profiler | ||
| SHOULD be started if it is not currently running. | ||
| * When `memory_profiler` is omitted, it indicates that the memory profiler | ||
| SHOULD be stopped if it is currently running. |
There was a problem hiding this comment.
These bullets create a runtime lifecycle for SPLUNK_PROFILER_MEMORY_ENABLED that conflicts with the stable Instrumentation Libraries contract in specification/configuration.md: the initial setting SHOULD last for the application run, and a deactivated profiler MUST not add profiling overhead.
A process that starts with memory profiling disabled and later receives this payload cannot satisfy both documents. Startup-bound profilers must either ignore the update or retain hooks/callbacks while disabled. Please define the remote-config exception and precedence, including how unsupported transitions and the disabled-state overhead guarantee work, or keep memory-profiler enablement startup-only.
This PR adds support for the Memory Profiler in remote configuration.