Collecting same event multiple times with OPC-UA Listener Plugin


I am using the opcua_listener plugin from telegraf to get production information from an industrial machine and store it in a SQL database.

Nevertheless, it is not working as I expected since the current register gets collected multiple times even if none of its fields change their status.

Here is an example of what is happening:

As you can see, the 12 pieces produced on the 10/06 at 20h46 got collected multiple times, even if when the timestamp and the monitored fields did not change their values. Note that the database_timestamp is the timestamp assigned by telegraf at the time of the reading.

Here is a view of my opcua_listener telegraf plugin configuration. I have omitted critical information, but the structure is still the same.

  ## Metric name
  name = "opcua_listener"
  endpoint = "*"
  connect_timeout = "10s"
  request_timeout = "5s"
  security_policy = "*"
  security_mode = "*"
  certificate = "*"
  private_key = "*"
  auth_method = "*"
  username = "*"
  password = "*"

  ## Option to select the metric timestamp to use.
  timestamp = "server"

  # strip unneded tags
  tagexclude = ["id", "host"]
  fielddrop = ["Quality"]

  ## Group Metric name.
  name = "production"
  namespace = "2"
  identifier_type = "s"
  default_tags = { Maquina = "M1"}
  ## Node ID Configuration.
  nodes = [
      {name="Pieces", identifier="*"},
      {name="Weight", identifier="*"},

Any help would be highly appreciated.




The OPCUA listener, listens for data and will only collect when one of the triggers is hit. In your case, it appears you have omitted any specific trigger setting so “Status” would get used. Meaning data will get read in if the status changes.

I’m not an OPCUA expert, but you are also dropping the Quality field, is it possible that, that field changes and that is why the data is collected again?