NATS 和 ServiceNow 集成

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

info

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

50 亿 +

Telegraf 下载量

#1

时序数据库
来源:DB Engines

10 亿 +

InfluxDB 下载量

2,800+

贡献者

目录

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

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

查看入门方法

输入和输出集成概述

NATS Consumer Input Plugin 实现了从 NATS 消息主题实时数据消费,无缝集成到 Telegraf 数据管道中,用于监控和指标收集。

此输出插件通过 HTTP 将来自 Telegraf 的指标直接流式传输到 ServiceNow MID Server,利用 nowmetric 序列化器与 ServiceNow 的 Operational Intelligence 和 Event Management 高效集成。

集成详情

NATS

NATS Consumer Plugin 允许 Telegraf 从指定的 NATS 主题读取指标,并基于支持的输入数据格式创建指标。 利用队列组允许多个 Telegraf 实例并行地从 NATS 集群读取数据,从而提高吞吐量和可靠性。 此插件还支持各种身份验证方法,包括用户名/密码、NATS 凭据文件和 nkey 种子文件,确保与 NATS 服务器的安全通信。 由于 JetStream 等功能有助于历史消息的消费,因此在数据持久性和消息可靠性至关重要的环境中,此插件尤其有用。 此外,配置各种操作参数的能力使此插件适用于高吞吐量场景,同时保持性能完整性。

ServiceNow

Telegraf 可用于将指标数据直接发送到 ServiceNow MID Server REST 端点。 指标可以使用 ServiceNow 的 Operational Intelligence (OI) 格式或 JSONv2 格式进行格式化,从而实现与 ServiceNow 的 Event Management 和 Operational Intelligence 平台的无缝集成。 序列化器有效地批量处理指标,通过最大限度地减少 HTTP POST 请求的数量来降低网络开销。 此集成允许用户在 ServiceNow 中快速利用指标,以增强可观察性、主动事件管理和性能监控,并利用 ServiceNow 的运营智能功能。

配置

NATS

[[inputs.nats_consumer]]
  ## urls of NATS servers
  servers = ["nats://localhost:4222"]

  ## subject(s) to consume
  ## If you use jetstream you need to set the subjects
  ## in jetstream_subjects
  subjects = ["telegraf"]

  ## jetstream subjects
  ## jetstream is a streaming technology inside of nats.
  ## With jetstream the nats-server persists messages and
  ## a consumer can consume historical messages. This is
  ## useful when telegraf needs to restart it don't miss a
  ## message. You need to configure the nats-server.
  ## https://docs.nats.io/nats-concepts/jetstream.
  jetstream_subjects = ["js_telegraf"]

  ## name a queue group
  queue_group = "telegraf_consumers"

  ## Optional authentication with username and password credentials
  # username = ""
  # password = ""

  ## Optional authentication with NATS credentials file (NATS 2.0)
  # credentials = "/etc/telegraf/nats.creds"

  ## Optional authentication with nkey seed file (NATS 2.0)
  # nkey_seed = "/etc/telegraf/seed.txt"

  ## Use Transport Layer Security
  # secure = false

  ## 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

  ## Sets the limits for pending msgs and bytes for each subscription
  ## These shouldn't need to be adjusted except in very high throughput scenarios
  # pending_message_limit = 65536
  # pending_bytes_limit = 67108864

  ## Max undelivered messages
  ## This plugin uses tracking metrics, which ensure messages are read to
  ## outputs before acknowledging them to the original broker to ensure data
  ## is not lost. This option sets the maximum messages to read from the
  ## broker that have not been written by an output.
  ##
  ## This value needs to be picked with awareness of the agent's
  ## metric_batch_size value as well. Setting max undelivered messages too high
  ## can result in a constant stream of data batches to the output. While
  ## setting it too low may never flush the broker's messages.
  # max_undelivered_messages = 1000

  ## Data format to consume.
  ## Each data format has its own unique set of configuration options, read
  ## more about them here:
  ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
  data_format = "influx"

ServiceNow

[[outputs.http]]
  ## ServiceNow MID Server metrics endpoint
  url = "http://mid-server.example.com:9082/api/mid/sa/metrics"

  ## HTTP request method
  method = "POST"

  ## Basic Authentication credentials
  username = "evt.integration"
  password = "P@$$w0rd!"

  ## Data serialization format for ServiceNow
  data_format = "nowmetric"

  ## Metric format type: "oi" (default) or "jsonv2"
  nowmetric_format = "oi"

  ## HTTP Headers
  [outputs.http.headers]
    Content-Type = "application/json"
    Accept = "application/json"

  ## Optional timeout
  # timeout = "5s"

  ## TLS configuration options
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  # insecure_skip_verify = false

输入和输出集成示例

NATS

  1. 实时分析仪表板:利用 NATS 插件实时收集来自各种 NATS 主题的指标,并将它们馈送到集中式分析仪表板中。 此设置允许立即查看实时应用程序性能,使团队能够快速应对运营问题或性能下降。

  2. 分布式系统监控:在分布式架构中部署配置了 NATS 插件的多个 Telegraf 实例。 这种方法允许团队有效地聚合来自各种微服务的指标,从而提供系统运行状况和性能的整体视图,同时确保在传输过程中不会丢失任何消息。

  3. 历史消息恢复:利用 NATS JetStream 的功能以及此插件,在 Telegraf 重新启动后恢复和处理历史消息。 此功能对于需要高可靠性的应用程序尤其有益,确保即使在服务中断的情况下也不会丢失任何关键指标。

  4. 动态负载均衡:实施动态负载均衡方案,其中 Telegraf 实例根据负载从 NATS 集群消费消息。 调整队列组设置以控制活动消费者的数量,从而在需求波动时实现更好的资源利用率和性能扩展。

ServiceNow

  1. 主动事件管理:利用 Telegraf 和 ServiceNow 集成将基础设施和应用程序指标实时流式传输到 ServiceNow Event Management。 根据阈值自动触发事件或补救工作流程,从而显著缩短事件检测和响应时间。

  2. 端到端应用程序监控:在应用程序堆栈的多个层中部署 Telegraf 代理,将性能指标直接发送到 ServiceNow。 通过利用 ServiceNow 的 Operational Intelligence,团队可以关联跨组件的指标,快速识别性能瓶颈。

  3. 动态 CI 性能跟踪:通过使用此插件推送性能数据,将 Telegraf 指标与 ServiceNow 的 CMDB 集成,从而可以根据实时指标自动更新配置项 (CI) 的运行状况状态。 这确保了 ServiceNow 中基础设施运行状况的准确和最新状态。

  4. 云资源优化:使用 Telegraf 从混合云和多云基础设施收集指标,直接流式传输到 ServiceNow。 利用这些指标进行实时分析、预测容量规划和资源优化,从而实现主动管理并降低运营成本。

反馈

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

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

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

查看入门方法

相关集成

HTTP 和 InfluxDB 集成

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

查看集成

Kafka 和 InfluxDB 集成

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

查看集成

Kinesis 和 InfluxDB 集成

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

查看集成