@cryptotaxi247 / netdata-1 / commits / 2808c8340

fix node.d.plugin responseProcessor failures; fixes #2955

Costa Tsaousis (ktsaou) committed Nov 13, 2017 at 18:56 UTC 2808c83409117f30a0f54266627479e47e6a2879
2 files changed +12 -15
node.d/named.node.js
+1 -1
@@ -201,7 +201,7 @@ var named = {
201 r = JSON.parse(data);
202
203 if(typeof r === 'undefined' || r === null) {
204 - netdata.serviceError(service, "Cannot parse these data: " + data);
204 + service.error("Cannot parse these data: " + data.toString());
205 return;
206 }
207
node.d/node_modules/netdata.js
+11 -14
@@ -68,15 +68,6 @@ var netdata = {
68 modules_configuring: 0,
69 charts: {},
70
71 - callback_protected: function(callback, param) {
72 - try {
73 - return callback(param);
74 - }
75 - catch(e) {
76 - return null;
77 - }
78 - },
79 -
71 processors: {
72 http: {
73 name: 'http',
@@ -98,7 +89,7 @@ var netdata = {
89 if(end === false) {
90 service.error('Got HTTP code ' + response.statusCode + ', failed to get data.');
91 end = true;
101 - return netdata.callback_protected(callback, null);
92 + return callback(null);
93 }
94 }
95
@@ -110,7 +101,7 @@ var netdata = {
101 if(end === false) {
102 service.error(': Read error, failed to get data.');
103 end = true;
113 - return netdata.callback_protected(callback, null);
104 + return callback(null);
105 }
106 });
107
@@ -118,7 +109,7 @@ var netdata = {
109 if(end === false) {
110 if(__DEBUG === true) netdata.debug(service.module.name + ': ' + service.name + ': read completed.');
111 end = true;
121 - return netdata.callback_protected(callback, data);
112 + return callback(data);
113 }
114 });
115 });
@@ -126,7 +117,7 @@ var netdata = {
117 req.on('error', function(e) {
118 if(__DEBUG === true) netdata.debug('Failed to make request: ' + netdata.stringify(service.request) + ', message: ' + e.message);
119 service.error('Failed to make request, message: ' + e.message);
129 - return netdata.callback_protected(callback, null);
120 + return callback(null);
121 });
122
123 // write data to request body
@@ -253,7 +244,13 @@ var netdata = {
244 if(__DEBUG === true)
245 netdata.debug(service.module.name + ': ' + service.name + ': processing ' + service.processor.name + ' response (received in ' + (service.ended - service.started).toString() + ' ms)');
246
256 - responseProcessor(service, response);
247 + try {
248 + responseProcessor(service, response);
249 + }
250 + catch(e) {
251 + netdata.error(e);
252 + service.error("responseProcessor failed process response data.");
253 + }
254
255 service.running = false;
256 service.module.active--;