diff --git a/etc/telegraf.conf b/etc/telegraf.conf index e52c5fb06..6f68fef21 100644 --- a/etc/telegraf.conf +++ b/etc/telegraf.conf @@ -4470,6 +4470,12 @@ # ## List of interfaces to ignore when pulling metrics. # # interface_exclude = ["eth1"] # +# ## Plugin behavior for downed interfaces +# ## Available choices: +# ## - expose: collect & report metrics for down interfaces +# ## - skip: ignore interfaces that are marked down +# # down_interfaces = "expose" +# # ## Some drivers declare statistics with extra whitespace, different spacing, # ## and mix cases. This list, when enabled, can be used to clean the keys. # ## Here are the current possible normalizations: @@ -4802,6 +4808,7 @@ # # scopes = ["urn:opc:idm:__myscopes__"] # # ## HTTP Proxy support +# # use_system_proxy = false # # http_proxy_url = "" # # ## Optional TLS Config @@ -6445,7 +6452,7 @@ # ## Maximum time allowed to establish a connect to the endpoint. # # connect_timeout = "10s" # # -# ## Maximum time allowed for a request over the estabilished connection. +# ## Maximum time allowed for a request over the established connection. # # request_timeout = "5s" # # # ## Security policy, one of "None", "Basic128Rsa15", "Basic256", @@ -6484,18 +6491,38 @@ # ## namespace - OPC UA namespace of the node (integer value 0 thru 3) # ## identifier_type - OPC UA ID type (s=string, i=numeric, g=guid, b=opaque) # ## identifier - OPC UA ID (tag as shown in opcua browser) -# ## tags - extra tags to be added to the output metric (optional) -# ## Example: -# ## {name="ProductUri", namespace="0", identifier_type="i", identifier="2262", tags=[["tag1","value1"],["tag2","value2"]]} +# ## tags - extra tags to be added to the output metric (optional); deprecated in 1.25.0; use default_tags +# ## default_tags - extra tags to be added to the output metric (optional) +# ## +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) # # nodes = [ -# # {name="", namespace="", identifier_type="", identifier=""}, -# # {name="", namespace="", identifier_type="", identifier=""}, -# #] +# # {name="", namespace="", identifier_type="", identifier="", tags=[["tag1", "value1"], ["tag2", "value2"]}, +# # {name="", namespace="", identifier_type="", identifier=""}, +# # ] +# # +# ## Bracketed notation +# # [[inputs.opcua.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "value1", tag2 = "value2" } +# # +# # [[inputs.opcua.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" # # # ## Node Group -# ## Sets defaults for OPC UA namespace and ID type so they aren't required in -# ## every node. A group can also have a metric name that overrides the main -# ## plugin metric name. +# ## Sets defaults so they aren't required in every node. +# ## Default values can be set for: +# ## * Metric name +# ## * OPC UA namespace +# ## * Identifier +# ## * Default tags # ## # ## Multiple node groups are allowed # #[[inputs.opcua.group]] @@ -6511,17 +6538,40 @@ # ## namespace, this is used. # # identifier_type = # # +# ## Default tags that are applied to every node in this group. Can be +# ## overwritten in a node by setting a different value for the tag name. +# ## example: default_tags = { tag1 = "value1" } +# # default_tags = {} +# # # ## Node ID Configuration. Array of nodes with the same settings as above. +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) # # nodes = [ -# # {name="", namespace="", identifier_type="", identifier=""}, -# # {name="", namespace="", identifier_type="", identifier=""}, +# # {name="node1", namespace="", identifier_type="", identifier=""}, +# # {name="node2", namespace="", identifier_type="", identifier=""}, # #] +# # +# ## Bracketed notation +# # [[inputs.opcua.group.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "override1", tag2 = "value2" } +# # +# # [[inputs.opcua.group.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" # # ## Enable workarounds required by some devices to work correctly # # [inputs.opcua.workarounds] # ## Set additional valid status codes, StatusOK (0x0) is always considered valid # # additional_valid_status_codes = ["0xC0"] # +# # [inputs.opcua.request_workarounds] # ## Use unregistered reads instead of registered reads # # use_unregistered_reads = false @@ -7774,6 +7824,12 @@ # ## Timeout for metric collections from all servers. Minimum timeout is "1s". # # timeout = "5s" # +# ## Float Parsing - the initial implementation forced any value unable to be +# ## parsed as an int to be a string. Setting this to "float" will attempt to +# ## parse float values as floats and not strings. This would break existing +# ## metrics and may cause issues if a value switches between a float and int. +# # parse_floats = "string" +# # ## Optional TLS Config # # enable_tls = false # # tls_ca = "/etc/telegraf/ca.pem" @@ -9395,6 +9451,143 @@ # data_format = "influx" +# # Retrieve data from OPCUA devices +# [[inputs.opcua]] +# ## Metric name +# # name = "opcua" +# # +# ## OPC UA Endpoint URL +# # endpoint = "opc.tcp://localhost:4840" +# # +# ## Maximum time allowed to establish a connect to the endpoint. +# # connect_timeout = "10s" +# # +# ## Maximum time allowed for a request over the established connection. +# # request_timeout = "5s" +# # +# ## The interval at which the server should at least update its monitored items +# # subscription_interval = "100ms" +# # +# ## Security policy, one of "None", "Basic128Rsa15", "Basic256", +# ## "Basic256Sha256", or "auto" +# # security_policy = "auto" +# # +# ## Security mode, one of "None", "Sign", "SignAndEncrypt", or "auto" +# # security_mode = "auto" +# # +# ## Path to cert.pem. Required when security mode or policy isn't "None". +# ## If cert path is not supplied, self-signed cert and key will be generated. +# # certificate = "/etc/telegraf/cert.pem" +# # +# ## Path to private key.pem. Required when security mode or policy isn't "None". +# ## If key path is not supplied, self-signed cert and key will be generated. +# # private_key = "/etc/telegraf/key.pem" +# # +# ## Authentication Method, one of "Certificate", "UserName", or "Anonymous". To +# ## authenticate using a specific ID, select 'Certificate' or 'UserName' +# # auth_method = "Anonymous" +# # +# ## Username. Required for auth_method = "UserName" +# # username = "" +# # +# ## Password. Required for auth_method = "UserName" +# # password = "" +# # +# ## Option to select the metric timestamp to use. Valid options are: +# ## "gather" -- uses the time of receiving the data in telegraf +# ## "server" -- uses the timestamp provided by the server +# ## "source" -- uses the timestamp provided by the source +# # timestamp = "gather" +# # +# ## Node ID configuration +# ## name - field name to use in the output +# ## namespace - OPC UA namespace of the node (integer value 0 thru 3) +# ## identifier_type - OPC UA ID type (s=string, i=numeric, g=guid, b=opaque) +# ## identifier - OPC UA ID (tag as shown in opcua browser) +# ## default_tags - extra tags to be added to the output metric (optional) +# ## +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) +# # nodes = [ +# # {name="", namespace="", identifier_type="", identifier=""}, +# # {name="", namespace="", identifier_type="", identifier=""}, +# # ] +# # +# ## Bracketed notation +# # [[inputs.opcua.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "value1", tag2 = "value2" } +# # +# # [[inputs.opcua.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # +# ## Node Group +# ## Sets defaults so they aren't required in every node. +# ## Default values can be set for: +# ## * Metric name +# ## * OPC UA namespace +# ## * Identifier +# ## * Default tags +# ## +# ## Multiple node groups are allowed +# #[[inputs.opcua.group]] +# ## Group Metric name. Overrides the top level name. If unset, the +# ## top level name is used. +# # name = +# # +# ## Group default namespace. If a node in the group doesn't set its +# ## namespace, this is used. +# # namespace = +# # +# ## Group default identifier type. If a node in the group doesn't set its +# ## namespace, this is used. +# # identifier_type = +# # +# ## Default tags that are applied to every node in this group. Can be +# ## overwritten in a node by setting a different value for the tag name. +# ## example: default_tags = { tag1 = "value1" } +# # default_tags = {} +# # +# ## Node ID Configuration. Array of nodes with the same settings as above. +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) +# # nodes = [ +# # {name="node1", namespace="", identifier_type="", identifier=""}, +# # {name="node2", namespace="", identifier_type="", identifier=""}, +# #] +# # +# ## Bracketed notation +# # [[inputs.opcua.group.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "override1", tag2 = "value2" } +# # +# # [[inputs.opcua.group.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# +# ## Enable workarounds required by some devices to work correctly +# # [inputs.opcua.workarounds] +# ## Set additional valid status codes, StatusOK (0x0) is always considered valid +# # additional_valid_status_codes = ["0xC0"] +# +# # [inputs.opcua.request_workarounds] +# ## Use unregistered reads instead of registered reads +# # use_unregistered_reads = false + + # # Receive OpenTelemetry traces, metrics, and logs over gRPC # [[inputs.opentelemetry]] # ## Override the default (0.0.0.0:4317) destination OpenTelemetry gRPC service diff --git a/etc/telegraf_windows.conf b/etc/telegraf_windows.conf index e0ff4e028..37459f174 100644 --- a/etc/telegraf_windows.conf +++ b/etc/telegraf_windows.conf @@ -4396,6 +4396,12 @@ # ## List of interfaces to ignore when pulling metrics. # # interface_exclude = ["eth1"] # +# ## Plugin behavior for downed interfaces +# ## Available choices: +# ## - expose: collect & report metrics for down interfaces +# ## - skip: ignore interfaces that are marked down +# # down_interfaces = "expose" +# # ## Some drivers declare statistics with extra whitespace, different spacing, # ## and mix cases. This list, when enabled, can be used to clean the keys. # ## Here are the current possible normalizations: @@ -4728,6 +4734,7 @@ # # scopes = ["urn:opc:idm:__myscopes__"] # # ## HTTP Proxy support +# # use_system_proxy = false # # http_proxy_url = "" # # ## Optional TLS Config @@ -6239,7 +6246,7 @@ # ## Maximum time allowed to establish a connect to the endpoint. # # connect_timeout = "10s" # # -# ## Maximum time allowed for a request over the estabilished connection. +# ## Maximum time allowed for a request over the established connection. # # request_timeout = "5s" # # # ## Security policy, one of "None", "Basic128Rsa15", "Basic256", @@ -6278,18 +6285,38 @@ # ## namespace - OPC UA namespace of the node (integer value 0 thru 3) # ## identifier_type - OPC UA ID type (s=string, i=numeric, g=guid, b=opaque) # ## identifier - OPC UA ID (tag as shown in opcua browser) -# ## tags - extra tags to be added to the output metric (optional) -# ## Example: -# ## {name="ProductUri", namespace="0", identifier_type="i", identifier="2262", tags=[["tag1","value1"],["tag2","value2"]]} +# ## tags - extra tags to be added to the output metric (optional); deprecated in 1.25.0; use default_tags +# ## default_tags - extra tags to be added to the output metric (optional) +# ## +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) # # nodes = [ -# # {name="", namespace="", identifier_type="", identifier=""}, -# # {name="", namespace="", identifier_type="", identifier=""}, -# #] +# # {name="", namespace="", identifier_type="", identifier="", tags=[["tag1", "value1"], ["tag2", "value2"]}, +# # {name="", namespace="", identifier_type="", identifier=""}, +# # ] +# # +# ## Bracketed notation +# # [[inputs.opcua.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "value1", tag2 = "value2" } +# # +# # [[inputs.opcua.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" # # # ## Node Group -# ## Sets defaults for OPC UA namespace and ID type so they aren't required in -# ## every node. A group can also have a metric name that overrides the main -# ## plugin metric name. +# ## Sets defaults so they aren't required in every node. +# ## Default values can be set for: +# ## * Metric name +# ## * OPC UA namespace +# ## * Identifier +# ## * Default tags # ## # ## Multiple node groups are allowed # #[[inputs.opcua.group]] @@ -6305,17 +6332,40 @@ # ## namespace, this is used. # # identifier_type = # # +# ## Default tags that are applied to every node in this group. Can be +# ## overwritten in a node by setting a different value for the tag name. +# ## example: default_tags = { tag1 = "value1" } +# # default_tags = {} +# # # ## Node ID Configuration. Array of nodes with the same settings as above. +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) # # nodes = [ -# # {name="", namespace="", identifier_type="", identifier=""}, -# # {name="", namespace="", identifier_type="", identifier=""}, +# # {name="node1", namespace="", identifier_type="", identifier=""}, +# # {name="node2", namespace="", identifier_type="", identifier=""}, # #] +# # +# ## Bracketed notation +# # [[inputs.opcua.group.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "override1", tag2 = "value2" } +# # +# # [[inputs.opcua.group.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" # # ## Enable workarounds required by some devices to work correctly # # [inputs.opcua.workarounds] # ## Set additional valid status codes, StatusOK (0x0) is always considered valid # # additional_valid_status_codes = ["0xC0"] # +# # [inputs.opcua.request_workarounds] # ## Use unregistered reads instead of registered reads # # use_unregistered_reads = false @@ -7670,6 +7720,12 @@ # ## Timeout for metric collections from all servers. Minimum timeout is "1s". # # timeout = "5s" # +# ## Float Parsing - the initial implementation forced any value unable to be +# ## parsed as an int to be a string. Setting this to "float" will attempt to +# ## parse float values as floats and not strings. This would break existing +# ## metrics and may cause issues if a value switches between a float and int. +# # parse_floats = "string" +# # ## Optional TLS Config # # enable_tls = false # # tls_ca = "/etc/telegraf/ca.pem" @@ -9212,6 +9268,143 @@ # data_format = "influx" +# # Retrieve data from OPCUA devices +# [[inputs.opcua]] +# ## Metric name +# # name = "opcua" +# # +# ## OPC UA Endpoint URL +# # endpoint = "opc.tcp://localhost:4840" +# # +# ## Maximum time allowed to establish a connect to the endpoint. +# # connect_timeout = "10s" +# # +# ## Maximum time allowed for a request over the established connection. +# # request_timeout = "5s" +# # +# ## The interval at which the server should at least update its monitored items +# # subscription_interval = "100ms" +# # +# ## Security policy, one of "None", "Basic128Rsa15", "Basic256", +# ## "Basic256Sha256", or "auto" +# # security_policy = "auto" +# # +# ## Security mode, one of "None", "Sign", "SignAndEncrypt", or "auto" +# # security_mode = "auto" +# # +# ## Path to cert.pem. Required when security mode or policy isn't "None". +# ## If cert path is not supplied, self-signed cert and key will be generated. +# # certificate = "/etc/telegraf/cert.pem" +# # +# ## Path to private key.pem. Required when security mode or policy isn't "None". +# ## If key path is not supplied, self-signed cert and key will be generated. +# # private_key = "/etc/telegraf/key.pem" +# # +# ## Authentication Method, one of "Certificate", "UserName", or "Anonymous". To +# ## authenticate using a specific ID, select 'Certificate' or 'UserName' +# # auth_method = "Anonymous" +# # +# ## Username. Required for auth_method = "UserName" +# # username = "" +# # +# ## Password. Required for auth_method = "UserName" +# # password = "" +# # +# ## Option to select the metric timestamp to use. Valid options are: +# ## "gather" -- uses the time of receiving the data in telegraf +# ## "server" -- uses the timestamp provided by the server +# ## "source" -- uses the timestamp provided by the source +# # timestamp = "gather" +# # +# ## Node ID configuration +# ## name - field name to use in the output +# ## namespace - OPC UA namespace of the node (integer value 0 thru 3) +# ## identifier_type - OPC UA ID type (s=string, i=numeric, g=guid, b=opaque) +# ## identifier - OPC UA ID (tag as shown in opcua browser) +# ## default_tags - extra tags to be added to the output metric (optional) +# ## +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) +# # nodes = [ +# # {name="", namespace="", identifier_type="", identifier=""}, +# # {name="", namespace="", identifier_type="", identifier=""}, +# # ] +# # +# ## Bracketed notation +# # [[inputs.opcua.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "value1", tag2 = "value2" } +# # +# # [[inputs.opcua.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # +# ## Node Group +# ## Sets defaults so they aren't required in every node. +# ## Default values can be set for: +# ## * Metric name +# ## * OPC UA namespace +# ## * Identifier +# ## * Default tags +# ## +# ## Multiple node groups are allowed +# #[[inputs.opcua.group]] +# ## Group Metric name. Overrides the top level name. If unset, the +# ## top level name is used. +# # name = +# # +# ## Group default namespace. If a node in the group doesn't set its +# ## namespace, this is used. +# # namespace = +# # +# ## Group default identifier type. If a node in the group doesn't set its +# ## namespace, this is used. +# # identifier_type = +# # +# ## Default tags that are applied to every node in this group. Can be +# ## overwritten in a node by setting a different value for the tag name. +# ## example: default_tags = { tag1 = "value1" } +# # default_tags = {} +# # +# ## Node ID Configuration. Array of nodes with the same settings as above. +# ## Use either the inline notation or the bracketed notation, not both. +# # +# ## Inline notation (default_tags not supported yet) +# # nodes = [ +# # {name="node1", namespace="", identifier_type="", identifier=""}, +# # {name="node2", namespace="", identifier_type="", identifier=""}, +# #] +# # +# ## Bracketed notation +# # [[inputs.opcua.group.nodes]] +# # name = "node1" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# # default_tags = { tag1 = "override1", tag2 = "value2" } +# # +# # [[inputs.opcua.group.nodes]] +# # name = "node2" +# # namespace = "" +# # identifier_type = "" +# # identifier = "" +# +# ## Enable workarounds required by some devices to work correctly +# # [inputs.opcua.workarounds] +# ## Set additional valid status codes, StatusOK (0x0) is always considered valid +# # additional_valid_status_codes = ["0xC0"] +# +# # [inputs.opcua.request_workarounds] +# ## Use unregistered reads instead of registered reads +# # use_unregistered_reads = false + + # # Receive OpenTelemetry traces, metrics, and logs over gRPC # [[inputs.opentelemetry]] # ## Override the default (0.0.0.0:4317) destination OpenTelemetry gRPC service