mirror of
https://gitee.com/zhangsken/aliyunpan.git
synced 2026-10-16 02:23:49 +08:00
add more log to track download url expired issue #501
This commit is contained in:
@@ -346,6 +346,7 @@ func (mt *Monitor) ResetWorker(worker *Worker) {
|
|||||||
// 忽略, 返回
|
// 忽略, 返回
|
||||||
return
|
return
|
||||||
case StatusCodeDownloadUrlExpired: // 下载链接已经过期
|
case StatusCodeDownloadUrlExpired: // 下载链接已经过期
|
||||||
|
logger.Verbosef("download url expired, reset worker: %d\n", worker.ID())
|
||||||
worker.RefreshDownloadUrl()
|
worker.RefreshDownloadUrl()
|
||||||
break
|
break
|
||||||
case StatusCodeDownloadUrlExceedMaxConcurrency: // 下载遇到限流报错
|
case StatusCodeDownloadUrlExceedMaxConcurrency: // 下载遇到限流报错
|
||||||
|
|||||||
@@ -205,6 +205,7 @@ func (wer *Worker) Cancel() error {
|
|||||||
|
|
||||||
// Reset 重设连接
|
// Reset 重设连接
|
||||||
func (wer *Worker) Reset() {
|
func (wer *Worker) Reset() {
|
||||||
|
logger.Verbosef("Reset worker: %d\n", wer.ID())
|
||||||
if wer.resetFunc == nil {
|
if wer.resetFunc == nil {
|
||||||
logger.Verbosef("DEBUG: worker: resetFunc not set")
|
logger.Verbosef("DEBUG: worker: resetFunc not set")
|
||||||
return
|
return
|
||||||
@@ -220,13 +221,15 @@ func (wer *Worker) Reset() {
|
|||||||
// RefreshDownloadUrl 重新刷新下载链接
|
// RefreshDownloadUrl 重新刷新下载链接
|
||||||
func (wer *Worker) RefreshDownloadUrl() {
|
func (wer *Worker) RefreshDownloadUrl() {
|
||||||
var apierr *apierror.ApiError
|
var apierr *apierror.ApiError
|
||||||
|
logger.Verbosef("get new download url for worker: %d\n", wer.ID())
|
||||||
durl, apierr := wer.panClient.OpenapiPanClient().GetFileDownloadUrl(&aliyunpan.GetFileDownloadUrlParam{DriveId: wer.driveId, FileId: wer.fileId})
|
durl, apierr := wer.panClient.OpenapiPanClient().GetFileDownloadUrl(&aliyunpan.GetFileDownloadUrlParam{DriveId: wer.driveId, FileId: wer.fileId})
|
||||||
if apierr != nil {
|
if apierr != nil {
|
||||||
|
logger.Verbosef("get new download url for worker: %d, error: %+v\n", wer.ID(), apierr)
|
||||||
wer.status.statusCode = StatusCodeTooManyConnections
|
wer.status.statusCode = StatusCodeTooManyConnections
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
wer.url = durl.Url
|
wer.url = durl.Url
|
||||||
|
logger.Verbosef("get new download url for worker: %d, new url: %s\n", wer.ID(), wer.url)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Canceled 是否已经取消
|
// Canceled 是否已经取消
|
||||||
@@ -266,6 +269,7 @@ func (wer *Worker) Err() error {
|
|||||||
|
|
||||||
// Execute 执行任务
|
// Execute 执行任务
|
||||||
func (wer *Worker) Execute() {
|
func (wer *Worker) Execute() {
|
||||||
|
logger.Verbosef("Execute worker: %d\n", wer.ID())
|
||||||
wer.lazyInit()
|
wer.lazyInit()
|
||||||
|
|
||||||
wer.execMu.Lock()
|
wer.execMu.Lock()
|
||||||
|
|||||||
Reference in New Issue
Block a user