DNS 和 Graphite 集成

强大的性能和简单的集成,由 InfluxData 构建的开源数据连接器 Telegraf 提供支持。

info

对于大规模实时查询,这不是推荐的配置。为了进行查询和压缩优化、高速摄取和高可用性,您可能需要考虑 DNS 和 InfluxDB

50 亿+

Telegraf 下载量

#1

时间序列数据库
来源:DB Engines

10 亿+

InfluxDB 下载量

2,800+

贡献者

目录

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它都更有价值。InfluxDB 是排名第一的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

输入和输出集成概述

DNS 插件使用户能够监控和收集 DNS 查询时间的统计信息,从而促进 DNS 解析的性能分析。

Graphite 插件使用户能够通过 TCP 将 Telegraf 收集的指标发送到 Graphite。此集成允许使用 Graphite 的强大功能高效存储和可视化时间序列数据。

集成详情

DNS

此插件以毫秒为单位收集 DNS 查询时间,利用类似于 Dig 命令的 DNS 查询功能。它提供了一种通过测量来自指定 DNS 服务器的响应时间来监控和分析 DNS 性能的方法,使网络管理员和工程师能够确保最佳 DNS 解析时间。该插件可以配置为以特定服务器为目标,并自定义查询的记录类型,涵盖各种 DNS 功能,例如将域名解析为 IP 地址,或根据需要从特定记录中检索详细信息,同时还清楚地报告每次查询的成功或失败,以及相关的元数据。

Graphite

此插件通过原始 TCP 将指标写入 Graphite,从而将 Telegraf 收集的指标无缝集成到 Graphite 生态系统中。借助此插件,用户可以配置多个 TCP 端点以进行负载均衡,从而确保指标传输的高可用性和可靠性。使用前缀自定义指标命名以及利用各种模板选项的能力增强了数据在 Graphite 中表示方式的灵活性。此外,对 Graphite 标签的支持以及对指标名称进行严格清理的选项允许进行强大的数据管理,满足用户的各种需求。此功能对于希望利用 Graphite 强大的指标存储和可视化功能,同时保持对数据表示方式的控制的组织至关重要。

配置

DNS

[[inputs.dns_query]]
  servers = ["8.8.8.8"]

  # network = "udp"

  # domains = ["."]

  # record_type = "A"

  # port = 53

  # timeout = "2s"

  # include_fields = []
  

Graphite

# Configuration for Graphite server to send metrics to
[[outputs.graphite]]
  ## TCP endpoint for your graphite instance.
  ## If multiple endpoints are configured, the output will be load balanced.
  ## Only one of the endpoints will be written to with each iteration.
  servers = ["localhost:2003"]

  ## Local address to bind when connecting to the server
  ## If empty or not set, the local address is automatically chosen.
  # local_address = ""

  ## Prefix metrics name
  prefix = ""

  ## Graphite output template
  ## see https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_OUTPUT.md
  template = "host.tags.measurement.field"

  ## Strict sanitization regex
  ## This is the default sanitization regex that is used on data passed to the
  ## graphite serializer. Users can add additional characters here if required.
  ## Be aware that the characters, '/' '@' '*' are always replaced with '_',
  ## '..' is replaced with '.', and '\' is removed even if added to the
  ## following regex.
  # graphite_strict_sanitize_regex = '[^a-zA-Z0-9-:._=\p{L}]'

  ## Enable Graphite tags support
  # graphite_tag_support = false

  ## Applied sanitization mode when graphite tag support is enabled.
  ## * strict - uses the regex specified above
  ## * compatible - allows for greater number of characters
  # graphite_tag_sanitize_mode = "strict"

  ## Character for separating metric name and field for Graphite tags
  # graphite_separator = "."

  ## Graphite templates patterns
  ## 1. Template for cpu
  ## 2. Template for disk*
  ## 3. Default template
  # templates = [
  #  "cpu tags.measurement.host.field",
  #  "disk* measurement.field",
  #  "host.measurement.tags.field"
  #]

  ## timeout in seconds for the write connection to graphite
  # timeout = "2s"

  ## Optional TLS Config
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false

输入和输出集成示例

DNS

  1. 监控多个服务器的 DNS 性能:通过部署 DNS 插件,用户可以通过在 servers 数组中指定不同的 DNS 服务器(例如 Google DNS 和 Cloudflare DNS)来同时监控它们的性能。这种情况可以比较不同 DNS 提供商之间的响应时间和可靠性,从而帮助根据经验数据选择最佳选项。

  2. 分析高流量域名的查询时间:集成该插件以专门测量与组织运营相关的高流量域名(例如内部服务或面向客户的站点)的响应时间。通过关注这些域名的性能指标,组织可以主动解决延迟问题,确保服务可靠性并改善用户体验。

  3. DNS 超时警报:将插件与警报系统结合使用,以便在 DNS 查询超过定义的超时阈值时通知管理员。此设置可以帮助主动排除网络问题或服务器配置错误,从而促进对潜在停机情况的快速响应。

  4. 收集历史数据以了解性能趋势:使用该插件收集较长时间内 DNS 查询时间的历史数据。此数据可用于分析 DNS 性能的趋势和模式,从而更好地进行容量规划,识别周期性问题,并证明基础设施升级或更改 DNS 架构的合理性。

Graphite

  1. 动态指标可视化:Graphite 插件可用于将来自各种来源(例如应用程序性能数据或服务器运行状况指标)的实时指标馈送到 Graphite 中。这种动态集成使团队能够创建交互式仪表板,可视化关键绩效指标,跟踪随时间变化的趋势,并做出数据驱动的决策以提高系统性能。

  2. 负载均衡的指标收集:通过在插件中配置多个 TCP 端点,组织可以实现指标传输的负载均衡。此用例确保指标交付既具有弹性又高效,降低了高流量期间数据丢失的风险,并保持了到 Graphite 的可靠信息流。

  3. 自定义指标标记:借助对 Graphite 标签的支持,用户可以使用 Graphite 插件来增强其指标的粒度。使用相关信息(例如应用程序环境或服务类型)标记指标,可以进行更精细的查询和分析,使团队能够深入研究特定感兴趣的领域,从而获得更好的运营洞察力。

  4. 增强的数据清理:利用插件的严格清理选项,用户可以确保其指标名称符合 Graphite 的要求。这种主动措施消除了指标名称中无效字符可能引起的问题,从而实现更清洁的数据管理和更准确的可视化。

反馈

感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它都更有价值。InfluxDB 是排名第一的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

相关集成

HTTP 和 InfluxDB 集成

HTTP 插件从一个或多个 HTTP(S) 端点收集指标。它支持各种身份验证方法和数据格式的配置选项。

查看集成

Kafka 和 InfluxDB 集成

此插件从 Kafka 读取消息,并允许基于这些消息创建指标。它支持各种配置,包括不同的 Kafka 设置和消息处理选项。

查看集成

Kinesis 和 InfluxDB 集成

Kinesis 插件允许从 AWS Kinesis 流中读取指标。它支持多种输入数据格式,并提供 DynamoDB 的检查点功能,以实现可靠的消息处理。

查看集成