-
Notifications
You must be signed in to change notification settings - Fork 148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stop collecting the beat state metricset as part of agent monitoring #4153
Comments
Pinging @elastic/elastic-agent (Team:Elastic-Agent) |
@pchila thanks for your diligence on this issue. Would it be possible to have a benchmark on what the savings we could expect from this change? cc: @pierrehilbert |
Reopening this issue as the second part of the acceptance criteria isn't actually done yet AFAICT:
Also related to @nimarezainia's question in the previous comment. |
@cmacknz did a quick check on the data savings here on the PR #4579 (comment) I will re-run 2 versions of agent (with and without the change) and check the index size and document count |
Thanks. Could you make a small PR to update with these savings numbers? |
@nimarezainia @ycombinator In both cases I used a policy that included the System Integration and agent logs and metrics collection. Here's the sizes of the reindexed documents Document count for I am gonna put up a small PR with the changelog patching and link it to this issue |
In that same PR, can you add something under the doc directory describing how to reproduce these test results? |
Sure, doesn't matter when or how it gets documented then, as long as we have a way to remember what we did if we want to re-evaluate this again later. |
Isn't the number of metrics produced dependent on the number of components running under agent? i.e. something like x document per beat per interval? so the % savings depends on the number of deployed integrations/managed beats? |
That is correct yes, more complex configurations will see greater savings. I assume @pchila likely tested this with the default system integration installed, I will comment on the changelog entry. |
@strawgate @cmacknz edited my comment adding clarification on what policy I used for the test. This is the reason why I expressed the savings in % as the absolute numbers will scale with the number of impacted indices |
Pinging @elastic/elastic-agent-control-plane (Team:Elastic-Agent-Control-Plane) |
Our agent monitoring implementation currently uses the beat Metricbeat module to monitor Beat subprocesses. We collect both the stats and state metricsets.
elastic-agent/internal/pkg/agent/application/monitoring/v1_monitor.go
Lines 617 to 625 in b39b9af
It seems to me that nothing actually uses the data from the state metricset. We don't map the fields in the Elastic Agent integration. I believe we can remove this metricset and stop pointlessly storing this data for every Beat process we start.
We currently store both the state and stats metricset in the same datastream, and as such include the metricset name as a TSDB dimension which could probably be removed after this change.
https://github.com/elastic/integrations/blob/a2c55c4cbf752e0490f9fe2d3e68698517c7b74d/packages/elastic_agent/data_stream/elastic_agent_metrics/fields/ecs.yml#L21-L23
Acceptance Criteria:
The text was updated successfully, but these errors were encountered: