@@ -852,75 +852,58 @@ func testK8sClusterReceiverMetrics(t *testing.T) {
852852 expectedMetrics , err := golden .ReadMetrics (expectedMetricsFile )
853853 require .NoError (t , err )
854854
855+ metricNames := []string {"k8s.node.condition_ready" , "k8s.namespace.phase" , "k8s.pod.phase" , "k8s.replicaset.desired" , "k8s.replicaset.available" , "k8s.daemonset.ready_nodes" , "k8s.daemonset.misscheduled_nodes" , "k8s.daemonset.desired_scheduled_nodes" , "k8s.daemonset.current_scheduled_nodes" , "k8s.container.ready" , "k8s.container.memory_request" , "k8s.container.memory_limit" , "k8s.container.cpu_request" , "k8s.container.cpu_limit" , "k8s.deployment.desired" , "k8s.deployment.available" , "k8s.container.restarts" , "k8s.container.cpu_request" , "k8s.container.memory_request" , "k8s.container.memory_limit" }
855856 replaceWithStar := func (string ) string { return "*" }
856857
857858 var selectedMetrics * pmetric.Metrics
858859 for h := len (metricsConsumer .AllMetrics ()) - 1 ; h >= 0 ; h -- {
859860 m := metricsConsumer .AllMetrics ()[h ]
860- foundCorrectSet := false
861- OUTER:
862- for i := 0 ; i < m .ResourceMetrics ().Len (); i ++ {
863- for j := 0 ; j < m .ResourceMetrics ().At (i ).ScopeMetrics ().Len (); j ++ {
864- for k := 0 ; k < m .ResourceMetrics ().At (i ).ScopeMetrics ().At (j ).Metrics ().Len (); k ++ {
865- metricToConsider := m .ResourceMetrics ().At (i ).ScopeMetrics ().At (j ).Metrics ().At (k )
866- if metricToConsider .Name () == "k8s.container.restarts" {
867- foundCorrectSet = true
868- break OUTER
869- }
870- }
871- }
872- }
873- if ! foundCorrectSet {
874- continue
875- }
876- if m .ResourceMetrics ().Len () == expectedMetrics .ResourceMetrics ().Len () && m .MetricCount () == expectedMetrics .MetricCount () {
861+
862+ err = pmetrictest .CompareMetrics (expectedMetrics , m ,
863+ pmetrictest .IgnoreTimestamp (),
864+ pmetrictest .IgnoreStartTimestamp (),
865+ pmetrictest .IgnoreMetricAttributeValue ("container.id" , metricNames ... ),
866+ pmetrictest .IgnoreMetricAttributeValue ("k8s.daemonset.uid" , metricNames ... ),
867+ pmetrictest .IgnoreMetricAttributeValue ("k8s.deployment.uid" , metricNames ... ),
868+ pmetrictest .IgnoreMetricAttributeValue ("k8s.pod.uid" , metricNames ... ),
869+ pmetrictest .IgnoreMetricAttributeValue ("k8s.pod.name" , metricNames ... ),
870+ pmetrictest .IgnoreMetricAttributeValue ("k8s.node.name" , metricNames ... ),
871+ pmetrictest .IgnoreMetricAttributeValue ("k8s.replicaset.uid" , metricNames ... ),
872+ pmetrictest .IgnoreMetricAttributeValue ("k8s.replicaset.name" , metricNames ... ),
873+ pmetrictest .IgnoreMetricAttributeValue ("k8s.namespace.uid" , metricNames ... ),
874+ pmetrictest .IgnoreMetricAttributeValue ("container.image.name" , metricNames ... ),
875+ pmetrictest .IgnoreMetricAttributeValue ("container.image.tag" , metricNames ... ),
876+ pmetrictest .IgnoreMetricAttributeValue ("k8s.node.uid" , metricNames ... ),
877+ pmetrictest .IgnoreMetricValues (metricNames ... ),
878+ pmetrictest .ChangeResourceAttributeValue ("k8s.deployment.name" , shortenNames ),
879+ pmetrictest .ChangeResourceAttributeValue ("k8s.pod.name" , shortenNames ),
880+ pmetrictest .ChangeResourceAttributeValue ("k8s.replicaset.name" , shortenNames ),
881+ pmetrictest .ChangeResourceAttributeValue ("k8s.deployment.uid" , replaceWithStar ),
882+ pmetrictest .ChangeResourceAttributeValue ("k8s.pod.uid" , replaceWithStar ),
883+ pmetrictest .ChangeResourceAttributeValue ("k8s.replicaset.uid" , replaceWithStar ),
884+ pmetrictest .ChangeResourceAttributeValue ("container.id" , replaceWithStar ),
885+ pmetrictest .ChangeResourceAttributeValue ("container.image.tag" , replaceWithStar ),
886+ pmetrictest .ChangeResourceAttributeValue ("k8s.node.uid" , replaceWithStar ),
887+ pmetrictest .ChangeResourceAttributeValue ("k8s.namespace.uid" , replaceWithStar ),
888+ pmetrictest .ChangeResourceAttributeValue ("k8s.daemonset.uid" , replaceWithStar ),
889+ pmetrictest .ChangeResourceAttributeValue ("container.image.name" , containerImageShorten ),
890+ pmetrictest .ChangeResourceAttributeValue ("container.id" , replaceWithStar ),
891+ pmetrictest .ChangeResourceAttributeValue ("host.name" , replaceWithStar ),
892+ pmetrictest .IgnoreScopeVersion (),
893+ pmetrictest .IgnoreResourceMetricsOrder (),
894+ pmetrictest .IgnoreMetricsOrder (),
895+ pmetrictest .IgnoreScopeMetricsOrder (),
896+ pmetrictest .IgnoreMetricDataPointsOrder (),
897+ pmetrictest .IgnoreSubsequentDataPoints ("k8s.container.ready" , "k8s.container.restarts" , "k8s.pod.phase" ),
898+ )
899+ if err == nil {
877900 selectedMetrics = & m
878901 break
879902 }
880903 }
881904 require .NotNil (t , selectedMetrics )
882-
883- metricNames := []string {"k8s.node.condition_ready" , "k8s.namespace.phase" , "k8s.pod.phase" , "k8s.replicaset.desired" , "k8s.replicaset.available" , "k8s.daemonset.ready_nodes" , "k8s.daemonset.misscheduled_nodes" , "k8s.daemonset.desired_scheduled_nodes" , "k8s.daemonset.current_scheduled_nodes" , "k8s.container.ready" , "k8s.container.memory_request" , "k8s.container.memory_limit" , "k8s.container.cpu_request" , "k8s.container.cpu_limit" , "k8s.deployment.desired" , "k8s.deployment.available" , "k8s.container.restarts" , "k8s.container.cpu_request" , "k8s.container.memory_request" , "k8s.container.memory_limit" }
884-
885- internal .MaybeUpdateExpectedMetricsResults (t , expectedMetricsFile , selectedMetrics )
886- err = pmetrictest .CompareMetrics (expectedMetrics , * selectedMetrics ,
887- pmetrictest .IgnoreTimestamp (),
888- pmetrictest .IgnoreStartTimestamp (),
889- pmetrictest .IgnoreMetricAttributeValue ("container.id" , metricNames ... ),
890- pmetrictest .IgnoreMetricAttributeValue ("k8s.daemonset.uid" , metricNames ... ),
891- pmetrictest .IgnoreMetricAttributeValue ("k8s.deployment.uid" , metricNames ... ),
892- pmetrictest .IgnoreMetricAttributeValue ("k8s.pod.uid" , metricNames ... ),
893- pmetrictest .IgnoreMetricAttributeValue ("k8s.pod.name" , metricNames ... ),
894- pmetrictest .IgnoreMetricAttributeValue ("k8s.node.name" , metricNames ... ),
895- pmetrictest .IgnoreMetricAttributeValue ("k8s.replicaset.uid" , metricNames ... ),
896- pmetrictest .IgnoreMetricAttributeValue ("k8s.replicaset.name" , metricNames ... ),
897- pmetrictest .IgnoreMetricAttributeValue ("k8s.namespace.uid" , metricNames ... ),
898- pmetrictest .IgnoreMetricAttributeValue ("container.image.name" , metricNames ... ),
899- pmetrictest .IgnoreMetricAttributeValue ("container.image.tag" , metricNames ... ),
900- pmetrictest .IgnoreMetricAttributeValue ("k8s.node.uid" , metricNames ... ),
901- pmetrictest .IgnoreMetricValues (metricNames ... ),
902- pmetrictest .ChangeResourceAttributeValue ("k8s.deployment.name" , shortenNames ),
903- pmetrictest .ChangeResourceAttributeValue ("k8s.pod.name" , shortenNames ),
904- pmetrictest .ChangeResourceAttributeValue ("k8s.replicaset.name" , shortenNames ),
905- pmetrictest .ChangeResourceAttributeValue ("k8s.deployment.uid" , replaceWithStar ),
906- pmetrictest .ChangeResourceAttributeValue ("k8s.pod.uid" , replaceWithStar ),
907- pmetrictest .ChangeResourceAttributeValue ("k8s.replicaset.uid" , replaceWithStar ),
908- pmetrictest .ChangeResourceAttributeValue ("container.id" , replaceWithStar ),
909- pmetrictest .ChangeResourceAttributeValue ("container.image.tag" , replaceWithStar ),
910- pmetrictest .ChangeResourceAttributeValue ("k8s.node.uid" , replaceWithStar ),
911- pmetrictest .ChangeResourceAttributeValue ("k8s.namespace.uid" , replaceWithStar ),
912- pmetrictest .ChangeResourceAttributeValue ("k8s.daemonset.uid" , replaceWithStar ),
913- pmetrictest .ChangeResourceAttributeValue ("container.image.name" , containerImageShorten ),
914- pmetrictest .ChangeResourceAttributeValue ("container.id" , replaceWithStar ),
915- pmetrictest .ChangeResourceAttributeValue ("host.name" , replaceWithStar ),
916- pmetrictest .IgnoreScopeVersion (),
917- pmetrictest .IgnoreResourceMetricsOrder (),
918- pmetrictest .IgnoreMetricsOrder (),
919- pmetrictest .IgnoreScopeMetricsOrder (),
920- pmetrictest .IgnoreMetricDataPointsOrder (),
921- pmetrictest .IgnoreSubsequentDataPoints ("k8s.container.ready" , "k8s.container.restarts" , "k8s.pod.phase" ),
922- )
923905 require .NoError (t , err )
906+ internal .MaybeUpdateExpectedMetricsResults (t , expectedMetricsFile , selectedMetrics )
924907}
925908
926909func testAgentLogs (t * testing.T ) {
0 commit comments