@@ -31,7 +31,7 @@ const layouts = require('./layouts');
31
31
32
32
let cluster ;
33
33
try {
34
- cluster = require ( 'cluster' ) ; // eslint-disable-line global-require
34
+ cluster = require ( 'cluster' ) ; // eslint-disable-line global-require
35
35
} catch ( e ) {
36
36
debug ( 'Clustering support disabled because require(cluster) threw an error: ' , e ) ;
37
37
}
@@ -78,9 +78,8 @@ function setLevelForCategory(category, level) {
78
78
debug ( `setLevelForCategory: found ${ categoryConfig } for ${ category } ` ) ;
79
79
if ( ! categoryConfig ) {
80
80
const sourceCategoryConfig = configForCategory ( category ) ;
81
- debug (
82
- `setLevelForCategory: no config found for category, found ${ sourceCategoryConfig } for parents of ${ category } `
83
- ) ;
81
+ debug ( 'setLevelForCategory: no config found for category, ' +
82
+ `found ${ sourceCategoryConfig } for parents of ${ category } ` ) ;
84
83
categoryConfig = { appenders : sourceCategoryConfig . appenders } ;
85
84
}
86
85
categoryConfig . level = level ;
@@ -205,23 +204,22 @@ function configure(configurationFileOrObject) {
205
204
LoggingEvent = loggerModule . LoggingEvent ;
206
205
module . exports . connectLogger = connectModule ( config . levels ) . connectLogger ;
207
206
207
+ // just in case configure is called after shutdown
208
+ process . removeListener ( 'message' , receiver ) ;
209
+ cluster . removeListener ( 'message' , receiver ) ;
208
210
if ( config . disableClustering ) {
209
211
debug ( 'Not listening for cluster messages, because clustering disabled.' ) ;
210
- } else {
212
+ } else if ( isPM2Master ( ) ) {
211
213
// PM2 cluster support
212
214
// PM2 runs everything as workers - install pm2-intercom for this to work.
213
215
// we only want one of the app instances to write logs
214
- if ( isPM2Master ( ) ) {
215
- debug ( 'listening for PM2 broadcast messages' ) ;
216
- process . removeListener ( 'message' , receiver ) ;
217
- process . on ( 'message' , receiver ) ;
218
- } else if ( cluster . isMaster ) {
219
- debug ( 'listening for cluster messages' ) ;
220
- cluster . removeListener ( 'message' , receiver ) ;
221
- cluster . on ( 'message' , receiver ) ;
222
- } else {
223
- debug ( 'not listening for messages, because we are not a master process' ) ;
224
- }
216
+ debug ( 'listening for PM2 broadcast messages' ) ;
217
+ process . on ( 'message' , receiver ) ;
218
+ } else if ( cluster . isMaster ) {
219
+ debug ( 'listening for cluster messages' ) ;
220
+ cluster . on ( 'message' , receiver ) ;
221
+ } else {
222
+ debug ( 'not listening for messages, because we are not a master process' ) ;
225
223
}
226
224
227
225
enabled = true ;
0 commit comments