From 434d43875b9a4dc0b30b0b8faee79fb48c7e907f Mon Sep 17 00:00:00 2001 From: tknew2 Date: Tue, 22 Jul 2014 15:39:09 +0200 Subject: [PATCH] bump fix --- lib/God/ClusterMode.js | 2 +- lib/Interactor/PushInteractor.js | 29 ++++++++++++++++++++++++----- lib/Interactor/ReverseInteractor.js | 2 ++ 3 files changed, 27 insertions(+), 6 deletions(-) diff --git a/lib/God/ClusterMode.js b/lib/God/ClusterMode.js index 0a2bd2d6..093df8f6 100644 --- a/lib/God/ClusterMode.js +++ b/lib/God/ClusterMode.js @@ -53,7 +53,7 @@ module.exports = function(God) { switch (msg.type) { case 'process:exception': God.bus.emit('process:exception', {process : clu, data : msg, err : msg.err}); - break; + break; case 'log:out': God.bus.emit('log:out', {process : clu, data : msg.data}); break; diff --git a/lib/Interactor/PushInteractor.js b/lib/Interactor/PushInteractor.js index 0f14163b..f4d48b17 100644 --- a/lib/Interactor/PushInteractor.js +++ b/lib/Interactor/PushInteractor.js @@ -2,6 +2,7 @@ var axon = require('axon'); var os = require('os'); var debug = require('debug')('interface:push-interactor'); +var util = require('util'); var pkg = require('../../package.json'); var cst = require('../../constants.js'); @@ -23,6 +24,7 @@ var PushInteractor = module.exports = { this.axm_connected = false; this.pm2_connected = false; this.send_buffer = []; + this.http_transactions = []; /** * Handle PM2 connection state changes @@ -30,13 +32,13 @@ var PushInteractor = module.exports = { this.ipm2.on('ready', function() { console.log('[PUSH] Connected to PM2'); self.pm2_connected = true; - self.getDuplex(); + self.showDuplex(); }); this.ipm2.on('reconnecting', function() { console.log('[PUSH] Reconnecting to PM2'); self.pm2_connected = false; - self.getDuplex(); + self.showDuplex(); }); self.pm2_connected = true; @@ -49,16 +51,17 @@ var PushInteractor = module.exports = { this.socket.on('connect', function() { self.axm_connected = true; console.log('[PUSH] Successfully connected to %s:%s', p.host, p.port); - self.getDuplex(); + self.showDuplex(); }); this.socket.on('error', function(e) { self.axm_connected = false; console.error('[PUSH]', e.stack || e); + self.showDuplex(); }); this.socket.on('reconnect attempt', function() { self.axm_connected = false; console.log('[PUSH] Reconnecting to AXM'); - self.getDuplex(); + self.showDuplex(); }); /** @@ -67,7 +70,7 @@ var PushInteractor = module.exports = { this.processEvents(); this.startWorker(); }, - getDuplex : function() { + showDuplex : function() { console.log('PM2', this.pm2_connected, '--->', 'AXM', this.axm_connected); }, /** @@ -126,6 +129,15 @@ var PushInteractor = module.exports = { self.bufferData('status', ret); } + if (self.http_transactions && self.http_transactions.length > 0) { + self.send_buffer.push({ + event : 'http:transaction', + transactions : self.http_transactions, + server_name : self.conf.MACHINE_NAME + }); + self.http_transactions = []; + } + if (cb) return cb(); return false; }); @@ -177,6 +189,13 @@ var PushInteractor = module.exports = { var self = this; if (packet.process && !packet.server) { + + if (event == 'http:transaction') { + packet.data.data.process_id = self.conf.MACHINE_NAME + ':' + packet.process.name + ':' + packet.process.pm_id; + packet.data.data.process_name = packet.process.name; + return self.http_transactions.push(packet.data.data); + } + self.send_buffer.push({ at : new Date(), event : event, diff --git a/lib/Interactor/ReverseInteractor.js b/lib/Interactor/ReverseInteractor.js index 8a5966bf..cd18797e 100644 --- a/lib/Interactor/ReverseInteractor.js +++ b/lib/Interactor/ReverseInteractor.js @@ -24,10 +24,12 @@ var ReverseInteract = module.exports = { this.socket.on('error', function(dt) { console.error('[REV] Error', dt); + self.socket.destroy(); }); this.socket.on('close', function(dt) { console.log('[REV] Connection closed'); + self.socket.destroy(); setTimeout(function() { console.log('[REV] Retrying to connect');