Skip to content

Commit c60cabc

Browse files
committed
added ordering of subjecttypes on logging the actor
1 parent 4ecaf83 commit c60cabc

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

coderd/httpmw/loggermw/logger.go

+22-3
Original file line numberDiff line numberDiff line change
@@ -111,16 +111,35 @@ func (c *SlogRequestLogger) addAuthContextFields() {
111111
slog.F("requestor_name", usr.FriendlyName),
112112
slog.F("requestor_email", usr.Email),
113113
)
114-
} else if len(c.actors) > 0 {
115-
for _, v := range c.actors {
114+
} else {
115+
// If there is no user, we log the requestor name for the first
116+
// actor in a defined order.
117+
for _, v := range actorLogOrder {
118+
subj, ok := c.actors[v]
119+
if !ok {
120+
continue
121+
}
116122
c.log = c.log.With(
117-
slog.F("requestor_name", v.FriendlyName),
123+
slog.F("requestor_name", subj.FriendlyName),
118124
)
119125
break
120126
}
121127
}
122128
}
123129

130+
var actorLogOrder = []rbac.SubjectType{
131+
rbac.SubjectTypeAutostart,
132+
rbac.SubjectTypeCryptoKeyReader,
133+
rbac.SubjectTypeCryptoKeyRotator,
134+
rbac.SubjectTypeHangDetector,
135+
rbac.SubjectTypeNotifier,
136+
rbac.SubjectTypePrebuildsOrchestrator,
137+
rbac.SubjectTypeProvisionerd,
138+
rbac.SubjectTypeResourceMonitor,
139+
rbac.SubjectTypeSystemRestricted,
140+
rbac.SubjectTypeSystemReadProvisionerDaemons,
141+
}
142+
124143
func (c *SlogRequestLogger) WriteLog(ctx context.Context, status int) {
125144
if c.written {
126145
return

0 commit comments

Comments
 (0)