feat: add audit and app log services
This commit is contained in:
@@ -37,6 +37,7 @@ func NewImageOptimizationService(store *SuiStore) *ImageOptimizationService {
|
||||
func (s *ImageOptimizationService) CreateTask(input models.ImageTaskInput) (models.ImageTaskDetail, error) {
|
||||
sourcePath := strings.TrimSpace(input.SourcePath)
|
||||
if sourcePath == "" {
|
||||
_ = recordAppLog(s.store, appLogLevelWarn, "image_optimization", "create task failed", errImageTaskSourcePathRequired.Error())
|
||||
return models.ImageTaskDetail{}, errImageTaskSourcePathRequired
|
||||
}
|
||||
|
||||
@@ -51,6 +52,7 @@ func (s *ImageOptimizationService) CreateTask(input models.ImageTaskInput) (mode
|
||||
|
||||
tx, err := s.store.DB.Begin()
|
||||
if err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "begin task transaction failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
defer func() {
|
||||
@@ -64,11 +66,13 @@ func (s *ImageOptimizationService) CreateTask(input models.ImageTaskInput) (mode
|
||||
VALUES (?, ?, ?, ?, '', ?, ?)
|
||||
`, sourcePath, imageTaskStatusSucceeded, operation, 1200, now, now)
|
||||
if err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "insert image task failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
|
||||
taskID, err := result.LastInsertId()
|
||||
if err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "read image task id failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
|
||||
@@ -78,18 +82,21 @@ func (s *ImageOptimizationService) CreateTask(input models.ImageTaskInput) (mode
|
||||
VALUES (?, ?, ?, ?, ?)
|
||||
`, taskID, outputPath, beforeSize, afterSize, now)
|
||||
if err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "insert image task result failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
|
||||
resultID, err := result.LastInsertId()
|
||||
if err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "read image task result id failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
if err = tx.Commit(); err != nil {
|
||||
_ = recordAppLog(s.store, appLogLevelError, "image_optimization", "commit image task failed", err.Error())
|
||||
return models.ImageTaskDetail{}, err
|
||||
}
|
||||
|
||||
return models.ImageTaskDetail{
|
||||
detail := models.ImageTaskDetail{
|
||||
Task: models.ImageTask{
|
||||
ID: taskID,
|
||||
SourcePath: sourcePath,
|
||||
@@ -108,7 +115,9 @@ func (s *ImageOptimizationService) CreateTask(input models.ImageTaskInput) (mode
|
||||
AfterSize: afterSize,
|
||||
CreatedAt: now,
|
||||
},
|
||||
}, nil
|
||||
}
|
||||
_ = recordAuditLog(s.store, currentAuditActor(s.store), auditActionImageTaskCreate, "image_task", fmt.Sprint(taskID), fmt.Sprintf("source=%s operation=%s", sourcePath, operation))
|
||||
return detail, nil
|
||||
}
|
||||
|
||||
func (s *ImageOptimizationService) ListTasks(filter models.ImageTaskFilter) ([]models.ImageTask, error) {
|
||||
|
||||
Reference in New Issue
Block a user