|
|
|
@ -4,8 +4,10 @@ import (
|
|
|
|
|
"fmt"
|
|
|
|
|
"log"
|
|
|
|
|
"recook/configs"
|
|
|
|
|
"runtime"
|
|
|
|
|
"time"
|
|
|
|
|
|
|
|
|
|
"git.oa00.com/go/logger"
|
|
|
|
|
"github.com/streadway/amqp"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
@ -53,6 +55,16 @@ func (o rabbitMq) ListenRetry(queue string, count int, handler func([]byte) erro
|
|
|
|
|
log.Printf("%s:%s\n", queue, err.Error())
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
defer func() {
|
|
|
|
|
if err := recover(); err != nil {
|
|
|
|
|
fmt.Println(err)
|
|
|
|
|
switch err.(type) {
|
|
|
|
|
case runtime.Error, string:
|
|
|
|
|
str := fmt.Sprintf("recovered (runtime.Error) panic:%s", err)
|
|
|
|
|
logger.Logger.Error(str)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
defer ch.Close()
|
|
|
|
|
closeChan := make(chan *amqp.Error, 1)
|
|
|
|
|
notifyClose := ch.NotifyClose(closeChan)
|
|
|
|
|