Converting to structured logging the file app/file.go (#12124)

Этот коммит содержится в:
Nikhil Ranjan
2019-09-17 19:48:22 +02:00
коммит произвёл Christopher Poile
родитель 46c624f4f8
Коммит 86891091c0

Просмотреть файл

@@ -139,7 +139,11 @@ func (a *App) GetInfoForFilename(post *model.Post, teamId string, filename strin
// Find the path from the Filename of the form /{channelId}/{userId}/{uid}/{nameWithExtension} // Find the path from the Filename of the form /{channelId}/{userId}/{uid}/{nameWithExtension}
split := strings.SplitN(filename, "/", 5) split := strings.SplitN(filename, "/", 5)
if len(split) < 5 { if len(split) < 5 {
mlog.Error("Unable to decipher filename when migrating post to use FileInfos", mlog.String("post_id", post.Id), mlog.String("filename", filename)) mlog.Error(
"Unable to decipher filename when migrating post to use FileInfos",
mlog.String("post_id", post.Id),
mlog.String("filename", filename),
)
return nil return nil
} }
@@ -176,9 +180,10 @@ func (a *App) GetInfoForFilename(post *model.Post, teamId string, filename strin
info, err := model.GetInfoForBytes(name, data) info, err := model.GetInfoForBytes(name, data)
if err != nil { if err != nil {
mlog.Warn( mlog.Warn(
fmt.Sprintf("Unable to fully decode file info when migrating post to use FileInfos, err=%v", err), "Unable to fully decode file info when migrating post to use FileInfos",
mlog.String("post_id", post.Id), mlog.String("post_id", post.Id),
mlog.String("filename", filename), mlog.String("filename", filename),
mlog.Err(err),
) )
} }
@@ -207,7 +212,7 @@ func (a *App) FindTeamIdForFilename(post *model.Post, filename string) string {
// This post is in a direct channel so we need to figure out what team the files are stored under. // This post is in a direct channel so we need to figure out what team the files are stored under.
teams, err := a.Srv.Store.Team().GetTeamsByUserId(post.UserId) teams, err := a.Srv.Store.Team().GetTeamsByUserId(post.UserId)
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to get teams when migrating post to use FileInfo, err=%v", err), mlog.String("post_id", post.Id)) mlog.Error("Unable to get teams when migrating post to use FileInfo", mlog.Err(err), mlog.String("post_id", post.Id))
return "" return ""
} }
@@ -241,9 +246,10 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
filenames := utils.RemoveDuplicatesFromStringArray(post.Filenames) filenames := utils.RemoveDuplicatesFromStringArray(post.Filenames)
if errCh != nil { if errCh != nil {
mlog.Error( mlog.Error(
fmt.Sprintf("Unable to get channel when migrating post to use FileInfos, err=%v", errCh), "Unable to get channel when migrating post to use FileInfos",
mlog.String("post_id", post.Id), mlog.String("post_id", post.Id),
mlog.String("channel_id", post.ChannelId), mlog.String("channel_id", post.ChannelId),
mlog.Err(errCh),
) )
return []*model.FileInfo{} return []*model.FileInfo{}
} }
@@ -261,7 +267,8 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
infos := make([]*model.FileInfo, 0, len(filenames)) infos := make([]*model.FileInfo, 0, len(filenames))
if teamId == "" { if teamId == "" {
mlog.Error( mlog.Error(
fmt.Sprintf("Unable to find team id for files when migrating post to use FileInfos, filenames=%v", filenames), "Unable to find team id for files when migrating post to use FileInfos",
mlog.String("filenames", strings.Join(filenames, ",")),
mlog.String("post_id", post.Id), mlog.String("post_id", post.Id),
) )
} else { } else {
@@ -281,7 +288,7 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
result, err := a.Srv.Store.Post().Get(post.Id, false) result, err := a.Srv.Store.Post().Get(post.Id, false)
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to get post when migrating post to use FileInfos, err=%v", err), mlog.String("post_id", post.Id)) mlog.Error("Unable to get post when migrating post to use FileInfos", mlog.Err(err), mlog.String("post_id", post.Id))
return []*model.FileInfo{} return []*model.FileInfo{}
} }
@@ -290,7 +297,7 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
var fileInfos []*model.FileInfo var fileInfos []*model.FileInfo
fileInfos, err = a.Srv.Store.FileInfo().GetForPost(post.Id, true, false, false) fileInfos, err = a.Srv.Store.FileInfo().GetForPost(post.Id, true, false, false)
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to get FileInfos for migrated post, err=%v", err), mlog.String("post_id", post.Id)) mlog.Error("Unable to get FileInfos for migrated post", mlog.Err(err), mlog.String("post_id", post.Id))
return []*model.FileInfo{} return []*model.FileInfo{}
} }
@@ -305,10 +312,11 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
for _, info := range infos { for _, info := range infos {
if _, err = a.Srv.Store.FileInfo().Save(info); err != nil { if _, err = a.Srv.Store.FileInfo().Save(info); err != nil {
mlog.Error( mlog.Error(
fmt.Sprintf("Unable to save file info when migrating post to use FileInfos, err=%v", err), "Unable to save file info when migrating post to use FileInfos",
mlog.String("post_id", post.Id), mlog.String("post_id", post.Id),
mlog.String("file_info_id", info.Id), mlog.String("file_info_id", info.Id),
mlog.String("file_info_path", info.Path), mlog.String("file_info_path", info.Path),
mlog.Err(err),
) )
continue continue
} }
@@ -326,7 +334,13 @@ func (a *App) MigrateFilenamesToFileInfos(post *model.Post) []*model.FileInfo {
// Update Posts to clear Filenames and set FileIds // Update Posts to clear Filenames and set FileIds
if _, err = a.Srv.Store.Post().Update(newPost, post); err != nil { if _, err = a.Srv.Store.Post().Update(newPost, post); err != nil {
mlog.Error(fmt.Sprintf("Unable to save migrated post when migrating to use FileInfos, new_file_ids=%v, old_filenames=%v, err=%v", newPost.FileIds, post.Filenames, err), mlog.String("post_id", post.Id)) mlog.Error(
"Unable to save migrated post when migrating to use FileInfos",
mlog.String("new_file_ids", strings.Join(newPost.FileIds, ",")),
mlog.String("old_filenames", strings.Join(post.Filenames, ",")),
mlog.String("post_id", post.Id),
mlog.Err(err),
)
return []*model.FileInfo{} return []*model.FileInfo{}
} }
return savedInfos return savedInfos
@@ -755,7 +769,7 @@ func (t *uploadFileTask) postprocessImage() {
var err error var err error
decoded, typ, err = image.Decode(t.newReader()) decoded, typ, err = image.Decode(t.newReader())
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to decode image err=%v", err)) mlog.Error("Unable to decode image", mlog.Err(err))
return return
} }
} }
@@ -779,14 +793,14 @@ func (t *uploadFileTask) postprocessImage() {
go func() { go func() {
_, aerr := t.writeFile(r, path) _, aerr := t.writeFile(r, path)
if aerr != nil { if aerr != nil {
mlog.Error(fmt.Sprintf("Unable to upload path=%v err=%v", path, aerr)) mlog.Error("Unable to upload", mlog.String("path", path), mlog.Err(aerr))
return return
} }
}() }()
err := jpeg.Encode(w, img, &jpeg.Options{Quality: 90}) err := jpeg.Encode(w, img, &jpeg.Options{Quality: 90})
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to encode image as jpeg path=%v err=%v", path, err)) mlog.Error("Unable to encode image as jpeg", mlog.String("path", path), mlog.Err(err))
w.CloseWithError(err) w.CloseWithError(err)
} else { } else {
w.Close() w.Close()
@@ -959,7 +973,7 @@ func prepareImage(fileData []byte) (image.Image, int, int) {
// Decode image bytes into Image object // Decode image bytes into Image object
img, imgType, err := image.Decode(bytes.NewReader(fileData)) img, imgType, err := image.Decode(bytes.NewReader(fileData))
if err != nil { if err != nil {
mlog.Error(fmt.Sprintf("Unable to decode image err=%v", err)) mlog.Error("Unable to decode image", mlog.Err(err))
return nil, 0, 0 return nil, 0, 0
} }
@@ -1038,12 +1052,12 @@ func (a *App) generateThumbnailImage(img image.Image, thumbnailPath string, widt
buf := new(bytes.Buffer) buf := new(bytes.Buffer)
if err := jpeg.Encode(buf, thumbnail, &jpeg.Options{Quality: 90}); err != nil { if err := jpeg.Encode(buf, thumbnail, &jpeg.Options{Quality: 90}); err != nil {
mlog.Error(fmt.Sprintf("Unable to encode image as jpeg path=%v err=%v", thumbnailPath, err)) mlog.Error("Unable to encode image as jpeg", mlog.String("path", thumbnailPath), mlog.Err(err))
return return
} }
if _, err := a.WriteFile(buf, thumbnailPath); err != nil { if _, err := a.WriteFile(buf, thumbnailPath); err != nil {
mlog.Error(fmt.Sprintf("Unable to upload thumbnail path=%v err=%v", thumbnailPath, err)) mlog.Error("Unable to upload thumbnail", mlog.String("path", thumbnailPath), mlog.Err(err))
return return
} }
} }
@@ -1060,12 +1074,12 @@ func (a *App) generatePreviewImage(img image.Image, previewPath string, width in
buf := new(bytes.Buffer) buf := new(bytes.Buffer)
if err := jpeg.Encode(buf, preview, &jpeg.Options{Quality: 90}); err != nil { if err := jpeg.Encode(buf, preview, &jpeg.Options{Quality: 90}); err != nil {
mlog.Error(fmt.Sprintf("Unable to encode image as preview jpg err=%v", err), mlog.String("path", previewPath)) mlog.Error("Unable to encode image as preview jpg", mlog.Err(err), mlog.String("path", previewPath))
return return
} }
if _, err := a.WriteFile(buf, previewPath); err != nil { if _, err := a.WriteFile(buf, previewPath); err != nil {
mlog.Error(fmt.Sprintf("Unable to upload preview err=%v", err), mlog.String("path", previewPath)) mlog.Error("Unable to upload preview", mlog.Err(err), mlog.String("path", previewPath))
return return
} }
} }