mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Azure Monitor: Fix frame display name with multiple resources (#61750)
This commit is contained in:
parent
b44df6c8d1
commit
d4e0e75c0c
@ -317,7 +317,10 @@ func (e *AzureMonitorDatasource) parseResponse(amr types.AzureMonitorResponse, q
|
|||||||
Unit: toGrafanaUnit(amr.Value[0].Unit),
|
Unit: toGrafanaUnit(amr.Value[0].Unit),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
resourceID := labels["microsoft.resourceid"]
|
resourceID, ok := labels["microsoft.resourceid"]
|
||||||
|
if !ok {
|
||||||
|
resourceID = labels["Microsoft.ResourceId"]
|
||||||
|
}
|
||||||
resourceIDSlice := strings.Split(resourceID, "/")
|
resourceIDSlice := strings.Split(resourceID, "/")
|
||||||
resourceName := ""
|
resourceName := ""
|
||||||
if len(resourceIDSlice) > 1 {
|
if len(resourceIDSlice) > 1 {
|
||||||
@ -328,10 +331,18 @@ func (e *AzureMonitorDatasource) parseResponse(amr types.AzureMonitorResponse, q
|
|||||||
resourceName = extractResourceNameFromMetricsURL(query.URL)
|
resourceName = extractResourceNameFromMetricsURL(query.URL)
|
||||||
resourceID = extractResourceIDFromMetricsURL(query.URL)
|
resourceID = extractResourceIDFromMetricsURL(query.URL)
|
||||||
}
|
}
|
||||||
|
displayName := ""
|
||||||
if query.Alias != "" {
|
if query.Alias != "" {
|
||||||
displayName := formatAzureMonitorLegendKey(query.Alias, resourceName,
|
displayName = formatAzureMonitorLegendKey(query.Alias, resourceName,
|
||||||
amr.Value[0].Name.LocalizedValue, "", "", amr.Namespace, amr.Value[0].ID, labels)
|
amr.Value[0].Name.LocalizedValue, "", "", amr.Namespace, amr.Value[0].ID, labels)
|
||||||
|
} else if len(labels) > 0 {
|
||||||
|
// If labels are set, it will be used as the legend so we need to set a more user-friendly name
|
||||||
|
displayName = amr.Value[0].Name.LocalizedValue
|
||||||
|
if resourceName != "" {
|
||||||
|
displayName += " " + resourceName
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if displayName != "" {
|
||||||
if dataField.Config != nil {
|
if dataField.Config != nil {
|
||||||
dataField.Config.DisplayName = displayName
|
dataField.Config.DisplayName = displayName
|
||||||
} else {
|
} else {
|
||||||
|
@ -501,21 +501,24 @@ func TestAzureMonitorParseResponse(t *testing.T) {
|
|||||||
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
||||||
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
||||||
data.NewField("Blob Count", data.Labels{"blobtype": "PageBlob"},
|
data.NewField("Blob Count", data.Labels{"blobtype": "PageBlob"},
|
||||||
[]*float64{ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), nil}).SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}})),
|
[]*float64{ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), ptr.Float64(3), nil}).
|
||||||
|
SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}, DisplayName: "Blob Count grafana"})),
|
||||||
|
|
||||||
data.NewFrame("",
|
data.NewFrame("",
|
||||||
data.NewField("Time", nil,
|
data.NewField("Time", nil,
|
||||||
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
||||||
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
||||||
data.NewField("Blob Count", data.Labels{"blobtype": "BlockBlob"},
|
data.NewField("Blob Count", data.Labels{"blobtype": "BlockBlob"},
|
||||||
[]*float64{ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), nil}).SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}})),
|
[]*float64{ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), ptr.Float64(1), nil}).
|
||||||
|
SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}, DisplayName: "Blob Count grafana"})),
|
||||||
|
|
||||||
data.NewFrame("",
|
data.NewFrame("",
|
||||||
data.NewField("Time", nil,
|
data.NewField("Time", nil,
|
||||||
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
makeDates(time.Date(2019, 2, 9, 15, 21, 0, 0, time.UTC), 6, time.Hour),
|
||||||
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
||||||
data.NewField("Blob Count", data.Labels{"blobtype": "Azure Data Lake Storage"},
|
data.NewField("Blob Count", data.Labels{"blobtype": "Azure Data Lake Storage"},
|
||||||
[]*float64{ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), nil}).SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}})),
|
[]*float64{ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), ptr.Float64(0), nil}).
|
||||||
|
SetConfig(&data.FieldConfig{Unit: "short", Links: []data.DataLink{averageLink}, DisplayName: "Blob Count grafana"})),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -685,7 +688,7 @@ func TestAzureMonitorParseResponse(t *testing.T) {
|
|||||||
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
).SetConfig(&data.FieldConfig{Links: []data.DataLink{averageLink}}),
|
||||||
data.NewField("Percentage CPU", data.Labels{"microsoft.resourceid": "/subscriptions/12345678-aaaa-bbbb-cccc-123456789abc/resourceGroups/grafanastaging/providers/Microsoft.Compute/virtualMachines/grafana"}, []*float64{
|
data.NewField("Percentage CPU", data.Labels{"microsoft.resourceid": "/subscriptions/12345678-aaaa-bbbb-cccc-123456789abc/resourceGroups/grafanastaging/providers/Microsoft.Compute/virtualMachines/grafana"}, []*float64{
|
||||||
ptr.Float64(2.0875), ptr.Float64(2.1525), ptr.Float64(2.155), ptr.Float64(3.6925), ptr.Float64(2.44),
|
ptr.Float64(2.0875), ptr.Float64(2.1525), ptr.Float64(2.155), ptr.Float64(3.6925), ptr.Float64(2.44),
|
||||||
}).SetConfig(&data.FieldConfig{Unit: "percent", Links: []data.DataLink{averageLink}}),
|
}).SetConfig(&data.FieldConfig{Unit: "percent", Links: []data.DataLink{averageLink}, DisplayName: "Percentage CPU grafana"}),
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user