You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by qi...@apache.org on 2023/05/08 09:45:39 UTC
[skywalking-grafana-plugins] 04/04: feat: update config
This is an automated email from the ASF dual-hosted git repository.
qiuxiafan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-grafana-plugins.git
commit 4778ed9ce05fbb47f974e53eed757a0996454172
Author: Fine0830 <fa...@gmail.com>
AuthorDate: Mon May 8 17:44:45 2023 +0800
feat: update config
---
src/components/QueryEditor.tsx | 4 ++--
src/datasource.ts | 16 ++++++++--------
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/components/QueryEditor.tsx b/src/components/QueryEditor.tsx
index 757b33f..1d51020 100644
--- a/src/components/QueryEditor.tsx
+++ b/src/components/QueryEditor.tsx
@@ -1,5 +1,5 @@
import React, { ChangeEvent } from 'react';
-import { InlineField, Input, Alert } from '@grafana/ui';
+import { InlineField, Input } from '@grafana/ui';
import { QueryEditorProps } from '@grafana/data';
import { DataSource } from '../datasource';
import { MyDataSourceOptions, MyQuery } from '../types';
@@ -27,7 +27,7 @@ export function QueryEditor({ query, onChange, onRunQuery }: Props) {
const n = nodeMetrics.find((d: {name: string}) => !d.name);
const e = edgeMetrics.find((d: {name: string, type: string}) => !(d.name && d.type));
if (e || n) {
- return;
+ throw new Error('Bad data');
}
onRunQuery();
} catch(e) {
diff --git a/src/datasource.ts b/src/datasource.ts
index 292e638..42a5af7 100644
--- a/src/datasource.ts
+++ b/src/datasource.ts
@@ -110,7 +110,7 @@ export class DataSource extends DataSourceApi<MyQuery, MyDataSourceOptions> {
nodes,
calls,
nodeMetrics: nodeMetricsResp ? {...nodeMetricsResp, config: nodeMetrics} : undefined,
- edgeMetrics: edgeMetricsResp ? {...edgeMetricsResp, config: serverMetrics} : undefined,
+ edgeMetrics: edgeMetricsResp ? {...edgeMetricsResp, config: edgeMetrics} : undefined,
});
const {nodeFieldTypes, edgeFieldTypes} = this.setFieldTypes({
nodeMetrics: nodeMetricsResp ? {...nodeMetricsResp, config: nodeMetrics} : undefined,
@@ -173,7 +173,7 @@ export class DataSource extends DataSourceApi<MyQuery, MyDataSourceOptions> {
return metrics;
}
- async queryMetrics(params: any[], ids: string[], duration: DurationTime) {
+ async queryMetrics(params: MetricData[], ids: string[], duration: DurationTime) {
const names = params.map((d: MetricData) => d.name);
const m = this.queryTopologyMetrics(names, ids, duration);
const metricJson = await this.doRequest(m);
@@ -205,9 +205,9 @@ export class DataSource extends DataSourceApi<MyQuery, MyDataSourceOptions> {
setFieldTypes(params: {nodeMetrics: Recordable, edgeMetrics: Recordable}) {
const nodeMetrics = params.nodeMetrics || {config: [], data: {}};
- const edgeServerMetrics = params.edgeMetrics || {config: [], data: {}};
+ const edgeMetrics = params.edgeMetrics || {config: [], data: {}};
const nodeFieldTypes = this.getTypes(nodeMetrics);
- const edgeFieldTypes = this.getTypes(edgeServerMetrics);
+ const edgeFieldTypes = this.getTypes(edgeMetrics);
return {nodeFieldTypes, edgeFieldTypes};
}
@@ -215,11 +215,12 @@ export class DataSource extends DataSourceApi<MyQuery, MyDataSourceOptions> {
getTypes(metrics: Recordable) {
const types = Object.keys(metrics.data).map((k: string, index: number) => {
const c = metrics.config.find((d: MetricData) => d.name === k) || {};
+ const config = {displayName: c.label, unit: c.unit};
if (index === 0) {
- return { name: 'mainstat', type: FieldType.number, config: {unit: c.unit}};
+ return { name: 'mainstat', type: FieldType.number, config};
}
if (index === 1) {
- return { name: 'secondarystat', type: FieldType.number, config: {unit: c.unit}};
+ return { name: 'secondarystat', type: FieldType.number, config};
}
return { name: `detail__${k}`, type: FieldType.number, config: {displayName: c.label || k, unit: c.unit} };
@@ -402,8 +403,7 @@ export class DataSource extends DataSourceApi<MyQuery, MyDataSourceOptions> {
const utcTime = len + offset;
return new Date(utcTime + 3600000 * utc);
- };
-
+ }
async testDatasource() {
// Implement a health check for your data source.
return {