mirror of
https://github.com/woodchen-ink/webp_server_go.git
synced 2025-07-18 05:32:02 +08:00
refactor(encoder): remove logging for image conversion and processing
This commit is contained in:
parent
83d6196460
commit
85a4096ffc
@ -171,7 +171,7 @@ func convertImage(rawPath, optimizedPath, imageType string, extraParams config.E
|
|||||||
}
|
}
|
||||||
|
|
||||||
if convertedInfo.Size() > originalInfo.Size() {
|
if convertedInfo.Size() > originalInfo.Size() {
|
||||||
log.Infof("转换后的图片大于原图,使用原图: %s", rawPath)
|
// log.Infof("转换后的图片大于原图,使用原图: %s", rawPath)
|
||||||
// 删除转换后的大文件
|
// 删除转换后的大文件
|
||||||
if err := os.Remove(optimizedPath); err != nil {
|
if err := os.Remove(optimizedPath); err != nil {
|
||||||
log.Warnf("删除大的转换文件失败: %v", err)
|
log.Warnf("删除大的转换文件失败: %v", err)
|
||||||
@ -180,7 +180,7 @@ func convertImage(rawPath, optimizedPath, imageType string, extraParams config.E
|
|||||||
return helper.CopyFile(rawPath, optimizedPath)
|
return helper.CopyFile(rawPath, optimizedPath)
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Infof("图像处理成功: 目标文件=%s", optimizedPath)
|
// log.Infof("图像处理成功: 目标文件=%s", optimizedPath)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,7 +219,7 @@ func jxlEncoder(img *vips.ImageRef, rawPath string, optimizedPath string) error
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
convertLog("JXL", rawPath, optimizedPath, quality)
|
// convertLog("JXL", rawPath, optimizedPath, quality)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -254,7 +254,7 @@ func avifEncoder(img *vips.ImageRef, rawPath string, optimizedPath string) error
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
convertLog("AVIF", rawPath, optimizedPath, quality)
|
// convertLog("AVIF", rawPath, optimizedPath, quality)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -306,28 +306,28 @@ func webpEncoder(img *vips.ImageRef, rawPath string, optimizedPath string) error
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
convertLog("WebP", rawPath, optimizedPath, quality)
|
// convertLog("WebP", rawPath, optimizedPath, quality)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func convertLog(itype, rawPath string, optimizedPath string, quality int) {
|
// func convertLog(itype, rawPath string, optimizedPath string, quality int) {
|
||||||
oldf, err := os.Stat(rawPath)
|
// oldf, err := os.Stat(rawPath)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
log.Error(err)
|
// log.Error(err)
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
|
|
||||||
newf, err := os.Stat(optimizedPath)
|
// newf, err := os.Stat(optimizedPath)
|
||||||
if err != nil {
|
// if err != nil {
|
||||||
log.Error(err)
|
// log.Error(err)
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 计算压缩率
|
// // 计算压缩率
|
||||||
deflateRate := float32(newf.Size()) / float32(oldf.Size()) * 100
|
// deflateRate := float32(newf.Size()) / float32(oldf.Size()) * 100
|
||||||
|
|
||||||
// 记录转换信息
|
// // 记录转换信息
|
||||||
log.Infof("图像转换: 类型=%s, 质量=%d%%", itype, quality)
|
// log.Infof("图像转换: 类型=%s, 质量=%d%%", itype, quality)
|
||||||
log.Infof("文件路径: 原始=%s, 优化=%s", rawPath, optimizedPath)
|
// log.Infof("文件路径: 原始=%s, 优化=%s", rawPath, optimizedPath)
|
||||||
log.Infof("文件大小: 原始=%d字节, 优化=%d字节, 压缩率=%.2f%%", oldf.Size(), newf.Size(), deflateRate)
|
// log.Infof("文件大小: 原始=%d字节, 优化=%d字节, 压缩率=%.2f%%", oldf.Size(), newf.Size(), deflateRate)
|
||||||
}
|
// }
|
||||||
|
@ -230,12 +230,12 @@ func preProcessImage(img *vips.ImageRef, imageType string, extraParams config.Ex
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Debug("图像预处理完成")
|
// log.Debug("图像预处理完成")
|
||||||
return shouldCopyOriginal, nil
|
return shouldCopyOriginal, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func ProcessAndSaveImage(rawImageAbs, exhaustFilename string, extraParams config.ExtraParams) error {
|
func ProcessAndSaveImage(rawImageAbs, exhaustFilename string, extraParams config.ExtraParams) error {
|
||||||
log.Infof("开始处理图像: 源文件=%s, 目标文件=%s", rawImageAbs, exhaustFilename)
|
// log.Infof("开始处理图像: 源文件=%s, 目标文件=%s", rawImageAbs, exhaustFilename)
|
||||||
|
|
||||||
// 创建目标目录
|
// 创建目标目录
|
||||||
if err := os.MkdirAll(path.Dir(exhaustFilename), 0755); err != nil {
|
if err := os.MkdirAll(path.Dir(exhaustFilename), 0755); err != nil {
|
||||||
@ -333,9 +333,9 @@ func ProcessAndSaveImage(rawImageAbs, exhaustFilename string, extraParams config
|
|||||||
log.Errorf("复制原图到 EXHAUST_PATH 失败: %v", err)
|
log.Errorf("复制原图到 EXHAUST_PATH 失败: %v", err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
log.Infof("成功将原图复制到 EXHAUST_PATH: %s", exhaustFilename)
|
// log.Infof("成功将原图复制到 EXHAUST_PATH: %s", exhaustFilename)
|
||||||
} else {
|
} else {
|
||||||
log.Infof("图像处理成功: 目标文件=%s", exhaustFilename)
|
// log.Infof("图像处理成功: 目标文件=%s", exhaustFilename)
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
@ -65,18 +65,18 @@ func downloadFile(filepath string, url string) error {
|
|||||||
return fmt.Errorf("写入文件时发生错误")
|
return fmt.Errorf("写入文件时发生错误")
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Infof("文件下载成功。上游链接: %s, 保存路径: %s", url, filepath)
|
// log.Infof("文件下载成功")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func fetchRemoteImg(url, subdir string) (string, bool, error) {
|
func fetchRemoteImg(url, subdir string) (string, bool, error) {
|
||||||
log.Infof("正在获取远程图像: %s", url)
|
// log.Infof("正在获取远程图像: %s", url)
|
||||||
|
|
||||||
fileName := helper.HashString(url)
|
fileName := helper.HashString(url)
|
||||||
localRawImagePath := path.Join(config.Config.RemoteRawPath, subdir, fileName)
|
localRawImagePath := path.Join(config.Config.RemoteRawPath, subdir, fileName)
|
||||||
|
|
||||||
if helper.FileExists(localRawImagePath) {
|
if helper.FileExists(localRawImagePath) {
|
||||||
log.Infof("远程图像已存在于本地: %s", localRawImagePath)
|
// log.Infof("远程图像已存在于本地: %s", localRawImagePath)
|
||||||
return localRawImagePath, false, nil
|
return localRawImagePath, false, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,7 +86,7 @@ func fetchRemoteImg(url, subdir string) (string, bool, error) {
|
|||||||
return "", false, fmt.Errorf("下载远程图像失败")
|
return "", false, fmt.Errorf("下载远程图像失败")
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Infof("成功获取远程图像: %s", localRawImagePath)
|
// log.Infof("成功获取远程图像")
|
||||||
return localRawImagePath, true, nil
|
return localRawImagePath, true, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -42,18 +42,18 @@ func Convert(c *gin.Context) {
|
|||||||
filename = path.Base(reqURI)
|
filename = path.Base(reqURI)
|
||||||
)
|
)
|
||||||
|
|
||||||
log.Debugf("Incoming connection from %s %s", c.ClientIP(), reqURIwithQuery)
|
log.Debugf("传入连接来自 %s %s", c.ClientIP(), reqURIwithQuery)
|
||||||
|
|
||||||
// 首先检查是否为图片文件
|
// 首先检查是否为图片文件
|
||||||
if !isImageFile(filename) {
|
if !isImageFile(filename) {
|
||||||
log.Infof("Non-image file requested: %s", reqURI)
|
log.Infof("请求非图像文件: %s", reqURI)
|
||||||
handleNonImageFile(c, reqURI)
|
handleNonImageFile(c, reqURI)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 检查文件类型是否允许
|
// 检查文件类型是否允许
|
||||||
if !helper.CheckAllowedType(filename) {
|
if !helper.CheckAllowedType(filename) {
|
||||||
msg := "File extension not allowed! " + filename
|
msg := "不允许文件扩展名! " + filename
|
||||||
log.Warn(msg)
|
log.Warn(msg)
|
||||||
c.String(400, msg)
|
c.String(400, msg)
|
||||||
return
|
return
|
||||||
@ -65,7 +65,7 @@ func Convert(c *gin.Context) {
|
|||||||
// 检查路径是否匹配 IMG_MAP 中的任何前缀
|
// 检查路径是否匹配 IMG_MAP 中的任何前缀
|
||||||
matchedPrefix, matchedTarget := findMatchingPrefix(reqURI)
|
matchedPrefix, matchedTarget := findMatchingPrefix(reqURI)
|
||||||
if matchedPrefix == "" {
|
if matchedPrefix == "" {
|
||||||
log.Warnf("请求的路径不匹配任何配置的 IMG_MAP: %s", c.Request.URL.Path)
|
log.Warnf("请求的路径不匹配: %s", c.Request.URL.Path)
|
||||||
c.Status(404)
|
c.Status(404)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -76,7 +76,7 @@ func Convert(c *gin.Context) {
|
|||||||
// 检查文件是否已经在 EXHAUST_PATH 中
|
// 检查文件是否已经在 EXHAUST_PATH 中
|
||||||
if helper.FileExists(exhaustFilename) {
|
if helper.FileExists(exhaustFilename) {
|
||||||
if info, err := os.Stat(exhaustFilename); err == nil && info.Size() > 0 {
|
if info, err := os.Stat(exhaustFilename); err == nil && info.Size() > 0 {
|
||||||
log.Infof("文件已存在于 EXHAUST_PATH,直接提供服务: %s", exhaustFilename)
|
log.Infof("文件已存在: %s", exhaustFilename)
|
||||||
c.File(exhaustFilename)
|
c.File(exhaustFilename)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -120,7 +120,7 @@ func handleNonImageFile(c *gin.Context, reqURI string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Infof("Redirecting to: %s", redirectURL)
|
log.Infof("重定向至: %s", redirectURL)
|
||||||
c.Redirect(302, redirectURL)
|
c.Redirect(302, redirectURL)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -267,7 +267,7 @@ func processAndSaveImage(c *gin.Context, rawImageAbs, exhaustFilename string, ex
|
|||||||
} else {
|
} else {
|
||||||
err := encoder.ProcessAndSaveImage(rawImageAbs, tempFile, extraParams)
|
err := encoder.ProcessAndSaveImage(rawImageAbs, tempFile, extraParams)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Warnf("处理图片失败,将直接复制原图: %v", err)
|
// log.Warnf("处理图片失败,将直接复制原图: %v", err)
|
||||||
if copyErr := helper.CopyFile(rawImageAbs, tempFile); copyErr != nil {
|
if copyErr := helper.CopyFile(rawImageAbs, tempFile); copyErr != nil {
|
||||||
return fmt.Errorf("复制原图失败: %v", copyErr)
|
return fmt.Errorf("复制原图失败: %v", copyErr)
|
||||||
}
|
}
|
||||||
|
@ -46,19 +46,19 @@ func clearDirForOldestFiles(path string) error {
|
|||||||
})
|
})
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Error traversing directory: %s\n", err.Error())
|
log.Errorf("遍历目录时出错: %s\n", err.Error())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
if oldestFile != "" {
|
if oldestFile != "" {
|
||||||
err := os.Remove(oldestFile)
|
err := os.Remove(oldestFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Errorf("Error deleting file %s: %s\n", oldestFile, err.Error())
|
log.Errorf("删除文件时出错 %s: %s\n", oldestFile, err.Error())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
log.Infof("Deleted oldest file: %s\n", oldestFile)
|
log.Infof("删除了最旧的文件: %s\n", oldestFile)
|
||||||
} else {
|
} else {
|
||||||
log.Infoln("No files found in the directory.")
|
log.Infoln("目录中没有找到文件.")
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -58,13 +58,8 @@ func setupLogger() {
|
|||||||
func init() {
|
func init() {
|
||||||
// Our banner
|
// Our banner
|
||||||
banner := fmt.Sprintf(`
|
banner := fmt.Sprintf(`
|
||||||
▌ ▌ ▌ ▛▀▖ ▞▀▖ ▞▀▖
|
WebP Server Go
|
||||||
▌▖▌▞▀▖▛▀▖▙▄▘ ▚▄ ▞▀▖▙▀▖▌ ▌▞▀▖▙▀▖ ▌▄▖▞▀▖
|
https://github.com/woodchen-ink/webp_server_go`)
|
||||||
▙▚▌▛▀ ▌ ▌▌ ▖ ▌▛▀ ▌ ▐▐ ▛▀ ▌ ▌ ▌▌ ▌
|
|
||||||
▘ ▘▝▀▘▀▀ ▘ ▝▀ ▝▀▘▘ ▘ ▝▀▘▘ ▝▀ ▝▀
|
|
||||||
|
|
||||||
WebP Server Go - v%s
|
|
||||||
Developed by WebP Server team. https://github.com/woodchen-ink/webp_server_go`, config.Version)
|
|
||||||
|
|
||||||
// main init is the last one to be called
|
// main init is the last one to be called
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user