mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
remove redundant default value
This commit is contained in:
parent
fe4c77a8a4
commit
2ac1fe2a17
@ -274,6 +274,7 @@ export default class StackdriverDatasource {
|
|||||||
m.service = service;
|
m.service = service;
|
||||||
m.serviceShortName = serviceShortName;
|
m.serviceShortName = serviceShortName;
|
||||||
m.displayName = m.displayName || m.type;
|
m.displayName = m.displayName || m.type;
|
||||||
|
|
||||||
return m;
|
return m;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
<query-editor-row query-ctrl="ctrl" has-text-edit-mode="false">
|
<query-editor-row query-ctrl="ctrl" has-text-edit-mode="false">
|
||||||
<stackdriver-filter target="ctrl.target" refresh="ctrl.refresh()" datasource="ctrl.datasource" default-dropdown-value="ctrl.defaultDropdownValue"
|
<stackdriver-filter target="ctrl.target" refresh="ctrl.refresh()" datasource="ctrl.datasource"></stackdriver-filter>
|
||||||
default-service-value="ctrl.defaultServiceValue"></stackdriver-filter>
|
|
||||||
<stackdriver-aggregation target="ctrl.target" alignment-period="ctrl.lastQueryMeta.alignmentPeriod" refresh="ctrl.refresh()"></stackdriver-aggregation>
|
<stackdriver-aggregation target="ctrl.target" alignment-period="ctrl.lastQueryMeta.alignmentPeriod" refresh="ctrl.refresh()"></stackdriver-aggregation>
|
||||||
<div class="gf-form-inline">
|
<div class="gf-form-inline">
|
||||||
<div class="gf-form">
|
<div class="gf-form">
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
selected="ctrl.service"
|
selected="ctrl.service"
|
||||||
options="ctrl.services"
|
options="ctrl.services"
|
||||||
searchable="false"
|
searchable="false"
|
||||||
placeholder="ctrl.defaultServiceValue"
|
placeholder="'Select Services'"
|
||||||
className=""width-15""
|
className="'width-15'"
|
||||||
></option-picker>
|
></option-picker>
|
||||||
</div>
|
</div>
|
||||||
<div class="gf-form gf-form--grow"><div class="gf-form-label gf-form-label--grow"></div></div>
|
<div class="gf-form gf-form--grow"><div class="gf-form-label gf-form-label--grow"></div></div>
|
||||||
@ -17,11 +17,11 @@
|
|||||||
<span class="gf-form-label width-9 query-keyword">Metric</span>
|
<span class="gf-form-label width-9 query-keyword">Metric</span>
|
||||||
<option-group-picker
|
<option-group-picker
|
||||||
onChange="ctrl.handleMetricTypeChange"
|
onChange="ctrl.handleMetricTypeChange"
|
||||||
selected="ctrl.metricType"
|
selected="ctrl.target.metricType"
|
||||||
groups="ctrl.insertTemplateVariables(ctrl.defaultServiceValue !== ctrl.service ? ctrl.metrics : ctrl.metricGroups)"
|
groups="ctrl.getMetricGroups()"
|
||||||
searchable="true"
|
searchable="true"
|
||||||
placeholder="ctrl.defaultDropdownValue"
|
placeholder="'Select Metric'"
|
||||||
className=""width-15""
|
className="'width-15'"
|
||||||
></option-group-picker>
|
></option-group-picker>
|
||||||
</div>
|
</div>
|
||||||
<div class="gf-form gf-form--grow"><div class="gf-form-label gf-form-label--grow"></div></div>
|
<div class="gf-form gf-form--grow"><div class="gf-form-label gf-form-label--grow"></div></div>
|
||||||
|
@ -34,13 +34,10 @@ export class StackdriverQueryCtrl extends QueryCtrl {
|
|||||||
valueType: any;
|
valueType: any;
|
||||||
};
|
};
|
||||||
|
|
||||||
defaultDropdownValue = 'Select Metric';
|
|
||||||
defaultServiceValue = 'All Services';
|
|
||||||
|
|
||||||
defaults = {
|
defaults = {
|
||||||
defaultProject: 'loading project...',
|
defaultProject: 'loading project...',
|
||||||
metricType: this.defaultDropdownValue,
|
metricType: '',
|
||||||
service: this.defaultServiceValue,
|
service: '',
|
||||||
metric: '',
|
metric: '',
|
||||||
unit: '',
|
unit: '',
|
||||||
aggregation: {
|
aggregation: {
|
||||||
|
@ -15,8 +15,6 @@ export class StackdriverFilter {
|
|||||||
target: '=',
|
target: '=',
|
||||||
datasource: '=',
|
datasource: '=',
|
||||||
refresh: '&',
|
refresh: '&',
|
||||||
defaultDropdownValue: '<',
|
|
||||||
defaultServiceValue: '<',
|
|
||||||
hideGroupBys: '<',
|
hideGroupBys: '<',
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@ -48,9 +46,6 @@ export class StackdriverFilterCtrl {
|
|||||||
constructor(private $scope, private uiSegmentSrv, private templateSrv, private $rootScope) {
|
constructor(private $scope, private uiSegmentSrv, private templateSrv, private $rootScope) {
|
||||||
this.datasource = $scope.datasource;
|
this.datasource = $scope.datasource;
|
||||||
this.target = $scope.target;
|
this.target = $scope.target;
|
||||||
this.metricType = $scope.defaultDropdownValue;
|
|
||||||
this.service = $scope.defaultServiceValue;
|
|
||||||
|
|
||||||
this.metricDescriptors = [];
|
this.metricDescriptors = [];
|
||||||
this.metrics = [];
|
this.metrics = [];
|
||||||
this.metricGroups = [];
|
this.metricGroups = [];
|
||||||
@ -66,7 +61,7 @@ export class StackdriverFilterCtrl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
handleMetricTypeChange(value) {
|
handleMetricTypeChange(value) {
|
||||||
this.metricType = value;
|
this.target.metricType = value;
|
||||||
this.onMetricTypeChange();
|
this.onMetricTypeChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,7 +111,6 @@ export class StackdriverFilterCtrl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getServicesList() {
|
getServicesList() {
|
||||||
const defaultValue = { value: this.$scope.defaultServiceValue, label: this.$scope.defaultServiceValue };
|
|
||||||
const services = this.metricDescriptors.map(m => {
|
const services = this.metricDescriptors.map(m => {
|
||||||
return {
|
return {
|
||||||
value: m.service,
|
value: m.service,
|
||||||
@ -128,10 +122,10 @@ export class StackdriverFilterCtrl {
|
|||||||
this.service = this.target.service;
|
this.service = this.target.service;
|
||||||
}
|
}
|
||||||
|
|
||||||
return services.length > 0 ? [defaultValue, ..._.uniqBy(services, 'value')] : [];
|
return services.length > 0 ? _.uniqBy(services, 'value') : [];
|
||||||
}
|
}
|
||||||
|
|
||||||
getMetricGroups() {
|
getMetricGroupsOld() {
|
||||||
return this.metrics.reduce((acc, curr) => {
|
return this.metrics.reduce((acc, curr) => {
|
||||||
const group = acc.find(group => group.service === curr.service);
|
const group = acc.find(group => group.service === curr.service);
|
||||||
if (group) {
|
if (group) {
|
||||||
@ -150,6 +144,27 @@ export class StackdriverFilterCtrl {
|
|||||||
}, []);
|
}, []);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getMetricGroups() {
|
||||||
|
return [
|
||||||
|
this.getTemplateVariablesGroup(),
|
||||||
|
{
|
||||||
|
label: 'Metrics',
|
||||||
|
options: this.metrics,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
getTemplateVariablesGroup() {
|
||||||
|
return {
|
||||||
|
label: 'Template Variables',
|
||||||
|
options: this.templateSrv.variables.map(v => ({
|
||||||
|
label: `$${v.name}`,
|
||||||
|
value: `$${v.name}`,
|
||||||
|
description: `$${v.definition}`,
|
||||||
|
})),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
insertTemplateVariables(options) {
|
insertTemplateVariables(options) {
|
||||||
const templateVariables = {
|
const templateVariables = {
|
||||||
label: 'Template Variables',
|
label: 'Template Variables',
|
||||||
@ -174,29 +189,28 @@ export class StackdriverFilterCtrl {
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
let result;
|
const metricsByService = metrics.filter(m => m.service === this.target.service);
|
||||||
if (this.target.service === this.$scope.defaultServiceValue) {
|
if (
|
||||||
result = metrics.map(m => ({ ...m, text: `${m.service} - ${m.text}` }));
|
metricsByService.length > 0 &&
|
||||||
} else {
|
!metricsByService.some(m => m.value === this.templateSrv.replace(this.target.metricType))
|
||||||
result = metrics.filter(m => m.service === this.target.service);
|
) {
|
||||||
|
this.target.metricType = metricsByService[0].value;
|
||||||
}
|
}
|
||||||
|
return metricsByService;
|
||||||
if (result.find(m => m.value === this.templateSrv.replace(this.target.metricType))) {
|
|
||||||
this.metricType = this.target.metricType;
|
|
||||||
} else if (result.length > 0) {
|
|
||||||
this.metricType = this.target.metricType = result[0].value;
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async getLabels() {
|
async getLabels() {
|
||||||
this.loadLabelsPromise = new Promise(async resolve => {
|
this.loadLabelsPromise = new Promise(async resolve => {
|
||||||
try {
|
try {
|
||||||
|
if (this.target.metricType) {
|
||||||
const { meta } = await this.datasource.getLabels(this.target.metricType, this.target.refId);
|
const { meta } = await this.datasource.getLabels(this.target.metricType, this.target.refId);
|
||||||
this.metricLabels = meta.metricLabels;
|
this.metricLabels = meta.metricLabels;
|
||||||
this.resourceLabels = meta.resourceLabels;
|
this.resourceLabels = meta.resourceLabels;
|
||||||
this.resourceTypes = meta.resourceTypes;
|
this.resourceTypes = meta.resourceTypes;
|
||||||
resolve();
|
resolve();
|
||||||
|
} else {
|
||||||
|
resolve();
|
||||||
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (error.data && error.data.message) {
|
if (error.data && error.data.message) {
|
||||||
console.log(error.data.message);
|
console.log(error.data.message);
|
||||||
@ -216,7 +230,7 @@ export class StackdriverFilterCtrl {
|
|||||||
this.setMetricType();
|
this.setMetricType();
|
||||||
this.getLabels();
|
this.getLabels();
|
||||||
if (!this.metrics.find(m => m.value === this.target.metricType)) {
|
if (!this.metrics.find(m => m.value === this.target.metricType)) {
|
||||||
this.target.metricType = this.$scope.defaultDropdownValue;
|
this.target.metricType = '';
|
||||||
} else {
|
} else {
|
||||||
this.$scope.refresh();
|
this.$scope.refresh();
|
||||||
}
|
}
|
||||||
@ -229,9 +243,9 @@ export class StackdriverFilterCtrl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
setMetricType() {
|
setMetricType() {
|
||||||
this.target.metricType = this.metricType;
|
// this.target.metricType = this.metricType;
|
||||||
const { valueType, metricKind, unit } = this.metricDescriptors.find(
|
const { valueType, metricKind, unit } = this.metricDescriptors.find(
|
||||||
m => m.type === this.templateSrv.replace(this.metricType)
|
m => m.type === this.templateSrv.replace(this.target.metricType)
|
||||||
);
|
);
|
||||||
this.target.unit = unit;
|
this.target.unit = unit;
|
||||||
this.target.valueType = valueType;
|
this.target.valueType = valueType;
|
||||||
|
@ -409,8 +409,6 @@ function createCtrlWithFakes(existingFilters?: string[]) {
|
|||||||
return 'project';
|
return 'project';
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
defaultDropdownValue: 'Select Metric',
|
|
||||||
defaultServiceValue: 'All Services',
|
|
||||||
refresh: () => {},
|
refresh: () => {},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user