Merge pull request #34814 from Crassirostris/gcl-test-flakiness
Automatic merge from submit-queue Introduce additional debug logging to cluster logging tests @piosz
This commit is contained in:
commit
3e209aee7b
@ -72,6 +72,12 @@ var _ = framework.KubeDescribe("Cluster level logging using Elasticsearch [Featu
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if totalMissing > 0 {
|
||||||
|
if err := reportLogsFromFluentdPod(f); err != nil {
|
||||||
|
framework.Logf("Failed to report logs from fluentd pod due to %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Expect(totalMissing).To(Equal(0), "Some log lines are still missing")
|
Expect(totalMissing).To(Equal(0), "Some log lines are still missing")
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
@ -63,6 +63,12 @@ var _ = framework.KubeDescribe("Cluster level logging using GCL [Flaky]", func()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if totalMissing > 0 {
|
||||||
|
if err := reportLogsFromFluentdPod(f); err != nil {
|
||||||
|
framework.Logf("Failed to report logs from fluentd pod due to %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Expect(totalMissing).To(Equal(0), "Some log lines are still missing")
|
Expect(totalMissing).To(Equal(0), "Some log lines are still missing")
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
@ -17,10 +17,12 @@ limitations under the License.
|
|||||||
package e2e
|
package e2e
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
|
"k8s.io/kubernetes/pkg/labels"
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -57,3 +59,33 @@ func createSynthLogger(f *framework.Framework, linesCount int) {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func reportLogsFromFluentdPod(f *framework.Framework) error {
|
||||||
|
synthLoggerPod, err := f.PodClient().Get(synthLoggerPodName)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("Failed to get synth logger pod due to %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
synthLoggerNodeName := synthLoggerPod.Spec.NodeName
|
||||||
|
if synthLoggerNodeName == "" {
|
||||||
|
return errors.New("Synthlogger pod is not assigned to the node")
|
||||||
|
}
|
||||||
|
|
||||||
|
label := labels.SelectorFromSet(labels.Set(map[string]string{"k8s-app": "fluentd-logging"}))
|
||||||
|
options := api.ListOptions{LabelSelector: label}
|
||||||
|
fluentdPods, err := f.Client.Pods(api.NamespaceSystem).List(options)
|
||||||
|
|
||||||
|
for _, fluentdPod := range fluentdPods.Items {
|
||||||
|
if fluentdPod.Spec.NodeName == synthLoggerNodeName {
|
||||||
|
containerName := fluentdPod.Spec.Containers[0].Name
|
||||||
|
logs, err := framework.GetPodLogs(f.Client, api.NamespaceSystem, fluentdPod.Name, containerName)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("Failed to get logs from fluentd pod %s due to %v", fluentdPod.Name, err)
|
||||||
|
}
|
||||||
|
framework.Logf("Logs from fluentd pod %s:\n%s", fluentdPod.Name, logs)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return fmt.Errorf("Failed to find fluentd pod running on node %s", synthLoggerNodeName)
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user