Skip to content

Commit 08cb7d1

Browse files
committed
refactor: use constants for component logger names
Switches to using constants for and centralizes all of the component names. This will make it easier to keep the component list in our docs up-to-date.
1 parent a356068 commit 08cb7d1

File tree

13 files changed

+39
-19
lines changed

13 files changed

+39
-19
lines changed

docs/installation/configuration.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,10 @@ This is the current list of components that can be configured in the `logging.co
6363
- `api_server`
6464
- `election_candidate`
6565
- `embedded_etcd`
66-
- `remote_etcd`
6766
- `migration`
6867
- `migration_runner`
68+
- `ports_service`
69+
- `remote_etcd`
6970
- `scheduler_service`
71+
- `workflows_backend`
7072
- `workflows_worker`
71-
- `ports_service`

server/internal/api/server.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func NewServer(
4646
// Mount all the v1 handlers
4747
v1Svc.Mount(mux)
4848

49-
logger := loggerFactory.Logger("api_server")
49+
logger := loggerFactory.Logger(logging.ComponentAPIServer)
5050
handler := addMiddleware(logger, mux)
5151

5252
var (

server/internal/election/candidate.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ func NewCandidate(
5151
) *Candidate {
5252
return &Candidate{
5353
store: store,
54-
logger: loggerFactory.Logger("election_candidate").With().
54+
logger: loggerFactory.Logger(logging.ComponentElectionCandidate).With().
5555
Stringer("election_name", electionName).
5656
Str("candidate_id", candidateID).
5757
Logger(),

server/internal/etcd/embedded.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ func NewEmbeddedEtcd(cfg *config.Manager, loggerFactory *logging.Factory) *Embed
4949
return &EmbeddedEtcd{
5050
cfg: cfg,
5151
initialized: make(chan struct{}),
52-
logger: loggerFactory.Logger("embedded_etcd"),
52+
logger: loggerFactory.Logger(logging.ComponentEmbeddedEtcd),
5353
loggerFactory: loggerFactory,
5454
}
5555
}

server/internal/etcd/logging.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ func newZapLogger(base zerolog.Logger, logLevel, component string) (*zap.Logger,
1717
core := zerozap.New(base.
1818
Level(level).
1919
With().
20-
Str("component", component).
20+
Str("etcd_component", component).
2121
Logger())
2222
return zap.New(core), nil
2323
}

server/internal/etcd/remote.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func NewRemoteEtcd(cfg *config.Manager, loggerFactory *logging.Factory) *RemoteE
3838
cfg: cfg,
3939
initialized: make(chan struct{}),
4040
err: make(chan error),
41-
logger: loggerFactory.Logger("remote_etcd"),
41+
logger: loggerFactory.Logger(logging.ComponentRemoteEtcd),
4242
loggerFactory: loggerFactory,
4343
}
4444
}

server/internal/logging/factory.go

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,39 @@ import (
88
"github.com/pgEdge/control-plane/server/internal/config"
99
)
1010

11+
type Component string
12+
13+
func (c Component) String() string {
14+
return string(c)
15+
}
16+
17+
const (
18+
ComponentAPIServer Component = "api_server"
19+
ComponentElectionCandidate Component = "election_candidate"
20+
ComponentEmbeddedEtcd Component = "embedded_etcd"
21+
ComponentMigration Component = "migration"
22+
ComponentMigrationRunner Component = "migration_runner"
23+
ComponentPortsService Component = "ports_service"
24+
ComponentRemoteEtcd Component = "remote_etcd"
25+
ComponentSchedulerService Component = "scheduler_service"
26+
ComponentWorkflowsBackend Component = "workflows_backend"
27+
ComponentWorkflowsWorker Component = "workflows_worker"
28+
)
29+
1130
type Factory struct {
1231
base zerolog.Logger
13-
componentLevels map[string]zerolog.Level
32+
componentLevels map[Component]zerolog.Level
1433
}
1534

1635
func NewFactory(cfg config.Config, base zerolog.Logger) (*Factory, error) {
17-
componentLevels := map[string]zerolog.Level{}
36+
componentLevels := map[Component]zerolog.Level{}
1837

1938
for component, l := range cfg.Logging.ComponentLevels {
2039
level, err := zerolog.ParseLevel(l)
2140
if err != nil {
2241
return nil, fmt.Errorf("failed to parse level for component '%s': %w", component, err)
2342
}
24-
componentLevels[component] = level
43+
componentLevels[Component(component)] = level
2544
}
2645

2746
return &Factory{
@@ -30,12 +49,12 @@ func NewFactory(cfg config.Config, base zerolog.Logger) (*Factory, error) {
3049
}, nil
3150
}
3251

33-
func (f *Factory) Logger(component string) zerolog.Logger {
52+
func (f *Factory) Logger(component Component) zerolog.Logger {
3453
logger := f.base
3554
level, ok := f.componentLevels[component]
3655
if ok {
3756
logger = logger.Level(level)
3857
}
3958

40-
return logger.With().Str("component", component).Logger()
59+
return logger.With().Stringer("component", component).Logger()
4160
}

server/internal/migrate/migrations/add_task_scope.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ func (a *AddTaskScope) Run(ctx context.Context, i *do.Injector) error {
4040
return fmt.Errorf("failed to initialize task store: %w", err)
4141
}
4242

43-
logger := loggerFactory.Logger("migration").With().
43+
logger := loggerFactory.Logger(logging.ComponentMigration).With().
4444
Str("identifier", a.Identifier()).
4545
Logger()
4646

server/internal/migrate/runner.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ func NewRunner(
4848
hostID: hostID,
4949
store: store,
5050
injector: injector,
51-
logger: loggerFactory.Logger("migration_runner"),
51+
logger: loggerFactory.Logger(logging.ComponentMigrationRunner),
5252
migrations: migrations,
5353
candidate: candidate,
5454
errCh: make(chan error, 1),

server/internal/ports/service.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func NewService(
5656
) *Service {
5757
return &Service{
5858
cfg: cfg,
59-
logger: loggerFactory.Logger("ports_service"),
59+
logger: loggerFactory.Logger(logging.ComponentPortsService),
6060
store: store,
6161
portChecker: portChecker,
6262
hostSvc: hostSvc,

0 commit comments

Comments
 (0)