Skip to content

Commit 282507f

Browse files
authored
fix(provisionerd): add more detailed workspace build logging (#6331)
1 parent 50db90c commit 282507f

File tree

2 files changed

+32
-8
lines changed

2 files changed

+32
-8
lines changed

provisionerd/provisionerd.go

+17-5
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,23 @@ func (p *Server) acquireJob(ctx context.Context) {
345345
))
346346
defer span.End()
347347

348+
fields := []slog.Field{
349+
slog.F("initiator_username", job.UserName),
350+
slog.F("provisioner", job.Provisioner),
351+
slog.F("job_id", job.JobId),
352+
}
353+
348354
if build := job.GetWorkspaceBuild(); build != nil {
355+
fields = append(fields,
356+
slog.F("action", build.Metadata.WorkspaceTransition.String()),
357+
slog.F("owner_email", build.Metadata.WorkspaceOwnerEmail),
358+
slog.F("template_name", build.Metadata.TemplateName),
359+
slog.F("template_version", build.Metadata.TemplateVersion),
360+
slog.F("workspace_build_id", build.WorkspaceBuildId),
361+
slog.F("workspace_id", build.Metadata.WorkspaceId),
362+
slog.F("workspace_name", build.WorkspaceName),
363+
)
364+
349365
span.SetAttributes(
350366
attribute.String("workspace_build_id", build.WorkspaceBuildId),
351367
attribute.String("workspace_id", build.Metadata.WorkspaceId),
@@ -356,11 +372,7 @@ func (p *Server) acquireJob(ctx context.Context) {
356372
)
357373
}
358374

359-
p.opts.Logger.Info(ctx, "acquired job",
360-
slog.F("initiator_username", job.UserName),
361-
slog.F("provisioner", job.Provisioner),
362-
slog.F("job_id", job.JobId),
363-
)
375+
p.opts.Logger.Info(ctx, "acquired job", fields...)
364376

365377
provisioner, ok := p.opts.Provisioners[job.Provisioner]
366378
if !ok {

provisionerd/runner/runner.go

+15-3
Original file line numberDiff line numberDiff line change
@@ -115,13 +115,26 @@ func New(
115115
forceStopContext, forceStopFunc := context.WithCancel(ctx)
116116
gracefulContext, cancelFunc := context.WithCancel(forceStopContext)
117117

118+
logger := opts.Logger.With(slog.F("job_id", job.JobId))
119+
if build := job.GetWorkspaceBuild(); build != nil {
120+
logger = logger.With(
121+
slog.F("action", build.Metadata.WorkspaceTransition.String()),
122+
slog.F("owner_email", build.Metadata.WorkspaceOwnerEmail),
123+
slog.F("template_name", build.Metadata.TemplateName),
124+
slog.F("template_version", build.Metadata.TemplateVersion),
125+
slog.F("workspace_build_id", build.WorkspaceBuildId),
126+
slog.F("workspace_id", build.Metadata.WorkspaceId),
127+
slog.F("workspace_name", build.Metadata.WorkspaceName),
128+
)
129+
}
130+
118131
return &Runner{
119132
tracer: opts.Tracer,
120133
metrics: opts.Metrics,
121134
job: job,
122135
sender: opts.Updater,
123136
quotaCommitter: opts.QuotaCommitter,
124-
logger: opts.Logger.With(slog.F("job_id", job.JobId)),
137+
logger: logger,
125138
filesystem: opts.Filesystem,
126139
workDirectory: opts.WorkDirectory,
127140
provisioner: opts.Provisioner,
@@ -856,7 +869,7 @@ func (r *Runner) buildWorkspace(ctx context.Context, stage string, req *sdkproto
856869
}
857870
switch msgType := msg.Type.(type) {
858871
case *sdkproto.Provision_Response_Log:
859-
r.logger.Debug(context.Background(), "workspace provision job logged",
872+
r.logger.Info(context.Background(), "workspace provision job logged",
860873
slog.F("level", msgType.Log.Level),
861874
slog.F("output", msgType.Log.Output),
862875
slog.F("workspace_build_id", r.job.GetWorkspaceBuild().WorkspaceBuildId),
@@ -886,7 +899,6 @@ func (r *Runner) buildWorkspace(ctx context.Context, stage string, req *sdkproto
886899
}
887900
}
888901

889-
r.logger.Debug(context.Background(), "provision complete no error")
890902
r.logger.Info(context.Background(), "provision successful",
891903
slog.F("resource_count", len(msgType.Complete.Resources)),
892904
slog.F("resources", msgType.Complete.Resources),

0 commit comments

Comments
 (0)