diff --git a/commands/provider/service_provider.go b/commands/provider/service_provider.go index 300c948f1..3defd10dd 100644 --- a/commands/provider/service_provider.go +++ b/commands/provider/service_provider.go @@ -12,6 +12,7 @@ import ( "github.com/mesg-foundation/core/commands/provider/assets" "github.com/mesg-foundation/core/protobuf/acknowledgement" "github.com/mesg-foundation/core/protobuf/coreapi" + "github.com/mesg-foundation/core/service" "github.com/mesg-foundation/core/service/importer" "github.com/mesg-foundation/core/utils/chunker" "github.com/mesg-foundation/core/utils/pretty" @@ -117,6 +118,7 @@ func (p *ServiceProvider) ServiceLogs(id string, dependencies ...string) (logs [ if err != nil { return nil, nil, nil, err } + dependencies = append(dependencies, service.MainServiceKey) for _, dep := range resp.Service.Definition.Dependencies { dependencies = append(dependencies, dep.Key) } diff --git a/commands/service_logs.go b/commands/service_logs.go index 4b517df10..1de719c94 100644 --- a/commands/service_logs.go +++ b/commands/service_logs.go @@ -7,6 +7,7 @@ import ( "strings" "github.com/mesg-foundation/core/commands/provider" + "github.com/mesg-foundation/core/service" "github.com/mesg-foundation/core/utils/pretty" "github.com/mesg-foundation/core/x/xsignal" "github.com/mesg-foundation/core/x/xstrings" @@ -69,6 +70,7 @@ func showLogs(e ServiceExecutor, serviceID string, dependencies ...string) (clos // if there was no dependencies copy all returned // by service logs. if len(dependencies) == 0 { + dependencies = append(dependencies, service.MainServiceKey) for _, log := range logs { dependencies = append(dependencies, log.Dependency) } diff --git a/service/logs.go b/service/logs.go index e941812e5..1380018a3 100644 --- a/service/logs.go +++ b/service/logs.go @@ -21,18 +21,29 @@ func (s *Service) Logs(c container.Container, dependencies ...string) ([]*Log, e logs []*Log isNoFilter = len(dependencies) == 0 ) - for _, dep := range s.Dependencies { - if isNoFilter || xstrings.SliceContains(dependencies, dep.Key) { + addLog := func(dep *Dependency, name string) error { + if isNoFilter || xstrings.SliceContains(dependencies, name) { rstd, rerr, err := dep.Logs(c, s.namespace()) if err != nil { - return nil, err + return err } logs = append(logs, &Log{ - Dependency: dep.Key, + Dependency: name, Standard: rstd, Error: rerr, }) } + return nil + } + if s.Configuration != nil { + if err := addLog(s.Configuration, MainServiceKey); err != nil { + return nil, err + } + } + for _, dep := range s.Dependencies { + if err := addLog(dep, dep.Key); err != nil { + return nil, err + } } return logs, nil }