Enhance error handling in health check (#1998)
This commit is contained in:
@@ -20,6 +20,7 @@ import {
|
|||||||
getTemplateSrv,
|
getTemplateSrv,
|
||||||
toDataQueryResponse,
|
toDataQueryResponse,
|
||||||
getDataSourceSrv,
|
getDataSourceSrv,
|
||||||
|
HealthCheckError,
|
||||||
} from '@grafana/runtime';
|
} from '@grafana/runtime';
|
||||||
import {
|
import {
|
||||||
DataFrame,
|
DataFrame,
|
||||||
@@ -775,30 +776,29 @@ export class ZabbixDatasource extends DataSourceApi<ZabbixMetricsQuery, ZabbixDS
|
|||||||
};
|
};
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
if (error instanceof ZabbixAPIError) {
|
if (error instanceof ZabbixAPIError) {
|
||||||
return {
|
return Promise.reject({
|
||||||
status: 'error',
|
status: 'error',
|
||||||
title: error.message,
|
|
||||||
message: error.message,
|
message: error.message,
|
||||||
};
|
error: new HealthCheckError(error.message, {}),
|
||||||
|
});
|
||||||
} else if (error.data && error.data.message) {
|
} else if (error.data && error.data.message) {
|
||||||
return {
|
return Promise.reject({
|
||||||
status: 'error',
|
status: 'error',
|
||||||
title: 'Zabbix Client Error',
|
|
||||||
message: error.data.message,
|
message: error.data.message,
|
||||||
};
|
error: new HealthCheckError(error.data.message, {}),
|
||||||
|
});
|
||||||
} else if (typeof error === 'string') {
|
} else if (typeof error === 'string') {
|
||||||
return {
|
return Promise.reject({
|
||||||
status: 'error',
|
status: 'error',
|
||||||
title: 'Unknown Error',
|
|
||||||
message: error,
|
message: error,
|
||||||
};
|
error: new HealthCheckError(error, {}),
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
console.log(error);
|
return Promise.reject({
|
||||||
return {
|
|
||||||
status: 'error',
|
status: 'error',
|
||||||
title: 'Connection failed',
|
|
||||||
message: 'Could not connect to given url',
|
message: 'Could not connect to given url',
|
||||||
};
|
error: new HealthCheckError('Could not connect to given url', {}),
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user