From 54f4a3a38b22787738187522f78cde1d687cab4f Mon Sep 17 00:00:00 2001 From: Sven Rebhan <36194019+srebhan@users.noreply.github.com> Date: Mon, 28 Nov 2022 20:58:43 +0100 Subject: [PATCH] fix(inputs.gnmi): Do not provide empty prefix for subscription request. (#12275) --- plugins/inputs/gnmi/gnmi.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugins/inputs/gnmi/gnmi.go b/plugins/inputs/gnmi/gnmi.go index 8d3303328..79f7367cb 100644 --- a/plugins/inputs/gnmi/gnmi.go +++ b/plugins/inputs/gnmi/gnmi.go @@ -255,6 +255,12 @@ func (c *GNMI) newSubscribeRequest() (*gnmiLib.SubscribeRequest, error) { return nil, err } + // Do not provide an empty prefix. Required for Huawei NE40 router v8.21 + // (and possibly others). See https://github.com/influxdata/telegraf/issues/12273. + if gnmiPath.Origin == "" && gnmiPath.Target == "" && len(gnmiPath.Elem) == 0 { + gnmiPath = nil + } + if c.Encoding != "proto" && c.Encoding != "json" && c.Encoding != "json_ietf" && c.Encoding != "bytes" { return nil, fmt.Errorf("unsupported encoding %s", c.Encoding) }