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--;