At the moment metrics collection in the V2 architecture is still done the same as it was done in V1 [1], by using metricbeat to collect information using the beat metricset. This is specific to beats and has the downside that it only works for components written with libbeat. As we integrate new components this does not work in a generic way and new components will report no metrics.
We need to determine how to handle metrics collections in a generic way that can work for all components. Adding it in the V2 control protocol seems like the best path forward but we need to determine how that would look and work.
[1] https://github.com/elastic/elastic-agent/blob/main/internal/pkg/agent/application/monitoring/v1_monitor.go
At the moment metrics collection in the V2 architecture is still done the same as it was done in V1 [1], by using metricbeat to collect information using the
beatmetricset. This is specific to beats and has the downside that it only works for components written with libbeat. As we integrate new components this does not work in a generic way and new components will report no metrics.We need to determine how to handle metrics collections in a generic way that can work for all components. Adding it in the V2 control protocol seems like the best path forward but we need to determine how that would look and work.
[1] https://github.com/elastic/elastic-agent/blob/main/internal/pkg/agent/application/monitoring/v1_monitor.go