Enhance error handling in health check (#1998)

This commit is contained in:
Zoltán Bedi
2025-03-25 12:12:40 +01:00
committed by GitHub
parent a02a88579e
commit 8d06e049fb

View File

@@ -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', {}),
});
} }
} }
} }