目录
输入和输出集成概述
OPC UA 插件提供了一个从 OPC UA 服务器设备检索数据的接口,从而促进有效的数据收集和监控。
此插件使 Telegraf 能够使用 InfluxDB 行协议将指标高效地直接写入 VictoriaMetrics,从而利用 VictoriaMetrics 在大规模时序数据方面的性能和可扩展性特性。
集成详情
OPC UA
OPC UA 插件从使用 OPC UA 协议通信的设备检索数据,使您能够从 OPC UA 服务器收集和监控数据。
VictoriaMetrics
VictoriaMetrics 支持直接摄取 InfluxDB 行协议中的指标,这使得此插件成为高效实时指标存储和检索的理想选择。该集成结合了 Telegraf 广泛的指标收集能力与 VictoriaMetrics 优化的存储和查询功能,包括压缩、快速摄取速率和高效的磁盘利用率。此插件非常适合云原生和大规模监控场景,它提供了简洁性、强大的性能和高可靠性,为大量指标的高级操作洞察和长期存储解决方案提供了支持。
配置
OPC UA
[[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"
# Maximum time that a session shall remain open without activity.
# session_timeout = "20m"
#
## 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"
#
## Client trace messages
## When set to true, and debug mode enabled in the agent settings, the OPCUA
## client's messages are included in telegraf logs. These messages are very
## noisey, but essential for debugging issues.
# client_trace = false
#
## Include additional Fields in each metric
## Available options are:
## DataType -- OPC-UA Data Type (string)
# optional_fields = []
#
## 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)
## 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="", 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 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
VictoriaMetrics
[[outputs.influxdb]]
## URL of the VictoriaMetrics write endpoint
urls = ["http://localhost:8428"]
## VictoriaMetrics accepts InfluxDB line protocol directly
database = "db_name"
## Optional authentication
# username = "username"
# password = "password"
# skip_database_creation = true
# exclude_retention_policy_tag = true
# content_encoding = "gzip"
## Timeout for HTTP requests
timeout = "5s"
## Optional TLS configuration
# tls_ca = "/path/to/ca.pem"
# tls_cert = "/path/to/cert.pem"
# tls_key = "/path/to/key.pem"
# insecure_skip_verify = false
输入和输出集成示例
OPC UA
-
基本配置:使用您的 OPC UA 服务器端点和所需的指标设置插件。这允许 Telegraf 开始从配置的节点收集指标。
-
节点 ID 设置:使用配置指定特定节点,例如温度传感器,以实时监控其值。例如,配置节点
ns=3;s=Temperature
以直接收集温度数据。 -
组配置:通过将多个节点分组到单个配置下,简化对它们的监控 - 这将为该组中的所有节点设置默认值,从而减少设置中的冗余。
VictoriaMetrics
-
云原生应用监控:将部署在 Kubernetes 上的微服务的指标直接流式传输到 VictoriaMetrics。通过集中化指标,组织可以跨动态发展的云环境执行实时监控、快速异常检测和无缝扩展。
-
可扩展的 IoT 数据管理:使用插件将来自 IoT 部署的传感器数据摄取到 VictoriaMetrics 中。这种方法有助于实时分析、预测性维护以及以最小的存储开销高效管理海量传感器数据。
-
金融系统性能跟踪:通过此插件利用 VictoriaMetrics 存储和分析来自金融系统的指标,捕获延迟、交易量和错误率。组织可以快速识别和解决性能瓶颈,确保高可用性和法规遵从性。
-
跨环境性能仪表板:将来自不同基础设施组件(例如云实例、容器和物理服务器)的指标集成到 VictoriaMetrics 中。使用可视化工具,团队可以构建全面的仪表板,以实现端到端性能可见性、主动故障排除和基础设施优化。
反馈
感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。