projects
/
arvados.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
515a58c
)
10484: Track non-s3 errors by Go type.
author
Tom Clegg <tom@curoverse.com>
Thu, 10 Nov 2016 20:25:32 +0000
(15:25 -0500)
committer
Tom Clegg <tom@curoverse.com>
Mon, 21 Nov 2016 16:49:15 +0000
(11:49 -0500)
services/keepstore/s3_volume.go
patch
|
blob
|
history
diff --git
a/services/keepstore/s3_volume.go
b/services/keepstore/s3_volume.go
index 48ba95b4887ee03e2b245faa1ab96cd2c868cdff..3b843e02c955e99fafc39895408cca9bccb271fe 100644
(file)
--- 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)
return nil
}
atomic.AddUint64(&v.bucketStats.Errors, 1)
+ errStr := fmt.Sprintf("%T", err)
if err, ok := err.(*s3.Error); ok {
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
}
return err
}