func()

in pkg/observability/opentelemetry.go [103:124]


func (m Metrics) serveNodeMetrics() {
	instanceIdsMap, err := m.ec2Helper.GetInstanceIdsMapByTagKey(m.nthConfig.ManagedTag)
	if err != nil || instanceIdsMap == nil {
		log.Err(err).Msg("Failed to get AWS instance ids")
		return
	}

	m.InstancesRecord(int64(len(instanceIdsMap)))

	nodeInstanceIds, err := m.node.FetchKubernetesNodeInstanceIds()
	if err != nil || nodeInstanceIds == nil {
		log.Err(err).Msg("Failed to get node instance ids")
	} else {
		nodeCount := 0
		for _, id := range nodeInstanceIds {
			if _, ok := instanceIdsMap[id]; ok {
				nodeCount++
			}
		}
		m.NodesRecord(int64(nodeCount))
	}
}