fix: resolve empty configs logging

This commit is contained in:
2026-03-23 22:13:19 +01:00
parent 908adf4468
commit 0e04da031b
6 changed files with 52 additions and 48 deletions

View File

@@ -57,6 +57,9 @@ func BuildConfigDetails(file string, oldJSON, newJSON []byte) string {
}
}
if len(changedKeys) == 0 {
return ""
}
keysJSON, _ := json.Marshal(changedKeys)
return fmt.Sprintf(`{"file":%q,"changed_keys":%s}`, file, string(keysJSON))
}

View File

@@ -157,16 +157,17 @@ func (as *ConfigService) UpdateAllConfigs(ctx *fiber.Ctx, req *model.Configurati
results = append(results, result)
if as.activityLog != nil {
details := BuildConfigDetails(entry.fileName, oldDataUTF8, newData)
go func(details string) {
_ = as.activityLog.Log(context.Background(), &model.ActivityLog{
ServerID: serverUUID,
UserID: actorID,
Username: actorUsername,
Action: model.ActionConfigUpdate,
Details: details,
})
}(details)
if details := BuildConfigDetails(entry.fileName, oldDataUTF8, newData); details != "" {
go func(details string) {
_ = as.activityLog.Log(context.Background(), &model.ActivityLog{
ServerID: serverUUID,
UserID: actorID,
Username: actorUsername,
Action: model.ActionConfigUpdate,
Details: details,
})
}(details)
}
}
}
@@ -281,16 +282,17 @@ func (as *ConfigService) updateConfigInternal(ctx context.Context, serverID stri
as.serverService.StartAccServerRuntime(server)
if as.activityLog != nil {
details := BuildConfigDetails(configFile, oldDataUTF8, newData)
go func() {
_ = as.activityLog.Log(context.Background(), &model.ActivityLog{
ServerID: serverUUID,
UserID: actorID,
Username: actorUsername,
Action: model.ActionConfigUpdate,
Details: details,
})
}()
if details := BuildConfigDetails(configFile, oldDataUTF8, newData); details != "" {
go func() {
_ = as.activityLog.Log(context.Background(), &model.ActivityLog{
ServerID: serverUUID,
UserID: actorID,
Username: actorUsername,
Action: model.ActionConfigUpdate,
Details: details,
})
}()
}
}
return as.repository.UpdateConfig(ctx, &model.Config{