Skip to content
Snippets Groups Projects

Added panic intercept method to RabbitMQ message handler

Merged Heijden,T.A.J. van der (Thijs) requested to merge panic-intercept into develop
1 file
+ 9
7
Compare changes
  • Side-by-side
  • Inline
@@ -25,13 +25,6 @@ HandleMessage gets called when a message is received
*/
func (s *Service) HandleMessage(msg *broker.Message) {
// Defer a panic intercepting function
defer func() {
if err := recover(); err != nil {
log.Printf("PANIC: %e", err.(error))
}
}()
// Grab the headers from the message
sessionID, clientID, queryID, err := getHeaders(&msg.Headers)
if err != nil {
@@ -40,6 +33,15 @@ func (s *Service) HandleMessage(msg *broker.Message) {
}
s.publishStatus("Received", sessionID, queryID)
// Defer a panic intercepting function
defer func(sessionID, queryID *string) {
if err := recover(); err != nil {
log.Printf("PANIC: %e", err.(error))
s.publishStatus("Critical Error", sessionID, queryID)
}
}(sessionID, queryID)
// Unmarshall the incoming message into an IncomingJSONQuery object
JSONQuery, err := query.UnmarshalJSON(&msg.Body)
if err != nil {
Loading