@@ -37,7 +37,7 @@ class FluentSender {
37
37
if ( this . _eventMode === 'Message' ) {
38
38
this . _sendQueue = [ ] ; // queue for items waiting for being sent.
39
39
this . _flushInterval = 0 ;
40
- this . _messageQueueSizeLimit = options . messageQueueSizeLimit || 0 ;
40
+ this . _messageQueueSizeLimit = options . messageQueueSizeLimit || 1000 ;
41
41
} else {
42
42
this . _sendQueue = new Map ( ) ;
43
43
this . _flushInterval = options . flushInterval || 100 ;
@@ -110,10 +110,11 @@ class FluentSender {
110
110
return ;
111
111
}
112
112
113
- this . _push ( tag , timestamp , data , callback ) ;
113
+ this . _push ( tag , timestamp , data ) ;
114
114
this . _connect ( ( ) => {
115
115
this . _flushSendQueue ( ) ;
116
116
} ) ;
117
+ callback ( )
117
118
}
118
119
119
120
end ( label , data , callback ) {
@@ -182,11 +183,10 @@ class FluentSender {
182
183
return msgpack . encode ( [ time , data ] , { codec : codec } ) ;
183
184
}
184
185
185
- _push ( tag , time , data , callback ) {
186
+ _push ( tag , time , data ) {
186
187
if ( this . _eventMode === 'Message' ) {
187
188
// Message mode
188
189
const item = this . _makePacketItem ( tag , time , data ) ;
189
- item . callback = callback ;
190
190
if ( this . _messageQueueSizeLimit && this . _sendQueue . length === this . _messageQueueSizeLimit ) {
191
191
this . _sendQueue . shift ( ) ;
192
192
}
@@ -199,13 +199,10 @@ class FluentSender {
199
199
const eventEntryData = this . _sendQueue . get ( tag ) ;
200
200
eventEntryData . eventEntries . push ( eventEntry ) ;
201
201
eventEntryData . size += eventEntry . length ;
202
- if ( callback ) eventEntryData . callbacks . push ( callback ) ;
203
202
} else {
204
- const callbacks = callback ? [ callback ] : [ ] ;
205
203
this . _sendQueue . set ( tag , {
206
204
eventEntries : [ eventEntry ] ,
207
205
size : eventEntry . length ,
208
- callbacks : callbacks
209
206
} ) ;
210
207
}
211
208
}
@@ -292,7 +289,7 @@ class FluentSender {
292
289
this . _socket && this . _socket . destroy ( ) ;
293
290
this . _socket = null ;
294
291
this . _status = null ;
295
- this . _connecting = false ;
292
+ setTimeout ( ( ) => { this . _connecting = false } , this . reconnectInterval )
296
293
}
297
294
298
295
_handshake ( callback ) {
@@ -375,7 +372,7 @@ class FluentSender {
375
372
// nothing written;
376
373
return ;
377
374
}
378
- this . _doWrite ( item . packet , item . options , timeoutId , [ item . callback ] ) ;
375
+ this . _doWrite ( item . packet , item . options , timeoutId ) ;
379
376
} else {
380
377
if ( this . _sendQueue . size === 0 ) {
381
378
this . _flushingSendQueue = false ;
@@ -398,11 +395,11 @@ class FluentSender {
398
395
eventEntryDataSize : eventEntryData . size
399
396
} ;
400
397
const packet = msgpack . encode ( [ tag , entries , options ] , { codec : codec } ) ;
401
- this . _doWrite ( packet , options , timeoutId , eventEntryData . callbacks ) ;
398
+ this . _doWrite ( packet , options , timeoutId ) ;
402
399
}
403
400
}
404
401
405
- _doWrite ( packet , options , timeoutId , callbacks ) {
402
+ _doWrite ( packet , options , timeoutId ) {
406
403
const sendPacketSize = ( options && options . eventEntryDataSize ) || this . _sendQueueSize ;
407
404
this . _socket . write ( packet , ( ) => {
408
405
if ( this . requireAckResponse ) {
@@ -414,13 +411,7 @@ class FluentSender {
414
411
'ack in response and chunk id in sent data are different' ,
415
412
{ ack : response . ack , chunk : options . chunk }
416
413
) ;
417
- callbacks . forEach ( ( callback ) => {
418
- this . _handleEvent ( 'error' , error , callback ) ;
419
- } ) ;
420
- } else { // no error on ack
421
- callbacks . forEach ( ( callback ) => {
422
- callback && callback ( ) ;
423
- } ) ;
414
+ this . _handleEvent ( 'error' , error ) ;
424
415
}
425
416
this . _sendQueueSize -= sendPacketSize ;
426
417
process . nextTick ( ( ) => {
@@ -429,15 +420,10 @@ class FluentSender {
429
420
} ) ;
430
421
timeoutId = setTimeout ( ( ) => {
431
422
const error = new FluentLoggerError . ResponseTimeout ( 'ack response timeout' ) ;
432
- callbacks . forEach ( ( callback ) => {
433
- this . _handleEvent ( 'error' , error , callback ) ;
434
- } ) ;
423
+ this . _handleEvent ( 'error' , error ) ;
435
424
} , this . ackResponseTimeout ) ;
436
425
} else {
437
426
this . _sendQueueSize -= sendPacketSize ;
438
- callbacks . forEach ( ( callback ) => {
439
- callback && callback ( ) ;
440
- } ) ;
441
427
process . nextTick ( ( ) => {
442
428
this . _waitToWrite ( ) ;
443
429
} ) ;
0 commit comments