func buildMetadataForNode()

in agent/envoy_bootstrap/envoy_bootstrap.go [1380:1435]


func buildMetadataForNode() (*structpb.Struct, error) {
	metadata := make(map[string]interface{})

	if runtimeConfig, err := getRuntimeConfigLayer0(); err != nil {
		log.Warnf("Could not collect static runtime info: %s", err)
	} else {
		metadata[runtimeMetadataNamespace] = runtimeConfig
	}

	interfaceInfo, err := netinfo.BuildMapWithInterfaceInfo()
	if err != nil {
		log.Warnf("Could not collect network info: %s", err)
	} else {
		for k, v := range *interfaceInfo {
			metadata[k] = v
		}
	}

	metricFilter, err := metric_filter.BuildMetadata()
	if err != nil {
		log.Warnf("Could not determine metric filter options: %s", err)
	} else {
		for k, v := range *metricFilter {
			metadata[k] = v
		}
	}

	platformInfo, err := platforminfo.BuildMetadata()
	if err != nil {
		log.Warnf("Could not collect platform info: %s", err)
	} else {
		for k, v := range *platformInfo {
			metadata[k] = v
		}
	}

	containerInfo, err := applicationinfo.BuildMetadata()
	if err != nil {
		log.Warnf("Could not collect ecs container info: %s", err)
	} else {
		for k, v := range containerInfo {
			metadata[k] = v
		}
	}

	listenerInfo, err := listenerinfo.BuildMetadata()
	if err != nil {
		log.Warnf("Could not collect listener info: %v", err)
	} else {
		for k, v := range listenerInfo {
			metadata[k] = v
		}
	}

	return structpb.NewStruct(metadata)
}