diff --git a/broker/ntgvision.go b/broker/ntgvision.go index 2528d7a..05f5cc9 100644 --- a/broker/ntgvision.go +++ b/broker/ntgvision.go @@ -93,7 +93,7 @@ func (ntgJob *ntgVisionJob) JobInfo() (ntgVisionJobInfo, error) { key := fmt.Sprintf("ntg_job_info_%v", ntgJob.ID) if b, err := db.Get(key); err != nil { } else if err := json.Unmarshal(b, &ntgJob.jobinfo); err == nil { - return ntgJob.jobinfo, nil + return ntgJob.jobinfo, fmt.Errorf("failed to parse ntg job info from db: %w: %s", err, b) } ntg := NewNTGVision() ji, err := ntg.SearchJob(ntgJob.ID) @@ -175,8 +175,15 @@ func (ntg NTGVision) SearchJob(id int64) (ntgVisionJobInfo, error) { return ntgVisionJobInfo{}, err } defer rc.Close() + b, err := ioutil.ReadAll(rc) + if err != nil { + return ntgVisionJobInfo{}, fmt.Errorf("failed to readall search job result: %w", err) + } var result ntgVisionJobInfo - err = json.NewDecoder(rc).Decode(&result) + err = json.Unmarshal(b, &result) + if err != nil { + err = fmt.Errorf("failed to parse job info: %w: %s", err, b) + } return result, err } diff --git a/logtr/log.go b/logtr/log.go index 54eeb4c..1daa32b 100644 --- a/logtr/log.go +++ b/logtr/log.go @@ -90,7 +90,9 @@ func logf(l Level, format string, args []interface{}) { } fmt.Fprintf(logger, format, args...) if l == SOS && cAnsoser != nil { - cAnsoser.Send(fmt.Sprintf(format, args...)) + if err := cAnsoser.Send(fmt.Sprintf(format, args...)); err != nil { + Errorf("failed to SOS: %v", err) + } } }