Fix handling value mappings for ItemID mode, fix #1148

This commit is contained in:
Alexander Zobnin
2021-01-28 11:25:03 +03:00
parent cee10f54bf
commit 884f4d02c6
3 changed files with 8 additions and 4 deletions

View File

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

View File

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

View File

@@ -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']