Skip to content
This repository was archived by the owner on Sep 17, 2024. It is now read-only.

Commit 7882cd5

Browse files
committed
chore: log metricbeat container logs
It will happen if and only if the log level is DEBUG
1 parent ebc42f4 commit 7882cd5

2 files changed

Lines changed: 25 additions & 0 deletions

File tree

cli/services/manager.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import (
1515
type ServiceManager interface {
1616
AddServicesToCompose(stack string, composeNames []string, env map[string]string) error
1717
RemoveServicesFromCompose(stack string, composeNames []string, env map[string]string) error
18+
RunCommand(stack string, composeNames []string, composeArgs []string, env map[string]string) error
1819
RunCompose(isStack bool, composeNames []string, env map[string]string) error
1920
StopCompose(isStack bool, composeNames []string) error
2021
}
@@ -84,6 +85,11 @@ func (sm *DockerServiceManager) RemoveServicesFromCompose(stack string, composeN
8485
return nil
8586
}
8687

88+
// RunCommand executes a docker-compose command in a running a docker compose
89+
func (sm *DockerServiceManager) RunCommand(stack string, composeNames []string, composeArgs []string, env map[string]string) error {
90+
return executeCompose(sm, true, composeNames, composeArgs, env)
91+
}
92+
8793
// RunCompose runs a docker compose by its name
8894
func (sm *DockerServiceManager) RunCompose(isStack bool, composeNames []string, env map[string]string) error {
8995
return executeCompose(sm, isStack, composeNames, []string{"up", "-d"}, env)

e2e/metricbeat_test.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,25 @@ func (mts *MetricbeatTestSuite) runMetricbeatService() error {
297297
}).Info("Metricbeat is running")
298298
}
299299

300+
if log.IsLevelEnabled(log.DebugLevel) {
301+
composes := []string{
302+
"metricbeat", // stack name
303+
"metricbeat", // metricbeat service
304+
}
305+
306+
err = serviceManager.RunCommand("metricbeat", composes, []string{"logs", "metricbeat"}, env)
307+
if err != nil {
308+
log.WithFields(log.Fields{
309+
"error": err,
310+
"metricbeatVersion": mts.Version,
311+
"service": mts.ServiceName,
312+
"serviceVersion": mts.ServiceVersion,
313+
}).Error("Could not retrieve Metricbeat logs")
314+
315+
return err
316+
}
317+
}
318+
300319
return nil
301320
}
302321

0 commit comments

Comments
 (0)