@@ -37,7 +37,6 @@ import (
3737 "os"
3838 "strings"
3939
40- log "github.com/Sirupsen/logrus"
4140 "github.com/ibm-messaging/mq-golang/ibmmq"
4241)
4342
@@ -160,23 +159,22 @@ func discoverClasses(metaPrefix string) error {
160159 case ibmmq .MQCA_TOPIC_STRING :
161160 cl .typesTopic = elem .String [0 ]
162161 default :
163- log .Errorf ("Unknown parameter %d in class discovery" , elem .Parameter )
162+ return fmt .Errorf ("Unknown parameter %d in class discovery" , elem .Parameter )
164163 }
165164 }
166165 Metrics .Classes [classIndex ] = cl
167166 }
168167 }
169168
170169 subsOpened = true
171- return err
170+ return nil
172171}
173172
174173func discoverTypes (cl * MonClass ) error {
175174 var data []byte
176175 var sub ibmmq.MQObject
177176 var err error
178177
179- //log.Infof("Working on class %s", cl.Name)
180178 sub , err = subscribe (cl .typesTopic )
181179 if err == nil {
182180 data , err = getMessage (true )
@@ -210,7 +208,7 @@ func discoverTypes(cl *MonClass) error {
210208 case ibmmq .MQCA_TOPIC_STRING :
211209 ty .elementTopic = elem .String [0 ]
212210 default :
213- log .Errorf ("Unknown parameter %d in type discovery" , elem .Parameter )
211+ return fmt .Errorf ("Unknown parameter %d in type discovery" , elem .Parameter )
214212 }
215213 }
216214 cl .Types [typeIndex ] = ty
@@ -261,7 +259,7 @@ func discoverElements(ty *MonType) error {
261259 case ibmmq .MQCAMO_MONITOR_DESC :
262260 elem .Description = e .String [0 ]
263261 default :
264- log .Errorf ("Unknown parameter %d in type discovery" , e .Parameter )
262+ return fmt .Errorf ("Unknown parameter %d in type discovery" , e .Parameter )
265263 }
266264 }
267265
@@ -303,18 +301,6 @@ func discoverStats(metaPrefix string) error {
303301
304302 }
305303
306- for _ , cl := range Metrics .Classes {
307- for _ , ty := range cl .Types {
308- for _ , elem := range ty .Elements {
309- log .Debugf ("DUMP Element: Desc = %s ParentType = %s MetaTopic = %s Real Topic = %s Type = %d" ,
310- elem .MetricName ,
311- elem .Parent .Name ,
312- elem .Parent .elementTopic ,
313- ty .ObjectTopic , elem .Datatype )
314- }
315- }
316- }
317-
318304 return err
319305}
320306
@@ -350,8 +336,7 @@ func discoverQueues(monitoredQueues string) error {
350336
351337 if strings .Count (pattern , "*" ) > 1 ||
352338 (strings .Count (pattern , "*" ) == 1 && ! strings .HasSuffix (pattern , "*" )) {
353- log .Errorf ("Queue pattern '%s' is not valid" , pattern )
354- continue
339+ return fmt .Errorf ("Queue pattern '%s' is not valid" , pattern )
355340 }
356341
357342 putmqmd := ibmmq .NewMQMD ()
@@ -395,7 +380,7 @@ func discoverQueues(monitoredQueues string) error {
395380 err = cmdQObj .Put (putmqmd , pmo , buf )
396381
397382 if err != nil {
398- log . Error ( err )
383+ return fmt . Errorf ( "%v" , err )
399384 }
400385
401386 // Now get the response
@@ -414,9 +399,7 @@ func discoverQueues(monitoredQueues string) error {
414399 if err == nil {
415400 cfh , offset := ibmmq .ReadPCFHeader (buf )
416401 if cfh .CompCode != ibmmq .MQCC_OK {
417- log .Errorf ("PCF command failed with CC %d RC %d" ,
418- cfh .CompCode ,
419- cfh .Reason )
402+ return fmt .Errorf ("PCF command failed with CC %d RC %d" , cfh .CompCode , cfh .Reason )
420403 } else {
421404 parmAvail := true
422405 bytesRead := 0
@@ -431,7 +414,7 @@ func discoverQueues(monitoredQueues string) error {
431414 switch elem .Parameter {
432415 case ibmmq .MQCACF_Q_NAMES :
433416 if len (elem .String ) == 0 {
434- log .Errorf ("No queues matching '%s' exist" , pattern )
417+ return fmt .Errorf ("No queues matching '%s' exist" , pattern )
435418 }
436419 for i := 0 ; i < len (elem .String ); i ++ {
437420 qList = append (qList , strings .TrimSpace (elem .String [i ]))
@@ -440,12 +423,10 @@ func discoverQueues(monitoredQueues string) error {
440423 }
441424 }
442425 } else {
443- log . Error ( err )
426+ return fmt . Errorf ( "%v" , err )
444427 }
445428 }
446429
447- log .Infof ("Discovered queues = %v" , qList )
448-
449430 return err
450431}
451432
@@ -457,7 +438,6 @@ func createSubscriptions() error {
457438 var err error
458439 var sub ibmmq.MQObject
459440
460- loop:
461441 for _ , cl := range Metrics .Classes {
462442 for _ , ty := range cl .Types {
463443
@@ -473,8 +453,7 @@ loop:
473453 }
474454
475455 if err != nil {
476- log .Error ("Error subscribing: " , err )
477- break loop
456+ return fmt .Errorf ("Error subscribing: %v" , err )
478457 }
479458 }
480459 }
@@ -588,17 +567,8 @@ func ProcessPublications() {
588567 elem .Values [objectName ] = value
589568 }
590569 }
591- } else {
592- mqreturn := err .(* ibmmq.MQReturn )
593- // Printing this for 2033 is excessive, even in debug
594- if mqreturn .MQRC != ibmmq .MQRC_NO_MSG_AVAILABLE {
595- log .Debugf ("getMessage returned %v" , err )
596- }
597570 }
598-
599571 }
600- log .Debugf ("Processed %d messages" , cnt )
601-
602572}
603573
604574/*
@@ -723,12 +693,12 @@ ReadPatterns is called during the initial configuration step to read a file
723693containing object name patterns if they are not explicitly given
724694on the command line.
725695*/
726- func ReadPatterns (f string ) string {
696+ func ReadPatterns (f string ) ( string , error ) {
727697 var s string
728698
729699 file , err := os .Open (f )
730700 if err != nil {
731- log . Fatalf ("Opening file %s: %s" , f , err )
701+ return "" , fmt . Errorf ("Opening file %s: %s" , f , err )
732702 }
733703 defer file .Close ()
734704 scanner := bufio .NewScanner (file )
@@ -739,11 +709,10 @@ func ReadPatterns(f string) string {
739709 s += scanner .Text ()
740710 }
741711 if err := scanner .Err (); err != nil {
742- log . Fatalf ("Reading from %s: %s" , f , err )
712+ return "" , fmt . Errorf ("Reading from %s: %s" , f , err )
743713 }
744- log .Infof ("Read patterns from %s: '%s'" , f , s )
745714
746- return s
715+ return s , nil
747716}
748717
749718/*
@@ -760,9 +729,6 @@ func Normalise(elem *MonElement, key string, value int64) float64 {
760729 f = 0
761730 }
762731
763- //log.Debugf("Pushing Elem %s [%s] Type %d Value %f",
764- // elem.MetricName, key, elem.Datatype, f)
765-
766732 // Convert suitable metrics to base units
767733 if elem .Datatype == ibmmq .MQIAMO_MONITOR_PERCENT ||
768734 elem .Datatype == ibmmq .MQIAMO_MONITOR_HUNDREDTHS {
0 commit comments