diff --git a/src/datasource-zabbix/timeseries.ts b/src/datasource-zabbix/timeseries.ts index 4d56250..3a77ee4 100644 --- a/src/datasource-zabbix/timeseries.ts +++ b/src/datasource-zabbix/timeseries.ts @@ -69,7 +69,7 @@ function downsample(datapoints, time_to, ms_interval, func) { * Detects interval between data points and aligns time series. If there's no value in the interval, puts null as a value. */ export function align(datapoints: TimeSeriesPoints, interval?: number): TimeSeriesPoints { - if (interval) { + if (!interval) { interval = detectSeriesInterval(datapoints); } diff --git a/src/datasource-zabbix/utils.ts b/src/datasource-zabbix/utils.ts index 0b58123..9fd7c84 100644 --- a/src/datasource-zabbix/utils.ts +++ b/src/datasource-zabbix/utils.ts @@ -450,7 +450,7 @@ export function convertZabbixUnit(zabbixUnit: string): string { export function getValueMapping(item, valueMappings: any[]): ValueMapping[] | null { const { valuemapid } = item; - const mapping = valueMappings.find(m => m.valuemapid === valuemapid); + const mapping = valueMappings?.find(m => m.valuemapid === valuemapid); if (!mapping) { return null; } diff --git a/src/datasource-zabbix/zabbix/connectors/zabbix_api/zabbixAPIConnector.ts b/src/datasource-zabbix/zabbix/connectors/zabbix_api/zabbixAPIConnector.ts index cf1fef0..ae16863 100644 --- a/src/datasource-zabbix/zabbix/connectors/zabbix_api/zabbixAPIConnector.ts +++ b/src/datasource-zabbix/zabbix/connectors/zabbix_api/zabbixAPIConnector.ts @@ -204,11 +204,15 @@ export class ZabbixAPIConnector { const params = { itemids: itemids, output: [ - 'name', 'key_', + 'name', + 'key_', 'value_type', 'hostid', 'status', - 'state' + 'state', + 'units', + 'valuemapid', + 'delay' ], webitems: true, selectHosts: ['hostid', 'name']