Telegraf field drop not working

Hi,

I have field names coming in that look like this:

/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_alarm
/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_warning
/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_low_alarm

I added them to the fielddrop array in my Telegraf.conf file to be dropped but they are not dropping.
Fielddrop looks like this:

fielddrop = ["/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_alarm","/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_warning","/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_low_alarm"]

Apparently, the rename functionality from the Processor Plugin is able to rename them.
Rename looks like this:

[[processors.rename.replace]]
    field = "/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_alarm"
    dest = "lane-number-0-lane-laser-bias-current-high-alarm"
[[processors.rename.replace]]
    field = "/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_warning"
    dest = "lane-number-0-lane-laser-bias-current-high-warning"
[[processors.rename.replace]]
    field = "/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_low_alarm"
    dest = "lane-number-0-lane-laser-bias-current-low-alarm"

I think I need to escape some characters but don’t know who to do that in Telegraf. I think its the single quote ‘0’ or the brackets that are causing this problem.

Thank you.
Mo

I also tried adding the renamed fields to the fielddrop array but that also did not work.

Have you tried something like this with a wildcard at the end?

fielddrop = ["/interfaces/interface/optics/*"]
1 Like

Where in the config did you add the fielddrop?

Sweet that worked. I ended up using the * at the beginning of the string since I have many strings that begin the same but end differently so now I can choose which fields to drop.

I assign fielddrop inside of the [[inputs.jti_openconfig_telemetry]] plugin.

[[inputs.jti_openconfig_telemetry]]
  fielddrop = ["/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_alarm","/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_high_warning","/interfaces/interface/optics/lanediags/lane[lane_number='0']/lane_laser_bias_current_low_alarm"]