mirror of
https://github.com/imgproxy/imgproxy.git
synced 2025-10-11 04:32:29 +02:00
Revised downloading errors reporting
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
### Change
|
### Change
|
||||||
- Allow relative values for `gravity` and `watermark` offsets.
|
- Allow relative values for `gravity` and `watermark` offsets.
|
||||||
|
- Revised downloading errors reporting.
|
||||||
|
|
||||||
## [3.21.0] - 2023-11-23
|
## [3.21.0] - 2023-11-23
|
||||||
### Add
|
### Add
|
||||||
|
@@ -328,23 +328,31 @@ func handleProcessing(reqID string, rw http.ResponseWriter, r *http.Request) {
|
|||||||
respondWithNotModified(reqID, r, rw, po, imageURL, nmErr.Headers)
|
respondWithNotModified(reqID, r, rw, po, imageURL, nmErr.Headers)
|
||||||
return
|
return
|
||||||
} else {
|
} else {
|
||||||
ierr, ierrok := err.(*ierrors.Error)
|
// This may be a request timeout error or a request cancelled error.
|
||||||
if ierrok {
|
// Check it before moving further
|
||||||
statusCode = ierr.StatusCode
|
checkErr(ctx, "timeout", router.CheckTimeout(ctx))
|
||||||
}
|
|
||||||
if config.ReportDownloadingErrors && (!ierrok || ierr.Unexpected) {
|
|
||||||
errorreport.Report(err, r)
|
|
||||||
}
|
|
||||||
|
|
||||||
sendErr(ctx, "download", err)
|
ierr := ierrors.Wrap(err, 0)
|
||||||
|
ierr.Unexpected = ierr.Unexpected || config.ReportDownloadingErrors
|
||||||
|
|
||||||
|
sendErr(ctx, "download", ierr)
|
||||||
|
|
||||||
if imagedata.FallbackImage == nil {
|
if imagedata.FallbackImage == nil {
|
||||||
panic(err)
|
panic(ierr)
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Warningf("Could not load image %s. Using fallback image. %s", imageURL, err.Error())
|
// We didn't panic, so the error is not reported.
|
||||||
|
// Report it now
|
||||||
|
if ierr.Unexpected {
|
||||||
|
errorreport.Report(ierr, r)
|
||||||
|
}
|
||||||
|
|
||||||
|
log.WithField("request_id", reqID).Warningf("Could not load image %s. Using fallback image. %s", imageURL, ierr.Error())
|
||||||
|
|
||||||
if config.FallbackImageHTTPCode > 0 {
|
if config.FallbackImageHTTPCode > 0 {
|
||||||
statusCode = config.FallbackImageHTTPCode
|
statusCode = config.FallbackImageHTTPCode
|
||||||
|
} else {
|
||||||
|
statusCode = ierr.StatusCode
|
||||||
}
|
}
|
||||||
|
|
||||||
originData = imagedata.FallbackImage
|
originData = imagedata.FallbackImage
|
||||||
|
Reference in New Issue
Block a user