From 3d7fb1cb06999cfe943ae2a4b02ecc6eb744a142 Mon Sep 17 00:00:00 2001 From: Chris Mark Date: Tue, 7 Apr 2020 14:13:58 +0300 Subject: [PATCH] Fix istio mapping (#17562) (cherry picked from commit df311e57be92e6e8b226e7bd03e7d877663115e4) --- metricbeat/docs/fields.asciidoc | 66 ++++-- x-pack/metricbeat/module/istio/fields.go | 2 +- .../module/istio/mixer/_meta/data.json | 3 +- .../module/istio/mixer/_meta/fields.yml | 6 +- .../_meta/testdata/docs.plain-expected.json | 48 ++-- x-pack/metricbeat/module/istio/mixer/mixer.go | 2 +- .../module/istio/pilot/_meta/fields.yml | 47 ++-- .../istio/pilot/_meta/testdata/docs.plain | 46 ++++ .../_meta/testdata/docs.plain-expected.json | 216 ++++++++++++------ x-pack/metricbeat/module/istio/pilot/pilot.go | 2 +- 10 files changed, 296 insertions(+), 142 deletions(-) diff --git a/metricbeat/docs/fields.asciidoc b/metricbeat/docs/fields.asciidoc index 360f3f9c6fa..30fc06d0a01 100644 --- a/metricbeat/docs/fields.asciidoc +++ b/metricbeat/docs/fields.asciidoc @@ -19299,13 +19299,13 @@ type: long -- -*`istio.mixer.handler`*:: +*`istio.mixer.handler.name`*:: + -- The name of the daemon handler -type: long +type: keyword -- @@ -19315,7 +19315,7 @@ type: long The name of the variety -type: long +type: keyword -- @@ -19332,7 +19332,7 @@ Contains statistics related to the Istio pilot service Count of concurrent xDS client connections for Pilot. -type: integer +type: long -- @@ -19342,14 +19342,34 @@ type: integer Count of xDS messages sent, as well as errors building or sending xDS messages for lds, rds, cds and eds. -type: integer +type: long + +-- + +*`istio.pilot.xds.push.time.ms.bucket.*`*:: ++ +-- +Total time Pilot takes to push lds, rds, cds and eds, histogram buckets in milliseconds. + + +type: object + +-- + +*`istio.pilot.xds.push.time.ms.sum`*:: ++ +-- +Total time Pilot takes to push lds, rds, cds and eds, histogram sum of times in milliseconds. + + +type: long -- -*`istio.pilot.xds.push.time.sec`*:: +*`istio.pilot.xds.push.time.ms.count`*:: + -- -Total time in seconds Pilot takes to push lds, rds, cds and eds. +Total time Pilot takes to push lds, rds, cds and eds, histogram count of times. type: long @@ -19362,7 +19382,7 @@ type: long Instances for each cluster, as of last push. Zero instances is an error. -type: object +type: long -- @@ -19372,7 +19392,7 @@ type: object Number of errors (timeouts) initiating push context. -type: integer +type: long -- @@ -19382,7 +19402,7 @@ type: integer Total number of internal XDS errors in pilot. -type: integer +type: long -- @@ -19392,7 +19412,7 @@ type: integer Number of conflicting inbound listeners. -type: integer +type: long -- @@ -19402,7 +19422,7 @@ type: integer Number of conflicting wildcard http listeners with current wildcard tcp listener. -type: integer +type: long -- @@ -19412,7 +19432,7 @@ type: integer Number of conflicting HTTP listeners with well known HTTPS ports. -type: integer +type: long -- @@ -19422,7 +19442,7 @@ type: integer Number of conflicting wildcard tcp listeners with current wildcard http listener. -type: integer +type: long -- @@ -19432,7 +19452,7 @@ type: integer Number of conflicting tcp listeners with current tcp listener. -type: integer +type: long -- @@ -19456,30 +19476,30 @@ type: long -- -*`istio.pilot.services`*:: +*`istio.pilot.proxy.conv.ms.count`*:: + -- -Total services known to pilot. +Time needed by Pilot to push Envoy configurations, histogram count of times. -type: integer +type: long -- -*`istio.pilot.virt.services`*:: +*`istio.pilot.services`*:: + -- -Total virtual services known to pilot. +Total services known to pilot. type: integer -- -*`istio.pilot.proxy.conv.ms.count`*:: +*`istio.pilot.virt.services`*:: + -- -Time needed by Pilot to push Envoy configurations, histogram count of times. +Total virtual services known to pilot. type: long @@ -19492,7 +19512,7 @@ type: long Pods not found in the endpoint table, possibly invalid. -type: object +type: long -- diff --git a/x-pack/metricbeat/module/istio/fields.go b/x-pack/metricbeat/module/istio/fields.go index 51c2f60e66f..d270c2628ba 100644 --- a/x-pack/metricbeat/module/istio/fields.go +++ b/x-pack/metricbeat/module/istio/fields.go @@ -19,5 +19,5 @@ func init() { // AssetIstio returns asset data. // This is the base64 encoded gzipped contents of module/istio. func AssetIstio() string { - return "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" + return "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" } diff --git a/x-pack/metricbeat/module/istio/mixer/_meta/data.json b/x-pack/metricbeat/module/istio/mixer/_meta/data.json index d19f35c26bb..978fd549330 100644 --- a/x-pack/metricbeat/module/istio/mixer/_meta/data.json +++ b/x-pack/metricbeat/module/istio/mixer/_meta/data.json @@ -8,7 +8,8 @@ "istio": { "mixer": { "handler": { - "daemons": 1 + "daemons": 1, + "name": "prometheus.istio-system" } } }, diff --git a/x-pack/metricbeat/module/istio/mixer/_meta/fields.yml b/x-pack/metricbeat/module/istio/mixer/_meta/fields.yml index 0e1fe6643ba..04efd635f8a 100644 --- a/x-pack/metricbeat/module/istio/mixer/_meta/fields.yml +++ b/x-pack/metricbeat/module/istio/mixer/_meta/fields.yml @@ -88,11 +88,11 @@ type: long description: > The number of handlers that were re-used during config transition. - - name: handler - type: long + - name: handler.name + type: keyword description: > The name of the daemon handler - name: variety - type: long + type: keyword description: > The name of the variety diff --git a/x-pack/metricbeat/module/istio/mixer/_meta/testdata/docs.plain-expected.json b/x-pack/metricbeat/module/istio/mixer/_meta/testdata/docs.plain-expected.json index 600e33e83d5..95e749c59df 100644 --- a/x-pack/metricbeat/module/istio/mixer/_meta/testdata/docs.plain-expected.json +++ b/x-pack/metricbeat/module/istio/mixer/_meta/testdata/docs.plain-expected.json @@ -8,7 +8,8 @@ "istio": { "mixer": { "handler": { - "daemons": 1 + "daemons": 1, + "name": "prometheus.istio-system" } } }, @@ -42,6 +43,29 @@ "type": "istio" } }, + { + "event": { + "dataset": "istio.mixer", + "duration": 115000, + "module": "istio" + }, + "istio": { + "mixer": { + "handler": { + "daemons": 4, + "name": "kubernetesenv.istio-system" + } + } + }, + "metricset": { + "name": "mixer", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "istio" + } + }, { "event": { "dataset": "istio.mixer", @@ -118,28 +142,6 @@ "type": "istio" } }, - { - "event": { - "dataset": "istio.mixer", - "duration": 115000, - "module": "istio" - }, - "istio": { - "mixer": { - "handler": { - "daemons": 4 - } - } - }, - "metricset": { - "name": "mixer", - "period": 10000 - }, - "service": { - "address": "127.0.0.1:55555", - "type": "istio" - } - }, { "event": { "dataset": "istio.mixer", diff --git a/x-pack/metricbeat/module/istio/mixer/mixer.go b/x-pack/metricbeat/module/istio/mixer/mixer.go index cf324ef2da5..357624485d8 100644 --- a/x-pack/metricbeat/module/istio/mixer/mixer.go +++ b/x-pack/metricbeat/module/istio/mixer/mixer.go @@ -48,7 +48,7 @@ var mapping = &prometheus.MetricsMapping{ }, Labels: map[string]prometheus.LabelMap{ - "handler": prometheus.KeyLabel("handler"), + "handler": prometheus.KeyLabel("handler.name"), "variety": prometheus.KeyLabel("variety"), }, } diff --git a/x-pack/metricbeat/module/istio/pilot/_meta/fields.yml b/x-pack/metricbeat/module/istio/pilot/_meta/fields.yml index 6830fb8643c..af220be0faa 100644 --- a/x-pack/metricbeat/module/istio/pilot/_meta/fields.yml +++ b/x-pack/metricbeat/module/istio/pilot/_meta/fields.yml @@ -5,48 +5,57 @@ release: beta fields: - name: xds.count - type: integer + type: long description: > Count of concurrent xDS client connections for Pilot. - name: xds.pushes - type: integer + type: long description: > Count of xDS messages sent, as well as errors building or sending xDS messages for lds, rds, cds and eds. - - name: xds.push.time.sec + - name: xds.push.time.ms.bucket.* + type: object + object_type: long + description: > + Total time Pilot takes to push lds, rds, cds and eds, histogram buckets in milliseconds. + - name: xds.push.time.ms.sum type: long description: > - Total time in seconds Pilot takes to push lds, rds, cds and eds. + Total time Pilot takes to push lds, rds, cds and eds, histogram sum of times in milliseconds. + - name: xds.push.time.ms.count + type: long + description: > + Total time Pilot takes to push lds, rds, cds and eds, histogram count of times. - name: xds.eds.instances - type: object + type: long description: > Instances for each cluster, as of last push. Zero instances is an error. - name: xds.push.context.errors - type: integer + type: long description: > Number of errors (timeouts) initiating push context. - name: xds.internal.errors - type: integer + type: long description: > Total number of internal XDS errors in pilot. - name: conflict.listener.inbound - type: integer + type: long description: > Number of conflicting inbound listeners. - name: conflict.listener.outbound.http.over.current.tcp - type: integer + type: long description: > Number of conflicting wildcard http listeners with current wildcard tcp listener. - name: conflict.listener.outbound.http.over.https - type: integer + type: long description: > Number of conflicting HTTP listeners with well known HTTPS ports. - name: conflict.listener.outbound.tcp.over.current.http - type: integer + type: long description: > Number of conflicting wildcard tcp listeners with current wildcard http listener. - name: conflict.listener.outbound.tcp.over.current.tcp - type: integer + type: long description: > Number of conflicting tcp listeners with current tcp listener. - name: proxy.conv.ms.bucket.* @@ -58,20 +67,20 @@ type: long description: > Time needed by Pilot to push Envoy configurations, histogram sum of times in milliseconds. + - name: proxy.conv.ms.count + type: long + description: > + Time needed by Pilot to push Envoy configurations, histogram count of times. - name: services type: integer description: > Total services known to pilot. - name: virt.services - type: integer - description: > - Total virtual services known to pilot. - - name: proxy.conv.ms.count type: long description: > - Time needed by Pilot to push Envoy configurations, histogram count of times. + Total virtual services known to pilot. - name: no.ip - type: object + type: long description: > Pods not found in the endpoint table, possibly invalid. - name: cluster @@ -81,4 +90,4 @@ - name: type type: text description: > - The Envoy proxy configuration type. \ No newline at end of file + The Envoy proxy configuration type. diff --git a/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain b/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain index 78a99d0154e..9907bbc612f 100644 --- a/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain +++ b/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain @@ -290,6 +290,52 @@ pilot_xds_eds_instances{cluster="outbound|9091||istio-telemetry.istio-system.svc pilot_xds_eds_instances{cluster="outbound|9153||kube-dns.kube-system.svc.cluster.local"} 2 pilot_xds_eds_instances{cluster="outbound|9411||zipkin.istio-system.svc.cluster.local"} 1 pilot_xds_eds_instances{cluster="outbound|9901||istio-galley.istio-system.svc.cluster.local"} 1 +# HELP pilot_xds_push_time Total time in seconds Pilot takes to push lds, rds, cds and eds. +# TYPE pilot_xds_push_time histogram +pilot_xds_push_time_bucket{type="cds",le="0.01"} 7 +pilot_xds_push_time_bucket{type="cds",le="0.1"} 7 +pilot_xds_push_time_bucket{type="cds",le="1"} 7 +pilot_xds_push_time_bucket{type="cds",le="3"} 7 +pilot_xds_push_time_bucket{type="cds",le="5"} 7 +pilot_xds_push_time_bucket{type="cds",le="10"} 7 +pilot_xds_push_time_bucket{type="cds",le="20"} 7 +pilot_xds_push_time_bucket{type="cds",le="30"} 7 +pilot_xds_push_time_bucket{type="cds",le="+Inf"} 7 +pilot_xds_push_time_sum{type="cds"} 0.005687965 +pilot_xds_push_time_count{type="cds"} 7 +pilot_xds_push_time_bucket{type="eds",le="0.01"} 7 +pilot_xds_push_time_bucket{type="eds",le="0.1"} 7 +pilot_xds_push_time_bucket{type="eds",le="1"} 7 +pilot_xds_push_time_bucket{type="eds",le="3"} 7 +pilot_xds_push_time_bucket{type="eds",le="5"} 7 +pilot_xds_push_time_bucket{type="eds",le="10"} 7 +pilot_xds_push_time_bucket{type="eds",le="20"} 7 +pilot_xds_push_time_bucket{type="eds",le="30"} 7 +pilot_xds_push_time_bucket{type="eds",le="+Inf"} 7 +pilot_xds_push_time_sum{type="eds"} 0.01707105 +pilot_xds_push_time_count{type="eds"} 7 +pilot_xds_push_time_bucket{type="lds",le="0.01"} 7 +pilot_xds_push_time_bucket{type="lds",le="0.1"} 7 +pilot_xds_push_time_bucket{type="lds",le="1"} 7 +pilot_xds_push_time_bucket{type="lds",le="3"} 7 +pilot_xds_push_time_bucket{type="lds",le="5"} 7 +pilot_xds_push_time_bucket{type="lds",le="10"} 7 +pilot_xds_push_time_bucket{type="lds",le="20"} 7 +pilot_xds_push_time_bucket{type="lds",le="30"} 7 +pilot_xds_push_time_bucket{type="lds",le="+Inf"} 7 +pilot_xds_push_time_sum{type="lds"} 0.0036923069999999997 +pilot_xds_push_time_count{type="lds"} 7 +pilot_xds_push_time_bucket{type="rds",le="0.01"} 3 +pilot_xds_push_time_bucket{type="rds",le="0.1"} 3 +pilot_xds_push_time_bucket{type="rds",le="1"} 3 +pilot_xds_push_time_bucket{type="rds",le="3"} 3 +pilot_xds_push_time_bucket{type="rds",le="5"} 3 +pilot_xds_push_time_bucket{type="rds",le="10"} 3 +pilot_xds_push_time_bucket{type="rds",le="20"} 3 +pilot_xds_push_time_bucket{type="rds",le="30"} 3 +pilot_xds_push_time_bucket{type="rds",le="+Inf"} 3 +pilot_xds_push_time_sum{type="rds"} 0.00041217400000000007 +pilot_xds_push_time_count{type="rds"} 3 # HELP pilot_xds_push_context_errors Number of errors (timeouts) initiating push context. # TYPE pilot_xds_push_context_errors counter pilot_xds_push_context_errors 0 diff --git a/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain-expected.json b/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain-expected.json index 1e5b26bc30a..4e0814dd51d 100644 --- a/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain-expected.json +++ b/x-pack/metricbeat/module/istio/pilot/_meta/testdata/docs.plain-expected.json @@ -399,6 +399,48 @@ "type": "istio" } }, + { + "event": { + "dataset": "istio.pilot", + "duration": 115000, + "module": "istio" + }, + "istio": { + "pilot": { + "type": "cds", + "xds": { + "push": { + "time": { + "ms": { + "bucket": { + "+Inf": 7, + "10": 7, + "100": 7, + "1000": 7, + "10000": 7, + "20000": 7, + "3000": 7, + "30000": 7, + "5000": 7 + }, + "count": 7, + "sum": 5.687964999999999 + } + } + }, + "pushes": 250 + } + } + }, + "metricset": { + "name": "pilot", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "type": "istio" + } + }, { "event": { "dataset": "istio.pilot", @@ -857,11 +899,28 @@ }, "istio": { "pilot": { - "cluster": "outbound_.443_._.kubernetes.default.svc.cluster.local", + "type": "lds", "xds": { - "eds": { - "instances": 1 - } + "push": { + "time": { + "ms": { + "bucket": { + "+Inf": 7, + "10": 7, + "100": 7, + "1000": 7, + "10000": 7, + "20000": 7, + "3000": 7, + "30000": 7, + "5000": 7 + }, + "count": 7, + "sum": 3.6923069999999996 + } + } + }, + "pushes": 248 } } }, @@ -882,9 +941,11 @@ }, "istio": { "pilot": { - "type": "lds_senderr", + "cluster": "outbound_.443_._.kubernetes.default.svc.cluster.local", "xds": { - "pushes": 2 + "eds": { + "instances": 1 + } } } }, @@ -905,11 +966,9 @@ }, "istio": { "pilot": { - "cluster": "outbound|15029||istio-ingressgateway.istio-system.svc.cluster.local", + "type": "lds_senderr", "xds": { - "eds": { - "instances": 1 - } + "pushes": 2 } } }, @@ -930,7 +989,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.42422_._.istio-telemetry.istio-system.svc.cluster.local", + "cluster": "outbound|15029||istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -955,7 +1014,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|443||istio-sidecar-injector.istio-system.svc.cluster.local", + "cluster": "outbound_.42422_._.istio-telemetry.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -980,7 +1039,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|443||istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound|443||istio-sidecar-injector.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1005,7 +1064,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15011_._.istio-pilot.istio-system.svc.cluster.local", + "cluster": "outbound|443||istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1030,7 +1089,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|3000||grafana.istio-system.svc.cluster.local", + "cluster": "outbound_.15011_._.istio-pilot.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1055,9 +1114,11 @@ }, "istio": { "pilot": { - "type": "lds", + "cluster": "outbound|3000||grafana.istio-system.svc.cluster.local", "xds": { - "pushes": 248 + "eds": { + "instances": 1 + } } } }, @@ -1145,29 +1206,6 @@ "type": "istio" } }, - { - "event": { - "dataset": "istio.pilot", - "duration": 115000, - "module": "istio" - }, - "istio": { - "pilot": { - "type": "eds", - "xds": { - "pushes": 309 - } - } - }, - "metricset": { - "name": "pilot", - "period": 10000 - }, - "service": { - "address": "127.0.0.1:55555", - "type": "istio" - } - }, { "event": { "dataset": "istio.pilot", @@ -1729,9 +1767,11 @@ }, "istio": { "pilot": { - "type": "rds", + "cluster": "outbound_.15014_._.istio-telemetry.istio-system.svc.cluster.local", "xds": { - "pushes": 181 + "eds": { + "instances": 1 + } } } }, @@ -1752,7 +1792,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15014_._.istio-telemetry.istio-system.svc.cluster.local", + "cluster": "outbound_.80_._.httpbin.default.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1777,7 +1817,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.80_._.httpbin.default.svc.cluster.local", + "cluster": "outbound|443||istio-galley.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1802,7 +1842,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|443||istio-galley.istio-system.svc.cluster.local", + "cluster": "outbound|15443||istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1827,7 +1867,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|15443||istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound_.443_._.istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1852,7 +1892,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.443_._.istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound_.15004_._.istio-policy.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1877,9 +1917,11 @@ }, "istio": { "pilot": { - "type": "cds", + "cluster": "outbound_.15020_._.istio-ingressgateway.istio-system.svc.cluster.local", "xds": { - "pushes": 250 + "eds": { + "instances": 1 + } } } }, @@ -1900,7 +1942,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15004_._.istio-policy.istio-system.svc.cluster.local", + "cluster": "outbound|15031||istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1925,7 +1967,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15020_._.istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound|15030||istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1950,7 +1992,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|15031||istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound|9901||istio-galley.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -1975,7 +2017,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|15030||istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound|9091||istio-policy.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2000,10 +2042,10 @@ }, "istio": { "pilot": { - "cluster": "outbound|9901||istio-galley.istio-system.svc.cluster.local", + "cluster": "outbound_.53_._.kube-dns.kube-system.svc.cluster.local", "xds": { "eds": { - "instances": 1 + "instances": 2 } } } @@ -2025,11 +2067,28 @@ }, "istio": { "pilot": { - "cluster": "outbound|9091||istio-policy.istio-system.svc.cluster.local", + "type": "rds", "xds": { - "eds": { - "instances": 1 - } + "push": { + "time": { + "ms": { + "bucket": { + "+Inf": 3, + "10": 3, + "100": 3, + "1000": 3, + "10000": 3, + "20000": 3, + "3000": 3, + "30000": 3, + "5000": 3 + }, + "count": 3, + "sum": 0.4121740000000001 + } + } + }, + "pushes": 181 } } }, @@ -2050,10 +2109,10 @@ }, "istio": { "pilot": { - "cluster": "outbound_.53_._.kube-dns.kube-system.svc.cluster.local", + "cluster": "outbound|9080||details.default.svc.cluster.local", "xds": { "eds": { - "instances": 2 + "instances": 1 } } } @@ -2075,7 +2134,7 @@ }, "istio": { "pilot": { - "cluster": "outbound|9080||details.default.svc.cluster.local", + "cluster": "outbound_.15029_._.istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2100,7 +2159,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15029_._.istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound_.15030_._.istio-ingressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2125,7 +2184,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.15030_._.istio-ingressgateway.istio-system.svc.cluster.local", + "cluster": "outbound_.443_._.istio-egressgateway.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2150,7 +2209,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.443_._.istio-egressgateway.istio-system.svc.cluster.local", + "cluster": "outbound_.80_._.default-http-backend.kube-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2175,7 +2234,7 @@ }, "istio": { "pilot": { - "cluster": "outbound_.80_._.default-http-backend.kube-system.svc.cluster.local", + "cluster": "outbound_.80_._.tracing.istio-system.svc.cluster.local", "xds": { "eds": { "instances": 1 @@ -2200,11 +2259,28 @@ }, "istio": { "pilot": { - "cluster": "outbound_.80_._.tracing.istio-system.svc.cluster.local", + "type": "eds", "xds": { - "eds": { - "instances": 1 - } + "push": { + "time": { + "ms": { + "bucket": { + "+Inf": 7, + "10": 7, + "100": 7, + "1000": 7, + "10000": 7, + "20000": 7, + "3000": 7, + "30000": 7, + "5000": 7 + }, + "count": 7, + "sum": 17.07105 + } + } + }, + "pushes": 309 } } }, diff --git a/x-pack/metricbeat/module/istio/pilot/pilot.go b/x-pack/metricbeat/module/istio/pilot/pilot.go index 7307373c2fb..45d9d6df28d 100644 --- a/x-pack/metricbeat/module/istio/pilot/pilot.go +++ b/x-pack/metricbeat/module/istio/pilot/pilot.go @@ -26,7 +26,7 @@ var mapping = &prometheus.MetricsMapping{ Metrics: map[string]prometheus.MetricMap{ "pilot_xds": prometheus.Metric("xds.count"), "pilot_xds_pushes": prometheus.Metric("xds.pushes"), - "pilot_xds_push_time": prometheus.Metric("xds.push.time.sec"), + "pilot_xds_push_time": prometheus.Metric("xds.push.time.ms", prometheus.OpMultiplyBuckets(1000)), "pilot_xds_eds_instances": prometheus.Metric("xds.eds.instances"), "pilot_xds_push_context_errors": prometheus.Metric("xds.push.context.errors"), "pilot_total_xds_internal_errors": prometheus.Metric("xds.internal.errors"),