Fix connection errors handling, fixes #236.
This commit is contained in:
@@ -41,12 +41,12 @@ function ZabbixAPIService($q, alertSrv, zabbixAPICoreService) {
|
|||||||
request(method, params) {
|
request(method, params) {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
return this.zabbixAPICore.request(this.url, method, params, this.requestOptions, this.auth)
|
return this.zabbixAPICore
|
||||||
.then(function(result) {
|
.request(this.url, method, params, this.requestOptions, this.auth)
|
||||||
|
.then((result) => {
|
||||||
return result;
|
return result;
|
||||||
},
|
}, (error) => {
|
||||||
// Handle API errors
|
// Handle API errors
|
||||||
function(error) {
|
|
||||||
if (isNotAuthorized(error.data)) {
|
if (isNotAuthorized(error.data)) {
|
||||||
return self.loginOnce().then(
|
return self.loginOnce().then(
|
||||||
function() {
|
function() {
|
||||||
@@ -56,15 +56,18 @@ function ZabbixAPIService($q, alertSrv, zabbixAPICoreService) {
|
|||||||
function(error) {
|
function(error) {
|
||||||
self.alertAPIError(error.data);
|
self.alertAPIError(error.data);
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
this.alertSrv.set("Connection Error", error.data, 'error', 5000);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
alertAPIError(message) {
|
alertAPIError(message, timeout = 5000) {
|
||||||
this.alertSrv.set(
|
this.alertSrv.set(
|
||||||
"Zabbix API Error",
|
"Zabbix API Error",
|
||||||
message,
|
message,
|
||||||
'error'
|
'error',
|
||||||
|
timeout
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -51,7 +51,8 @@ class ZabbixAPICoreService {
|
|||||||
requestOptions.headers.Authorization = options.basicAuth;
|
requestOptions.headers.Authorization = options.basicAuth;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.backendSrv.datasourceRequest(requestOptions).then(function (response) {
|
this.backendSrv.datasourceRequest(requestOptions)
|
||||||
|
.then((response) => {
|
||||||
// General connection issues
|
// General connection issues
|
||||||
if (!response.data) {
|
if (!response.data) {
|
||||||
deferred.reject(response);
|
deferred.reject(response);
|
||||||
@@ -63,7 +64,10 @@ class ZabbixAPICoreService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
deferred.resolve(response.data.result);
|
deferred.resolve(response.data.result);
|
||||||
|
}, (error) => {
|
||||||
|
deferred.reject(error.err);
|
||||||
});
|
});
|
||||||
|
|
||||||
return deferred.promise;
|
return deferred.promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user