func PushMEProcessedAndReceivedCountToAppInsightsMetrics()

in otelcollector/fluent-bit/src/telemetry.go [670:815]


func PushMEProcessedAndReceivedCountToAppInsightsMetrics() {

	ticker := time.NewTicker(time.Second * time.Duration(meMetricsTelemetryIntervalSeconds))
	for ; true; <-ticker.C {

		meMetricsProcessedCountMapMutex.Lock()
		for k, v := range meMetricsProcessedCountMap {
			metric := appinsights.NewMetricTelemetry("meMetricsProcessedCount", v.Value)
			metric.Properties["metricsAccountName"] = k
			metric.Properties["bytesProcessedCount"] = fmt.Sprintf("%.2f", v.DimBytesProcessedCount)
			metric.Properties["metricsSentToPubCount"] = fmt.Sprintf("%.2f", v.DimMetricsSentToPubCount)
			metric.Properties["bytesSentToPubCount"] = fmt.Sprintf("%.2f", v.DimBytesSentToPubCount)

			if InvalidCustomPrometheusConfig != "" {
				metric.Properties["InvalidCustomPrometheusConfig"] = InvalidCustomPrometheusConfig
			}
			if DefaultPrometheusConfig != "" {
				metric.Properties["DefaultPrometheusConfig"] = DefaultPrometheusConfig
			}

			if os.Getenv(envControllerType) == "ReplicaSet" {
				if KubeletKeepListRegex != "" {
					metric.Properties["KubeletKeepListRegex"] = KubeletKeepListRegex
				}
				if CoreDNSKeepListRegex != "" {
					metric.Properties["CoreDNSKeepListRegex"] = CoreDNSKeepListRegex
				}
				if CAdvisorKeepListRegex != "" {
					metric.Properties["CAdvisorKeepListRegex"] = CAdvisorKeepListRegex
				}
				if KubeProxyKeepListRegex != "" {
					metric.Properties["KubeProxyKeepListRegex"] = KubeProxyKeepListRegex
				}
				if ApiServerKeepListRegex != "" {
					metric.Properties["ApiServerKeepListRegex"] = ApiServerKeepListRegex
				}
				if KubeStateKeepListRegex != "" {
					metric.Properties["KubeStateKeepListRegex"] = KubeStateKeepListRegex
				}
				if NodeExporterKeepListRegex != "" {
					metric.Properties["NodeExporterKeepListRegex"] = NodeExporterKeepListRegex
				}
				if WinExporterKeepListRegex != "" {
					metric.Properties["WinExporterKeepListRegex"] = WinExporterKeepListRegex
				}
				if WinKubeProxyKeepListRegex != "" {
					metric.Properties["WinKubeProxyKeepListRegex"] = WinKubeProxyKeepListRegex
				}
				if PodannotationKeepListRegex != "" {
					metric.Properties["PodannotationKeepListRegex"] = PodannotationKeepListRegex
				}
				if KappieBasicKeepListRegex != "" {
					metric.Properties["KappieBasicKeepListRegex"] = KappieBasicKeepListRegex
				}
				if AcstorCapacityProvisionerKeepListRegex != "" {
					metric.Properties["AcstorCapacityProvisionerRegex"] = AcstorCapacityProvisionerKeepListRegex
				}
				if AcstorMetricsExporterKeepListRegex != "" {
					metric.Properties["AcstorMetricsExporterRegex"] = AcstorMetricsExporterKeepListRegex
				}
				if NetworkObservabilityCiliumKeepListRegex != "" {
					metric.Properties["NetworkObservabilityCiliumRegex"] = NetworkObservabilityCiliumKeepListRegex
				}
				if NetworkObservabilityHubbleKeepListRegex != "" {
					metric.Properties["NetworkObservabilityHubbleRegex"] = NetworkObservabilityHubbleKeepListRegex
				}
				if NetworkObservabilityRetinaKeepListRegex != "" {
					metric.Properties["NetworkObservabilityRetinaRegex"] = NetworkObservabilityRetinaKeepListRegex
				}

				if KubeletScrapeInterval != "" {
					metric.Properties["KubeletScrapeInterval"] = KubeletScrapeInterval
				}
				if CoreDNSScrapeInterval != "" {
					metric.Properties["CoreDNSScrapeInterval"] = CoreDNSScrapeInterval
				}
				if CAdvisorScrapeInterval != "" {
					metric.Properties["CAdvisorScrapeInterval"] = CAdvisorScrapeInterval
				}
				if KubeProxyScrapeInterval != "" {
					metric.Properties["KubeProxyScrapeInterval"] = KubeProxyScrapeInterval
				}
				if ApiServerScrapeInterval != "" {
					metric.Properties["ApiServerScrapeInterval"] = ApiServerScrapeInterval
				}
				if KubeStateScrapeInterval != "" {
					metric.Properties["KubeStateScrapeInterval"] = KubeStateScrapeInterval
				}
				if NodeExporterScrapeInterval != "" {
					metric.Properties["NodeExporterScrapeInterval"] = NodeExporterScrapeInterval
				}
				if WinExporterScrapeInterval != "" {
					metric.Properties["WinExporterScrapeInterval"] = WinExporterScrapeInterval
				}
				if WinKubeProxyScrapeInterval != "" {
					metric.Properties["WinKubeProxyScrapeInterval"] = WinKubeProxyScrapeInterval
				}
				if PromHealthScrapeInterval != "" {
					metric.Properties["PromHealthScrapeInterval"] = PromHealthScrapeInterval
				}
				if PodAnnotationScrapeInterval != "" {
					metric.Properties["PodAnnotationScrapeInterval"] = PodAnnotationScrapeInterval
				}
				if KappieBasicScrapeInterval != "" {
					metric.Properties["KappieBasicScrapeInterval"] = KappieBasicScrapeInterval
				}
				if AcstorCapacityProvisionerScrapeInterval != "" {
					metric.Properties["AcstorCapacityProvisionerScrapeInterval"] = AcstorCapacityProvisionerScrapeInterval
				}
				if AcstorMetricsExporterScrapeInterval != "" {
					metric.Properties["AcstorMetricsExporterScrapeInterval"] = AcstorMetricsExporterScrapeInterval
				}
				if NetworkObservabilityCiliumScrapeInterval != "" {
					metric.Properties["NetworkObservabilityCiliumScrapeInterval"] = NetworkObservabilityCiliumScrapeInterval
				}
				if NetworkObservabilityHubbleScrapeInterval != "" {
					metric.Properties["NetworkObservabilityHubbleScrapeInterval"] = NetworkObservabilityHubbleScrapeInterval
				}
				if NetworkObservabilityRetinaScrapeInterval != "" {
					metric.Properties["NetworkObservabilityRetinaScrapeInterval"] = NetworkObservabilityRetinaScrapeInterval
				}
			}

			TelemetryClient.Track(metric)

		}

		meMetricsProcessedCountMap = make(map[string]*meMetricsProcessedCount)

		meMetricsProcessedCountMapMutex.Unlock()

		//send meMetricsReceivedCount

		ref, ok := meMetricsReceivedCountMap["na"]

		if ok {
			meMetricsReceivedCountMapMutex.Lock()

			metric := appinsights.NewMetricTelemetry("meMetricsReceivedCount", ref.Value)
			TelemetryClient.Track(metric)
			meMetricsReceivedCountMap = make(map[string]*meMetricsReceivedCount)

			meMetricsReceivedCountMapMutex.Unlock()
		}
	}
}