Don't align IT services data

This commit is contained in:
Alexander Zobnin
2021-08-06 13:22:43 +03:00
parent 2949675dba
commit 2a836b9ecd
3 changed files with 8 additions and 7 deletions

View File

@@ -69,7 +69,8 @@ type ZabbixAPIResourceResponse struct {
// QueryModel model
type QueryModel struct {
// Deprecated `mode` field, use QueryType instead
Mode int64 `json:"mode"`
Mode int64 `json:"mode"`
QueryType string `json:"queryType"`
Group QueryFilter `json:"group"`
Host QueryFilter `json:"host"`
@@ -84,7 +85,6 @@ type QueryModel struct {
// Direct from the gRPC interfaces
RefID string `json:"-"`
QueryType string `json:"-"`
TimeRange backend.TimeRange `json:"-"`
MaxDataPoints int64 `json:"-"`
Interval time.Duration `json:"-"`

View File

@@ -108,7 +108,7 @@ func (ds *ZabbixDatasourceInstance) applyDataProcessing(ctx context.Context, que
// Align time series data if possible
useTrend := ds.isUseTrend(query.TimeRange)
disableDataAlignment := query.Options.DisableDataAlignment || ds.Settings.DisableDataAlignment
disableDataAlignment := query.Options.DisableDataAlignment || ds.Settings.DisableDataAlignment || query.QueryType == MODE_ITSERVICE
if !disableDataAlignment {
if useTrend {
for _, s := range series {

View File

@@ -220,16 +220,17 @@ export function itServiceResponseToTimeSeries(response: any, interval) {
ts.push({ time: dp[i][1] / 1000, value: dp[i][0] });
}
let intervalS = utils.parseItemInterval(interval);
if (intervalS === 0) {
intervalS = null;
// Convert interval to nanoseconds in order to unmarshall it on the backend to time.Duration
let intervalNS = utils.parseItemInterval(interval) * 1000000;
if (intervalNS === 0) {
intervalNS = null;
}
const timeSeriesData = {
ts: ts,
meta: {
name: s.target,
interval: intervalS,
interval: null,
item: {},
}
};