File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change 52
52
"sequelize" : " ^4.21.0" ,
53
53
"superagent" : " ^3.8.0" ,
54
54
"tc-core-library-js" : " appirio-tech/tc-core-library-js.git#v2.6" ,
55
- "winston" : " ^2.2.0"
55
+ "winston" : " ^2.2.0" ,
56
+ "topcoder-healthcheck-dropin" : " ^1.0.3"
56
57
},
57
58
"engines" : {
58
59
"node" : " 6.x"
Original file line number Diff line number Diff line change @@ -15,6 +15,7 @@ const logger = require('./common/logger');
15
15
const errors = require ( './common/errors' ) ;
16
16
const models = require ( './models' ) ;
17
17
const Kafka = require ( 'no-kafka' ) ;
18
+ const healthcheck = require ( 'topcoder-healthcheck-dropin' )
18
19
19
20
/**
20
21
* Start Kafka consumer for event bus events.
@@ -74,11 +75,25 @@ function startKafkaConsumer(handlers, notificationServiceHandlers) {
74
75
} ) ;
75
76
} ) ;
76
77
78
+ const check = function ( ) {
79
+ if ( ! consumer . client . initialBrokers && ! consumer . client . initialBrokers . length ) {
80
+ return false
81
+ }
82
+ let connected = true
83
+ consumer . client . initialBrokers . forEach ( conn => {
84
+ logger . debug ( `url ${ conn . server ( ) } - connected=${ conn . connected } ` )
85
+ connected = conn . connected & connected
86
+ } )
87
+ return connected
88
+ }
77
89
78
90
consumer
79
91
. init ( )
80
- . then ( ( ) => _ . each ( _ . keys ( handlers ) ,
81
- ( topicName ) => consumer . subscribe ( topicName , dataHandler ) ) )
92
+ . then ( ( ) => {
93
+ _ . each ( _ . keys ( handlers ) ,
94
+ ( topicName ) => consumer . subscribe ( topicName , dataHandler ) )
95
+ healthcheck . init ( [ check ] )
96
+ } )
82
97
. catch ( ( err ) => {
83
98
logger . error ( 'Kafka Consumer failed' ) ;
84
99
logger . error ( err ) ;
You can’t perform that action at this time.
0 commit comments