From d542de20d8617f5823ab8f675c114f78aaf4a924 Mon Sep 17 00:00:00 2001 From: Tom Clegg Date: Thu, 10 Nov 2016 15:25:32 -0500 Subject: [PATCH] 10484: Track non-s3 errors by Go type. --- services/keepstore/s3_volume.go | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/services/keepstore/s3_volume.go b/services/keepstore/s3_volume.go index 48ba95b488..3b843e02c9 100644 --- a/services/keepstore/s3_volume.go +++ b/services/keepstore/s3_volume.go @@ -859,15 +859,16 @@ func (v *S3Volume) tickErr(err error) error { return nil } atomic.AddUint64(&v.bucketStats.Errors, 1) + errStr := fmt.Sprintf("%T", err) if err, ok := err.(*s3.Error); ok { - errStr := fmt.Sprintf("%d %s", err.StatusCode, err.Code) - v.bucketStats.lock.Lock() - if v.bucketStats.ErrorCodes == nil { - v.bucketStats.ErrorCodes = make(map[string]uint64) - } - v.bucketStats.ErrorCodes[errStr]++ - v.bucketStats.lock.Unlock() + errStr = errStr + fmt.Sprintf(" %d %s", err.StatusCode, err.Code) + } + v.bucketStats.lock.Lock() + if v.bucketStats.ErrorCodes == nil { + v.bucketStats.ErrorCodes = make(map[string]uint64) } + v.bucketStats.ErrorCodes[errStr]++ + v.bucketStats.lock.Unlock() return err } -- 2.30.2