in internal/beatcmd/beat.go [688:724]
func addDocappenderOutputElasticsearchMetrics(ctx context.Context, v monitoring.Visitor, sm metricdata.ScopeMetrics) {
var bulkRequestsCount, bulkRequestsAvailable int64
var indexersCreated, indexersDestroyed int64
for _, m := range sm.Metrics {
switch m.Name {
case "elasticsearch.bulk_requests.count":
if value, ok := getScalarInt64(m.Data); ok {
bulkRequestsCount = value
}
case "elasticsearch.bulk_requests.available":
if value, ok := getScalarInt64(m.Data); ok {
bulkRequestsAvailable = value
}
case "elasticsearch.indexer.created":
if value, ok := getScalarInt64(m.Data); ok {
indexersCreated = value
}
case "elasticsearch.indexer.destroyed":
if value, ok := getScalarInt64(m.Data); ok {
indexersDestroyed = value
}
}
}
v.OnRegistryStart()
v.OnKey("bulk_requests")
monitoring.ReportInt(v, "completed", bulkRequestsCount)
monitoring.ReportInt(v, "available", bulkRequestsAvailable)
v.OnRegistryFinished()
v.OnRegistryStart()
v.OnKey("indexers")
monitoring.ReportInt(v, "created", indexersCreated)
monitoring.ReportInt(v, "destroyed", indexersDestroyed)
monitoring.ReportInt(v, "active", indexersCreated-indexersDestroyed+1)
v.OnRegistryFinished()
}