X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/400210f8c9d8b111a3efdaa76c8be579ea5666cb..983669a566b89e56640638d85f40a77ce38a42b0:/services/keepstore/trash_worker.go diff --git a/services/keepstore/trash_worker.go b/services/keepstore/trash_worker.go index ba1455ac65..3b1bd04230 100644 --- a/services/keepstore/trash_worker.go +++ b/services/keepstore/trash_worker.go @@ -6,10 +6,10 @@ package main import ( "errors" - "log" "time" "git.curoverse.com/arvados.git/sdk/go/arvados" + "github.com/sirupsen/logrus" ) // RunTrashWorker is used by Keepstore to initiate trash worker channel goroutine. @@ -18,19 +18,19 @@ import ( // Delete the block indicated by the trash request Locator // Repeat // -func RunTrashWorker(volmgr *RRVolumeManager, cluster *arvados.Cluster, trashq *WorkQueue) { +func RunTrashWorker(volmgr *RRVolumeManager, logger logrus.FieldLogger, cluster *arvados.Cluster, trashq *WorkQueue) { for item := range trashq.NextItem { trashRequest := item.(TrashRequest) - TrashItem(volmgr, cluster, trashRequest) + TrashItem(volmgr, logger, cluster, trashRequest) trashq.DoneItem <- struct{}{} } } // TrashItem deletes the indicated block from every writable volume. -func TrashItem(volmgr *RRVolumeManager, cluster *arvados.Cluster, trashRequest TrashRequest) { +func TrashItem(volmgr *RRVolumeManager, logger logrus.FieldLogger, cluster *arvados.Cluster, trashRequest TrashRequest) { reqMtime := time.Unix(0, trashRequest.BlockMtime) if time.Since(reqMtime) < cluster.Collections.BlobSigningTTL.Duration() { - log.Printf("WARNING: data manager asked to delete a %v old block %v (BlockMtime %d = %v), but my blobSignatureTTL is %v! Skipping.", + logger.Warnf("client asked to delete a %v old block %v (BlockMtime %d = %v), but my blobSignatureTTL is %v! Skipping.", arvados.Duration(time.Since(reqMtime)), trashRequest.Locator, trashRequest.BlockMtime, @@ -43,7 +43,7 @@ func TrashItem(volmgr *RRVolumeManager, cluster *arvados.Cluster, trashRequest T if uuid := trashRequest.MountUUID; uuid == "" { volumes = volmgr.AllWritable() } else if mnt := volmgr.Lookup(uuid, true); mnt == nil { - log.Printf("warning: trash request for nonexistent mount: %v", trashRequest) + logger.Warnf("trash request for nonexistent mount: %v", trashRequest) return } else { volumes = []*VolumeMount{mnt} @@ -52,11 +52,11 @@ func TrashItem(volmgr *RRVolumeManager, cluster *arvados.Cluster, trashRequest T for _, volume := range volumes { mtime, err := volume.Mtime(trashRequest.Locator) if err != nil { - log.Printf("%v Trash(%v): %v", volume, trashRequest.Locator, err) + logger.WithError(err).Errorf("%v Trash(%v)", volume, trashRequest.Locator) continue } if trashRequest.BlockMtime != mtime.UnixNano() { - log.Printf("%v Trash(%v): stored mtime %v does not match trash list value %v", volume, trashRequest.Locator, mtime.UnixNano(), trashRequest.BlockMtime) + logger.Infof("%v Trash(%v): stored mtime %v does not match trash list value %v; skipping", volume, trashRequest.Locator, mtime.UnixNano(), trashRequest.BlockMtime) continue } @@ -67,9 +67,9 @@ func TrashItem(volmgr *RRVolumeManager, cluster *arvados.Cluster, trashRequest T } if err != nil { - log.Printf("%v Trash(%v): %v", volume, trashRequest.Locator, err) + logger.WithError(err).Errorf("%v Trash(%v)", volume, trashRequest.Locator) } else { - log.Printf("%v Trash(%v) OK", volume, trashRequest.Locator) + logger.Infof("%v Trash(%v) OK", volume, trashRequest.Locator) } } }