diff options
author | 2025-03-25 05:51:17 -0400 | |
---|---|---|
committer | 2025-03-25 18:59:06 +0000 | |
commit | fbd421eaa07ebf2296430732e9579cc486d89439 (patch) | |
tree | 9b85f448eb0c5efa3d89e85322a92301a743d4f6 /extras | |
parent | b1e2fc5b376da4859e994b9e6c914afd4c724019 (diff) |
hs-test: iperf and redis server logs
send output to a log file for iperf server and redis server
Type: test
Change-Id: I07a5222e4717eee9cac3aab5c9a1a324d843e3b5
Signed-off-by: Matus Fabian <matfabia@cisco.com>
Diffstat (limited to 'extras')
-rw-r--r-- | extras/hs-test/infra/suite_ldp.go | 5 | ||||
-rw-r--r-- | extras/hs-test/infra/suite_vpp_proxy.go | 1 | ||||
-rw-r--r-- | extras/hs-test/infra/utils.go | 32 | ||||
-rw-r--r-- | extras/hs-test/ldp_test.go | 4 | ||||
-rw-r--r-- | extras/hs-test/proxy_test.go | 2 |
5 files changed, 41 insertions, 3 deletions
diff --git a/extras/hs-test/infra/suite_ldp.go b/extras/hs-test/infra/suite_ldp.go index 408fea31325..53fe10086d0 100644 --- a/extras/hs-test/infra/suite_ldp.go +++ b/extras/hs-test/infra/suite_ldp.go @@ -97,6 +97,11 @@ func (s *LdpSuite) SetupTest() { } func (s *LdpSuite) TearDownTest() { + if CurrentSpecReport().Failed() { + s.CollectIperfLogs(s.Containers.ServerVpp) + s.CollectRedisServerLogs(s.Containers.ServerVpp) + } + for _, container := range s.StartedContainers { delete(container.EnvVars, "LD_PRELOAD") delete(container.EnvVars, "VCL_CONFIG") diff --git a/extras/hs-test/infra/suite_vpp_proxy.go b/extras/hs-test/infra/suite_vpp_proxy.go index 252d01eac9a..137bbb679d8 100644 --- a/extras/hs-test/infra/suite_vpp_proxy.go +++ b/extras/hs-test/infra/suite_vpp_proxy.go @@ -93,6 +93,7 @@ func (s *VppProxySuite) TearDownTest() { s.Log(vpp.Vppctl("show session verbose 2")) s.Log(vpp.Vppctl("show error")) s.CollectNginxLogs(s.Containers.NginxServerTransient) + s.CollectIperfLogs(s.Containers.IperfS) } s.HstSuite.TearDownTest() } diff --git a/extras/hs-test/infra/utils.go b/extras/hs-test/infra/utils.go index bd603f863fc..2f4328b4a74 100644 --- a/extras/hs-test/infra/utils.go +++ b/extras/hs-test/infra/utils.go @@ -18,6 +18,8 @@ import ( const networkTopologyDir string = "topo-network/" const containerTopologyDir string = "topo-containers/" const HttpCapsuleTypeDatagram = uint64(0) +const iperfLogFileName = "iperf.log" +const redisLogFileName = "redis-server.log" type Stanza struct { content string @@ -223,6 +225,36 @@ func (s *HstSuite) CollectEnvoyLogs(envoyContainer *Container) { } } +func (s *HstSuite) IperfLogFileName(serverContainer *Container) string { + return serverContainer.GetContainerWorkDir() + "/" + serverContainer.Name + "-" + iperfLogFileName +} + +func (s *HstSuite) CollectIperfLogs(serverContainer *Container) { + targetDir := serverContainer.Suite.getLogDirPath() + source := serverContainer.GetHostWorkDir() + "/" + serverContainer.Name + "-" + iperfLogFileName + cmd := exec.Command("cp", "-t", targetDir, source) + s.Log(cmd.String()) + err := cmd.Run() + if err != nil { + s.Log(fmt.Sprint(err)) + } +} + +func (s *HstSuite) RedisServerLogFileName(serverContainer *Container) string { + return serverContainer.GetContainerWorkDir() + "/" + serverContainer.Name + "-" + redisLogFileName +} + +func (s *HstSuite) CollectRedisServerLogs(serverContainer *Container) { + targetDir := serverContainer.Suite.getLogDirPath() + source := serverContainer.GetHostWorkDir() + "/" + serverContainer.Name + "-" + redisLogFileName + cmd := exec.Command("cp", "-t", targetDir, source) + s.Log(cmd.String()) + err := cmd.Run() + if err != nil { + s.Log(fmt.Sprint(err)) + } +} + func (s *HstSuite) StartIperfServerApp(running chan error, done chan struct{}, env []string) { cmd := exec.Command("iperf3", "-4", "-s", "-p", s.GetPortFromPpid()) if env != nil { diff --git a/extras/hs-test/ldp_test.go b/extras/hs-test/ldp_test.go index 3120f1c5813..1933b0b1e8e 100644 --- a/extras/hs-test/ldp_test.go +++ b/extras/hs-test/ldp_test.go @@ -54,7 +54,7 @@ func ldPreloadIperfVpp(s *LdpSuite, useUdp bool) { go func() { defer GinkgoRecover() - cmd := "iperf3 -4 -s -p " + s.GetPortFromPpid() + cmd := "iperf3 -4 -s -p " + s.GetPortFromPpid() + " --logfile " + s.IperfLogFileName(s.Containers.ServerVpp) s.StartServerApp(s.Containers.ServerVpp, "iperf3", cmd, srvCh, stopServerCh) }() @@ -90,7 +90,7 @@ func RedisBenchmarkTest(s *LdpSuite) { go func() { defer GinkgoRecover() - cmd := "redis-server --daemonize yes --protected-mode no --bind " + serverVethAddress + cmd := "redis-server --daemonize yes --protected-mode no --bind " + serverVethAddress + " --loglevel notice --logfile " + s.RedisServerLogFileName(s.Containers.ServerVpp) s.StartServerApp(s.Containers.ServerVpp, "redis-server", cmd, runningSrv, doneSrv) }() diff --git a/extras/hs-test/proxy_test.go b/extras/hs-test/proxy_test.go index 7a8d9d9b6fb..b6b4df5d0cd 100644 --- a/extras/hs-test/proxy_test.go +++ b/extras/hs-test/proxy_test.go @@ -93,7 +93,7 @@ func vppProxyIperfMTTest(s *VppProxySuite, proto string) { go func() { defer GinkgoRecover() - cmd := fmt.Sprintf("iperf3 -4 -s -B %s -p %s", s.ServerAddr(), fmt.Sprint(s.ServerPort())) + cmd := fmt.Sprintf("iperf3 -4 -s -B %s -p %s --logfile %s", s.ServerAddr(), fmt.Sprint(s.ServerPort()), s.IperfLogFileName(s.Containers.IperfS)) s.StartServerApp(s.Containers.IperfS, "iperf3", cmd, srvCh, stopServerCh) }() |