mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Converter: Add support for parsing error & warning from prometheus results (#48721)
This commit is contained in:
@@ -19,6 +19,9 @@ func logf(format string, a ...interface{}) {
|
|||||||
func ReadPrometheusStyleResult(iter *jsoniter.Iterator) *backend.DataResponse {
|
func ReadPrometheusStyleResult(iter *jsoniter.Iterator) *backend.DataResponse {
|
||||||
var rsp *backend.DataResponse
|
var rsp *backend.DataResponse
|
||||||
status := "unknown"
|
status := "unknown"
|
||||||
|
errorType := ""
|
||||||
|
err := ""
|
||||||
|
warnings := []data.Notice{}
|
||||||
|
|
||||||
for l1Field := iter.ReadObject(); l1Field != ""; l1Field = iter.ReadObject() {
|
for l1Field := iter.ReadObject(); l1Field != ""; l1Field = iter.ReadObject() {
|
||||||
switch l1Field {
|
switch l1Field {
|
||||||
@@ -28,22 +31,58 @@ func ReadPrometheusStyleResult(iter *jsoniter.Iterator) *backend.DataResponse {
|
|||||||
case "data":
|
case "data":
|
||||||
rsp = readPrometheusData(iter)
|
rsp = readPrometheusData(iter)
|
||||||
|
|
||||||
// case "error":
|
case "error":
|
||||||
// case "errorType":
|
err = iter.ReadString()
|
||||||
// case "warnings":
|
|
||||||
|
case "errorType":
|
||||||
|
errorType = iter.ReadString()
|
||||||
|
|
||||||
|
case "warnings":
|
||||||
|
warnings = readWarnings(iter)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
v := iter.Read()
|
v := iter.Read()
|
||||||
logf("[ROOT] TODO, support key: %s / %v\n", l1Field, v)
|
logf("[ROOT] TODO, support key: %s / %v\n", l1Field, v)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if status != "success" {
|
if status == "error" {
|
||||||
logf("ERROR: %s\n", status)
|
return &backend.DataResponse{
|
||||||
|
Error: fmt.Errorf("%s: %s", errorType, err),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(warnings) > 0 {
|
||||||
|
for _, frame := range rsp.Frames {
|
||||||
|
if frame.Meta == nil {
|
||||||
|
frame.Meta = &data.FrameMeta{}
|
||||||
|
}
|
||||||
|
frame.Meta.Notices = warnings
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return rsp
|
return rsp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func readWarnings(iter *jsoniter.Iterator) []data.Notice {
|
||||||
|
warnings := []data.Notice{}
|
||||||
|
if iter.WhatIsNext() != jsoniter.ArrayValue {
|
||||||
|
return warnings
|
||||||
|
}
|
||||||
|
|
||||||
|
for iter.ReadArray() {
|
||||||
|
if iter.WhatIsNext() == jsoniter.StringValue {
|
||||||
|
notice := data.Notice{
|
||||||
|
Severity: data.NoticeSeverityWarning,
|
||||||
|
Text: iter.ReadString(),
|
||||||
|
}
|
||||||
|
warnings = append(warnings, notice)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return warnings
|
||||||
|
}
|
||||||
|
|
||||||
func readPrometheusData(iter *jsoniter.Iterator) *backend.DataResponse {
|
func readPrometheusData(iter *jsoniter.Iterator) *backend.DataResponse {
|
||||||
t := iter.WhatIsNext()
|
t := iter.WhatIsNext()
|
||||||
if t == jsoniter.ArrayValue {
|
if t == jsoniter.ArrayValue {
|
||||||
|
|||||||
@@ -20,6 +20,8 @@ func TestReadPromFrames(t *testing.T) {
|
|||||||
"prom-matrix-with-nans",
|
"prom-matrix-with-nans",
|
||||||
"prom-vector",
|
"prom-vector",
|
||||||
"prom-series",
|
"prom-series",
|
||||||
|
"prom-warnings",
|
||||||
|
"prom-error",
|
||||||
"prom-exemplars",
|
"prom-exemplars",
|
||||||
"loki-streams-a",
|
"loki-streams-a",
|
||||||
"loki-streams-b",
|
"loki-streams-b",
|
||||||
@@ -59,6 +61,11 @@ func TestReadPromFrames(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// skip checking golden file for error response. it's not currently supported
|
||||||
|
if name == "prom-error" {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
fpath = path.Join("testdata", name+"-golden.txt")
|
fpath = path.Join("testdata", name+"-golden.txt")
|
||||||
err = experimental.CheckGoldenDataResponse(fpath, rsp, true)
|
err = experimental.CheckGoldenDataResponse(fpath, rsp, true)
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
|
|||||||
3
pkg/util/converter/testdata/prom-error-frame.json
vendored
Normal file
3
pkg/util/converter/testdata/prom-error-frame.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"error": "bad_data: invalid parameter \"start\": cannot parse \"\" to a valid timestamp"
|
||||||
|
}
|
||||||
3
pkg/util/converter/testdata/prom-error-golden.txt
vendored
Normal file
3
pkg/util/converter/testdata/prom-error-golden.txt
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
ERROR: bad_data: invalid parameter "start": cannot parse "" to a valid timestamp====== TEST DATA RESPONSE (arrow base64) ======
|
||||||
|
ERROR=bad_data: invalid parameter "start": cannot parse "" to a valid timestamp
|
||||||
5
pkg/util/converter/testdata/prom-error.json
vendored
Normal file
5
pkg/util/converter/testdata/prom-error.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"status": "error",
|
||||||
|
"errorType": "bad_data",
|
||||||
|
"error": "invalid parameter \"start\": cannot parse \"\" to a valid timestamp"
|
||||||
|
}
|
||||||
263
pkg/util/converter/testdata/prom-warnings-frame.json
vendored
Normal file
263
pkg/util/converter/testdata/prom-warnings-frame.json
vendored
Normal file
@@ -0,0 +1,263 @@
|
|||||||
|
{
|
||||||
|
"frames": [
|
||||||
|
{
|
||||||
|
"schema": {
|
||||||
|
"meta": {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"name": "Time",
|
||||||
|
"type": "time",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "time.Time"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "up",
|
||||||
|
"type": "number",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "float64"
|
||||||
|
},
|
||||||
|
"labels": {
|
||||||
|
"instance": "localhost:9090",
|
||||||
|
"job": "prometheus"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"data": {
|
||||||
|
"values": [
|
||||||
|
[
|
||||||
|
1435781451781
|
||||||
|
],
|
||||||
|
[
|
||||||
|
1
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"schema": {
|
||||||
|
"meta": {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"name": "Time",
|
||||||
|
"type": "time",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "time.Time"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "up",
|
||||||
|
"type": "number",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "float64"
|
||||||
|
},
|
||||||
|
"labels": {
|
||||||
|
"instance": "localhost:9100",
|
||||||
|
"job": "node"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"data": {
|
||||||
|
"values": [
|
||||||
|
[
|
||||||
|
1435781451781
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"schema": {
|
||||||
|
"meta": {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"name": "Time",
|
||||||
|
"type": "time",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "time.Time"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Value",
|
||||||
|
"type": "number",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "float64"
|
||||||
|
},
|
||||||
|
"labels": {
|
||||||
|
"level": "error",
|
||||||
|
"location": "moon"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"data": {
|
||||||
|
"values": [
|
||||||
|
[
|
||||||
|
1645029699000
|
||||||
|
],
|
||||||
|
[
|
||||||
|
null
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"entities": [
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"Inf": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"schema": {
|
||||||
|
"meta": {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"name": "Time",
|
||||||
|
"type": "time",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "time.Time"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Value",
|
||||||
|
"type": "number",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "float64"
|
||||||
|
},
|
||||||
|
"labels": {
|
||||||
|
"level": "info",
|
||||||
|
"location": "moon"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"data": {
|
||||||
|
"values": [
|
||||||
|
[
|
||||||
|
1645029699000
|
||||||
|
],
|
||||||
|
[
|
||||||
|
null
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"entities": [
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"NegInf": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"schema": {
|
||||||
|
"meta": {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"name": "Time",
|
||||||
|
"type": "time",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "time.Time"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Value",
|
||||||
|
"type": "number",
|
||||||
|
"typeInfo": {
|
||||||
|
"frame": "float64"
|
||||||
|
},
|
||||||
|
"labels": {
|
||||||
|
"level": "debug",
|
||||||
|
"location": "moon"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"data": {
|
||||||
|
"values": [
|
||||||
|
[
|
||||||
|
1645029699000
|
||||||
|
],
|
||||||
|
[
|
||||||
|
null
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"entities": [
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"NaN": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
132
pkg/util/converter/testdata/prom-warnings-golden.txt
vendored
Normal file
132
pkg/util/converter/testdata/prom-warnings-golden.txt
vendored
Normal file
@@ -0,0 +1,132 @@
|
|||||||
|
🌟 This was machine generated. Do not edit. 🌟
|
||||||
|
|
||||||
|
Frame[0] {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Name:
|
||||||
|
Dimensions: 2 Fields by 1 Rows
|
||||||
|
+-----------------------------------+-------------------------------------------------+
|
||||||
|
| Name: Time | Name: up |
|
||||||
|
| Labels: | Labels: instance=localhost:9090, job=prometheus |
|
||||||
|
| Type: []time.Time | Type: []float64 |
|
||||||
|
+-----------------------------------+-------------------------------------------------+
|
||||||
|
| 2015-07-01 20:10:51.781 +0000 UTC | 1 |
|
||||||
|
+-----------------------------------+-------------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Frame[1] {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Name:
|
||||||
|
Dimensions: 2 Fields by 1 Rows
|
||||||
|
+-----------------------------------+-------------------------------------------+
|
||||||
|
| Name: Time | Name: up |
|
||||||
|
| Labels: | Labels: instance=localhost:9100, job=node |
|
||||||
|
| Type: []time.Time | Type: []float64 |
|
||||||
|
+-----------------------------------+-------------------------------------------+
|
||||||
|
| 2015-07-01 20:10:51.781 +0000 UTC | 0 |
|
||||||
|
+-----------------------------------+-------------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Frame[2] {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Name:
|
||||||
|
Dimensions: 2 Fields by 1 Rows
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
| Name: Time | Name: Value |
|
||||||
|
| Labels: | Labels: level=error, location=moon |
|
||||||
|
| Type: []time.Time | Type: []float64 |
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
| 2022-02-16 16:41:39 +0000 UTC | +Inf |
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Frame[3] {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Name:
|
||||||
|
Dimensions: 2 Fields by 1 Rows
|
||||||
|
+-------------------------------+-----------------------------------+
|
||||||
|
| Name: Time | Name: Value |
|
||||||
|
| Labels: | Labels: level=info, location=moon |
|
||||||
|
| Type: []time.Time | Type: []float64 |
|
||||||
|
+-------------------------------+-----------------------------------+
|
||||||
|
| 2022-02-16 16:41:39 +0000 UTC | -Inf |
|
||||||
|
+-------------------------------+-----------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Frame[4] {
|
||||||
|
"type": "timeseries-many",
|
||||||
|
"notices": [
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"severity": "warning",
|
||||||
|
"text": "warning 2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Name:
|
||||||
|
Dimensions: 2 Fields by 1 Rows
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
| Name: Time | Name: Value |
|
||||||
|
| Labels: | Labels: level=debug, location=moon |
|
||||||
|
| Type: []time.Time | Type: []float64 |
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
| 2022-02-16 16:41:39 +0000 UTC | NaN |
|
||||||
|
+-------------------------------+------------------------------------+
|
||||||
|
|
||||||
|
|
||||||
|
====== TEST DATA RESPONSE (arrow base64) ======
|
||||||
|
FRAME=QVJST1cxAAD/////UAIAABAAAAAAAAoADgAMAAsABAAKAAAAFAAAAAAAAAEEAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAAQP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABg/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAID+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAAMQAAAAEAAAAVv///xQAAACMAAAAjAAAAAAAAAOMAAAAAgAAACgAAAAEAAAASP///wgAAAAMAAAAAgAAAHVwAAAEAAAAbmFtZQAAAABo////CAAAADwAAAAwAAAAeyJpbnN0YW5jZSI6ImxvY2FsaG9zdDo5MDkwIiwiam9iIjoicHJvbWV0aGV1cyJ9AAAAAAYAAABsYWJlbHMAAAAAAACK////AAACAAIAAAB1cAAAAAASABgAFAAAABMADAAAAAgABAASAAAAFAAAAEQAAABMAAAAAAAACkwAAAABAAAADAAAAAgADAAIAAQACAAAAAgAAAAQAAAABAAAAFRpbWUAAAAABAAAAG5hbWUAAAAAAAAAAAAABgAIAAYABgAAAAAAAwAEAAAAVGltZQAAAAD/////uAAAABQAAAAAAAAADAAWABQAEwAMAAQADAAAABAAAAAAAAAAFAAAAAAAAAMEAAoAGAAMAAgABAAKAAAAFAAAAFgAAAABAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAABAS4CQn+vsEwAAAAAAAPA/EAAAAAwAFAASAAwACAAEAAwAAAAQAAAALAAAADwAAAAAAAQAAQAAAGACAAAAAAAAwAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAMAAAACAAEAAoAAAAIAAAA7AAAAAMAAABMAAAAKAAAAAQAAABA/v//CAAAAAwAAAAAAAAAAAAAAAUAAAByZWZJZAAAAGD+//8IAAAADAAAAAAAAAAAAAAABAAAAG5hbWUAAAAAgP7//wgAAACEAAAAegAAAHsidHlwZSI6InRpbWVzZXJpZXMtbWFueSIsIm5vdGljZXMiOlt7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDEifSx7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDIifV19AAAEAAAAbWV0YQAAAAACAAAAxAAAAAQAAABW////FAAAAIwAAACMAAAAAAAAA4wAAAACAAAAKAAAAAQAAABI////CAAAAAwAAAACAAAAdXAAAAQAAABuYW1lAAAAAGj///8IAAAAPAAAADAAAAB7Imluc3RhbmNlIjoibG9jYWxob3N0OjkwOTAiLCJqb2IiOiJwcm9tZXRoZXVzIn0AAAAABgAAAGxhYmVscwAAAAAAAIr///8AAAIAAgAAAHVwAAAAABIAGAAUAAAAEwAMAAAACAAEABIAAAAUAAAARAAAAEwAAAAAAAAKTAAAAAEAAAAMAAAACAAMAAgABAAIAAAACAAAABAAAAAEAAAAVGltZQAAAAAEAAAAbmFtZQAAAAAAAAAAAAAGAAgABgAGAAAAAAADAAQAAABUaW1lAAAAAIACAABBUlJPVzE=
|
||||||
|
FRAME=QVJST1cxAAD/////SAIAABAAAAAAAAoADgAMAAsABAAKAAAAFAAAAAAAAAEEAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAASP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABo/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAIj+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAALwAAAAEAAAAXv///xQAAACEAAAAhAAAAAAAAAOEAAAAAgAAACgAAAAEAAAAUP///wgAAAAMAAAAAgAAAHVwAAAEAAAAbmFtZQAAAABw////CAAAADQAAAAqAAAAeyJpbnN0YW5jZSI6ImxvY2FsaG9zdDo5MTAwIiwiam9iIjoibm9kZSJ9AAAGAAAAbGFiZWxzAAAAAAAAiv///wAAAgACAAAAdXAAAAAAEgAYABQAAAATAAwAAAAIAAQAEgAAABQAAABEAAAATAAAAAAAAApMAAAAAQAAAAwAAAAIAAwACAAEAAgAAAAIAAAAEAAAAAQAAABUaW1lAAAAAAQAAABuYW1lAAAAAAAAAAAAAAYACAAGAAYAAAAAAAMABAAAAFRpbWUAAAAA/////7gAAAAUAAAAAAAAAAwAFgAUABMADAAEAAwAAAAQAAAAAAAAABQAAAAAAAADBAAKABgADAAIAAQACgAAABQAAABYAAAAAQAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAQEuAkJ/r7BMAAAAAAAAAABAAAAAMABQAEgAMAAgABAAMAAAAEAAAACwAAAA8AAAAAAAEAAEAAABYAgAAAAAAAMAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAASP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABo/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAIj+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAALwAAAAEAAAAXv///xQAAACEAAAAhAAAAAAAAAOEAAAAAgAAACgAAAAEAAAAUP///wgAAAAMAAAAAgAAAHVwAAAEAAAAbmFtZQAAAABw////CAAAADQAAAAqAAAAeyJpbnN0YW5jZSI6ImxvY2FsaG9zdDo5MTAwIiwiam9iIjoibm9kZSJ9AAAGAAAAbGFiZWxzAAAAAAAAiv///wAAAgACAAAAdXAAAAAAEgAYABQAAAATAAwAAAAIAAQAEgAAABQAAABEAAAATAAAAAAAAApMAAAAAQAAAAwAAAAIAAwACAAEAAgAAAAIAAAAEAAAAAQAAABUaW1lAAAAAAQAAABuYW1lAAAAAAAAAAAAAAYACAAGAAYAAAAAAAMABAAAAFRpbWUAAAAAeAIAAEFSUk9XMQ==
|
||||||
|
FRAME=QVJST1cxAAD/////SAIAABAAAAAAAAoADgAMAAsABAAKAAAAFAAAAAAAAAEEAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAATP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABs/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAIz+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAALgAAAAEAAAAYv///xQAAACAAAAAgAAAAAAAAAOAAAAAAgAAACwAAAAEAAAAVP///wgAAAAQAAAABQAAAFZhbHVlAAAABAAAAG5hbWUAAAAAeP///wgAAAAsAAAAIwAAAHsibGV2ZWwiOiJlcnJvciIsImxvY2F0aW9uIjoibW9vbiJ9AAYAAABsYWJlbHMAAAAAAACK////AAACAAUAAABWYWx1ZQASABgAFAAAABMADAAAAAgABAASAAAAFAAAAEQAAABMAAAAAAAACkwAAAABAAAADAAAAAgADAAIAAQACAAAAAgAAAAQAAAABAAAAFRpbWUAAAAABAAAAG5hbWUAAAAAAAAAAAAABgAIAAYABgAAAAAAAwAEAAAAVGltZQAAAAAAAAAA/////7gAAAAUAAAAAAAAAAwAFgAUABMADAAEAAwAAAAQAAAAAAAAABQAAAAAAAADBAAKABgADAAIAAQACgAAABQAAABYAAAAAQAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAN7cpctR1BYAAAAAAADwfxAAAAAMABQAEgAMAAgABAAMAAAAEAAAACwAAAA4AAAAAAAEAAEAAABYAgAAAAAAAMAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAACgAMAAAACAAEAAoAAAAIAAAA7AAAAAMAAABMAAAAKAAAAAQAAABM/v//CAAAAAwAAAAAAAAAAAAAAAUAAAByZWZJZAAAAGz+//8IAAAADAAAAAAAAAAAAAAABAAAAG5hbWUAAAAAjP7//wgAAACEAAAAegAAAHsidHlwZSI6InRpbWVzZXJpZXMtbWFueSIsIm5vdGljZXMiOlt7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDEifSx7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDIifV19AAAEAAAAbWV0YQAAAAACAAAAuAAAAAQAAABi////FAAAAIAAAACAAAAAAAAAA4AAAAACAAAALAAAAAQAAABU////CAAAABAAAAAFAAAAVmFsdWUAAAAEAAAAbmFtZQAAAAB4////CAAAACwAAAAjAAAAeyJsZXZlbCI6ImVycm9yIiwibG9jYXRpb24iOiJtb29uIn0ABgAAAGxhYmVscwAAAAAAAIr///8AAAIABQAAAFZhbHVlABIAGAAUAAAAEwAMAAAACAAEABIAAAAUAAAARAAAAEwAAAAAAAAKTAAAAAEAAAAMAAAACAAMAAgABAAIAAAACAAAABAAAAAEAAAAVGltZQAAAAAEAAAAbmFtZQAAAAAAAAAAAAAGAAgABgAGAAAAAAADAAQAAABUaW1lAAAAAHACAABBUlJPVzE=
|
||||||
|
FRAME=QVJST1cxAAD/////SAIAABAAAAAAAAoADgAMAAsABAAKAAAAFAAAAAAAAAEEAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAATP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABs/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAIz+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAALgAAAAEAAAAYv///xQAAACAAAAAgAAAAAAAAAOAAAAAAgAAACwAAAAEAAAAVP///wgAAAAQAAAABQAAAFZhbHVlAAAABAAAAG5hbWUAAAAAeP///wgAAAAsAAAAIgAAAHsibGV2ZWwiOiJpbmZvIiwibG9jYXRpb24iOiJtb29uIn0AAAYAAABsYWJlbHMAAAAAAACK////AAACAAUAAABWYWx1ZQASABgAFAAAABMADAAAAAgABAASAAAAFAAAAEQAAABMAAAAAAAACkwAAAABAAAADAAAAAgADAAIAAQACAAAAAgAAAAQAAAABAAAAFRpbWUAAAAABAAAAG5hbWUAAAAAAAAAAAAABgAIAAYABgAAAAAAAwAEAAAAVGltZQAAAAAAAAAA/////7gAAAAUAAAAAAAAAAwAFgAUABMADAAEAAwAAAAQAAAAAAAAABQAAAAAAAADBAAKABgADAAIAAQACgAAABQAAABYAAAAAQAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAN7cpctR1BYAAAAAAADw/xAAAAAMABQAEgAMAAgABAAMAAAAEAAAACwAAAA4AAAAAAAEAAEAAABYAgAAAAAAAMAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAACgAMAAAACAAEAAoAAAAIAAAA7AAAAAMAAABMAAAAKAAAAAQAAABM/v//CAAAAAwAAAAAAAAAAAAAAAUAAAByZWZJZAAAAGz+//8IAAAADAAAAAAAAAAAAAAABAAAAG5hbWUAAAAAjP7//wgAAACEAAAAegAAAHsidHlwZSI6InRpbWVzZXJpZXMtbWFueSIsIm5vdGljZXMiOlt7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDEifSx7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDIifV19AAAEAAAAbWV0YQAAAAACAAAAuAAAAAQAAABi////FAAAAIAAAACAAAAAAAAAA4AAAAACAAAALAAAAAQAAABU////CAAAABAAAAAFAAAAVmFsdWUAAAAEAAAAbmFtZQAAAAB4////CAAAACwAAAAiAAAAeyJsZXZlbCI6ImluZm8iLCJsb2NhdGlvbiI6Im1vb24ifQAABgAAAGxhYmVscwAAAAAAAIr///8AAAIABQAAAFZhbHVlABIAGAAUAAAAEwAMAAAACAAEABIAAAAUAAAARAAAAEwAAAAAAAAKTAAAAAEAAAAMAAAACAAMAAgABAAIAAAACAAAABAAAAAEAAAAVGltZQAAAAAEAAAAbmFtZQAAAAAAAAAAAAAGAAgABgAGAAAAAAADAAQAAABUaW1lAAAAAHACAABBUlJPVzE=
|
||||||
|
FRAME=QVJST1cxAAD/////SAIAABAAAAAAAAoADgAMAAsABAAKAAAAFAAAAAAAAAEEAAoADAAAAAgABAAKAAAACAAAAOwAAAADAAAATAAAACgAAAAEAAAATP7//wgAAAAMAAAAAAAAAAAAAAAFAAAAcmVmSWQAAABs/v//CAAAAAwAAAAAAAAAAAAAAAQAAABuYW1lAAAAAIz+//8IAAAAhAAAAHoAAAB7InR5cGUiOiJ0aW1lc2VyaWVzLW1hbnkiLCJub3RpY2VzIjpbeyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAxIn0seyJzZXZlcml0eSI6Indhcm5pbmciLCJ0ZXh0Ijoid2FybmluZyAyIn1dfQAABAAAAG1ldGEAAAAAAgAAALgAAAAEAAAAYv///xQAAACAAAAAgAAAAAAAAAOAAAAAAgAAACwAAAAEAAAAVP///wgAAAAQAAAABQAAAFZhbHVlAAAABAAAAG5hbWUAAAAAeP///wgAAAAsAAAAIwAAAHsibGV2ZWwiOiJkZWJ1ZyIsImxvY2F0aW9uIjoibW9vbiJ9AAYAAABsYWJlbHMAAAAAAACK////AAACAAUAAABWYWx1ZQASABgAFAAAABMADAAAAAgABAASAAAAFAAAAEQAAABMAAAAAAAACkwAAAABAAAADAAAAAgADAAIAAQACAAAAAgAAAAQAAAABAAAAFRpbWUAAAAABAAAAG5hbWUAAAAAAAAAAAAABgAIAAYABgAAAAAAAwAEAAAAVGltZQAAAAAAAAAA/////7gAAAAUAAAAAAAAAAwAFgAUABMADAAEAAwAAAAQAAAAAAAAABQAAAAAAAADBAAKABgADAAIAAQACgAAABQAAABYAAAAAQAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAN7cpctR1BYBAAAAAAD4fxAAAAAMABQAEgAMAAgABAAMAAAAEAAAACwAAAA4AAAAAAAEAAEAAABYAgAAAAAAAMAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAACgAMAAAACAAEAAoAAAAIAAAA7AAAAAMAAABMAAAAKAAAAAQAAABM/v//CAAAAAwAAAAAAAAAAAAAAAUAAAByZWZJZAAAAGz+//8IAAAADAAAAAAAAAAAAAAABAAAAG5hbWUAAAAAjP7//wgAAACEAAAAegAAAHsidHlwZSI6InRpbWVzZXJpZXMtbWFueSIsIm5vdGljZXMiOlt7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDEifSx7InNldmVyaXR5Ijoid2FybmluZyIsInRleHQiOiJ3YXJuaW5nIDIifV19AAAEAAAAbWV0YQAAAAACAAAAuAAAAAQAAABi////FAAAAIAAAACAAAAAAAAAA4AAAAACAAAALAAAAAQAAABU////CAAAABAAAAAFAAAAVmFsdWUAAAAEAAAAbmFtZQAAAAB4////CAAAACwAAAAjAAAAeyJsZXZlbCI6ImRlYnVnIiwibG9jYXRpb24iOiJtb29uIn0ABgAAAGxhYmVscwAAAAAAAIr///8AAAIABQAAAFZhbHVlABIAGAAUAAAAEwAMAAAACAAEABIAAAAUAAAARAAAAEwAAAAAAAAKTAAAAAEAAAAMAAAACAAMAAgABAAIAAAACAAAABAAAAAEAAAAVGltZQAAAAAEAAAAbmFtZQAAAAAAAAAAAAAGAAgABgAGAAAAAAADAAQAAABUaW1lAAAAAHACAABBUlJPVzE=
|
||||||
37
pkg/util/converter/testdata/prom-warnings.json
vendored
Normal file
37
pkg/util/converter/testdata/prom-warnings.json
vendored
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"status" : "success",
|
||||||
|
"data" : {
|
||||||
|
"resultType" : "vector",
|
||||||
|
"result" : [
|
||||||
|
{
|
||||||
|
"metric" : {
|
||||||
|
"__name__" : "up",
|
||||||
|
"job" : "prometheus",
|
||||||
|
"instance" : "localhost:9090"
|
||||||
|
},
|
||||||
|
"value": [ 1435781451.781, "1" ]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"metric" : {
|
||||||
|
"__name__" : "up",
|
||||||
|
"job" : "node",
|
||||||
|
"instance" : "localhost:9100"
|
||||||
|
},
|
||||||
|
"value" : [ 1435781451.781, "0" ]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"metric": { "level": "error", "location": "moon"},
|
||||||
|
"value": [1645029699, "+Inf"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"metric": { "level": "info", "location": "moon" },
|
||||||
|
"value": [1645029699, "-Inf"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"metric": { "level": "debug", "location": "moon" },
|
||||||
|
"value": [1645029699, "NaN"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"warnings" : ["warning 1", "warning 2"]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user