From b84b5f93382b116d0f2c1b7f1ef30ea8fcff4a95 Mon Sep 17 00:00:00 2001 From: Qiuxia Fan Date: Fri, 25 Mar 2022 21:29:30 +0800 Subject: [PATCH] update list --- src/hooks/useProcessor.ts | 17 ++++++++++++----- src/views/dashboard/configuration/Widget.vue | 2 +- .../metric/{MetricOptions.vue => Options.vue} | 4 ++-- .../{StandardOptions.vue => Standard.vue} | 1 - src/views/dashboard/controls/Widget.vue | 2 +- src/views/dashboard/graphs/Card.vue | 4 ++-- src/views/dashboard/graphs/ServiceList.vue | 12 ++++++++++-- 7 files changed, 28 insertions(+), 14 deletions(-) rename src/views/dashboard/configuration/widget/metric/{MetricOptions.vue => Options.vue} (98%) rename src/views/dashboard/configuration/widget/metric/{StandardOptions.vue => Standard.vue} (98%) diff --git a/src/hooks/useProcessor.ts b/src/hooks/useProcessor.ts index e7b62495..b03f6524 100644 --- a/src/hooks/useProcessor.ts +++ b/src/hooks/useProcessor.ts @@ -257,7 +257,11 @@ export function useQueryPodsMetrics( export function usePodsSource( pods: Array, resp: { errors: string; data: { [key: string]: any } }, - config: { metrics: string[]; metricTypes: string[] } + config: { + metrics: string[]; + metricTypes: string[]; + metricConfig: MetricConfigOpt[]; + } ): any { if (resp.errors) { ElMessage.error(resp.errors); @@ -265,13 +269,14 @@ export function usePodsSource( } const data = pods.map((d: Instance | any, idx: number) => { config.metrics.map((name: string, index: number) => { + const c = (config.metricConfig && config.metricConfig[index]) || {}; const key = name + idx + index; if (config.metricTypes[index] === MetricQueryTypes.ReadMetricsValue) { - d[name] = resp.data[key]; + d[name] = aggregation(resp.data[key], c); } if (config.metricTypes[index] === MetricQueryTypes.ReadMetricsValues) { - d[name] = resp.data[key].values.values.map( - (d: { value: number }) => d.value + d[name] = resp.data[key].values.values.map((d: { value: number }) => + aggregation(d.value, c) ); } }); @@ -307,7 +312,7 @@ export function useQueryTopologyMetrics(metrics: string[], ids: string[]) { } function aggregation(val: number, config: any): number | string { - let data: number | string = val; + let data: number | string = Number(val); switch (config.calculation) { case Calculations.Percentage: @@ -329,5 +334,7 @@ function aggregation(val: number, config: any): number | string { data; break; } + + console.log(data); return data; } diff --git a/src/views/dashboard/configuration/Widget.vue b/src/views/dashboard/configuration/Widget.vue index de348379..402cf111 100644 --- a/src/views/dashboard/configuration/Widget.vue +++ b/src/views/dashboard/configuration/Widget.vue @@ -85,7 +85,7 @@ import { Option } from "@/types/app"; import graphs from "../graphs"; import configs from "./widget/graph-styles"; import WidgetOptions from "./widget/WidgetOptions.vue"; -import MetricOptions from "./widget/metric/MetricOptions.vue"; +import MetricOptions from "./widget/metric/Options.vue"; export default defineComponent({ name: "WidgetEdit", diff --git a/src/views/dashboard/configuration/widget/metric/MetricOptions.vue b/src/views/dashboard/configuration/widget/metric/Options.vue similarity index 98% rename from src/views/dashboard/configuration/widget/metric/MetricOptions.vue rename to src/views/dashboard/configuration/widget/metric/Options.vue index 17837a43..823407bd 100644 --- a/src/views/dashboard/configuration/widget/metric/MetricOptions.vue +++ b/src/views/dashboard/configuration/widget/metric/Options.vue @@ -55,7 +55,7 @@ limitations under the License. --> - + metricTypes: data.metricTypes, i: data.i, }" - :standard="data.standard" + :standard="data.metricConfig" :needQuery="needQuery" /> diff --git a/src/views/dashboard/graphs/Card.vue b/src/views/dashboard/graphs/Card.vue index 1b0422e2..58baa321 100644 --- a/src/views/dashboard/graphs/Card.vue +++ b/src/views/dashboard/graphs/Card.vue @@ -31,7 +31,7 @@ limitations under the License. -->