From 0dce2a6045f25916095744730fb85d46648408cb Mon Sep 17 00:00:00 2001 From: dan Date: Tue, 7 Apr 2015 10:42:07 -0700 Subject: [PATCH] debug for errors that are killing the pipeline --- pipeline.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pipeline.go b/pipeline.go index 09f6ac2..78344f8 100644 --- a/pipeline.go +++ b/pipeline.go @@ -3,6 +3,7 @@ package connector import ( "log" "math" + "reflect" "time" "github.com/ezoic/go-kinesis" @@ -23,12 +24,18 @@ type Pipeline struct { Transformer Transformer } +var pipelineRecoverableErrorCodes = map[string]bool{ + "ProvisionedThroughputExceededException": true, +} + // this determines whether the error is recoverable func (p Pipeline) isRecoverableError(err error) bool { r := false + l4g.Debug("isRecoverableError, type %s, value (+%v)", reflect.TypeOf(err).Name(), err) + cErr, ok := err.(*kinesis.Error) - if ok && cErr.Code == "ProvisionedThroughputExceededException" { + if ok && pipelineRecoverableErrorCodes[cErr.Code] == true { r = true }