HTTP 和 Splunk 集成

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

info

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

50 亿+

Telegraf 下载量

#1

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

10 亿+

InfluxDB 的下载量

2,800+

贡献者

目录

强大的性能,无限的扩展

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

查看入门方法

输入和输出集成概述

HTTP 插件允许从指定的 HTTP 端点收集指标,处理各种数据格式和身份验证方法。

此输出插件有助于将 Telegraf 收集的指标通过 HTTP 事件收集器直接流式传输到 Splunk 中,从而轻松与 Splunk 强大的分析平台集成。

集成详情

HTTP

HTTP 插件从一个或多个 HTTP(S) 端点收集指标,这些端点应具有以支持的输入数据格式之一格式化的指标。 它还支持来自 secret-stores 的密钥,用于各种身份验证选项,并包括全局支持的配置设置。

Splunk

使用 Telegraf 可以轻松地从许多不同的来源收集和聚合指标,并将它们发送到 Splunk。 此配置利用 HTTP 输出插件和专用的 Splunk 指标序列化器,确保将数据高效地摄取到 Splunk 的指标索引中。 HEC 是 Splunk 提供的一种高级机制,旨在通过 HTTP 或 HTTPS 大规模可靠地收集数据,为安全性、监视和分析工作负载提供关键功能。 Telegraf 与 Splunk HEC 的集成通过利用标准的 HTTP 协议、内置的身份验证和结构化数据序列化来简化操作,优化指标摄取并实现即时可操作的见解。

配置

HTTP

[[inputs.http]]
  ## One or more URLs from which to read formatted metrics.
  urls = [
    "http://localhost/metrics",
    "http+unix:///run/user/420/podman/podman.sock:/d/v4.0.0/libpod/pods/json"
  ]

  ## HTTP method
  # method = "GET"

  ## Optional HTTP headers
  # headers = {"X-Special-Header" = "Special-Value"}

  ## HTTP entity-body to send with POST/PUT requests.
  # body = ""

  ## HTTP Content-Encoding for write request body, can be set to "gzip" to
  ## compress body or "identity" to apply no encoding.
  # content_encoding = "identity"

  ## Optional Bearer token settings to use for the API calls.
  ## Use either the token itself or the token file if you need a token.
  # token = "eyJhbGc...Qssw5c"
  # token_file = "/path/to/file"

  ## Optional HTTP Basic Auth Credentials
  # username = "username"
  # password = "pa$$word"

  ## OAuth2 Client Credentials. The options 'client_id', 'client_secret', and 'token_url' are required to use OAuth2.
  # client_id = "clientid"
  # client_secret = "secret"
  # token_url = "https://indentityprovider/oauth2/v1/token"
  # scopes = ["urn:opc:idm:__myscopes__"]

  ## HTTP Proxy support
  # use_system_proxy = false
  # http_proxy_url = ""

  ## Optional TLS Config
  ## Set to true/false to enforce TLS being enabled/disabled. If not set,
  ## enable TLS only if any of the other options are specified.
  # tls_enable =
  ## Trusted root certificates for server
  # tls_ca = "/path/to/cafile"
  ## Used for TLS client certificate authentication
  # tls_cert = "/path/to/certfile"
  ## Used for TLS client certificate authentication
  # tls_key = "/path/to/keyfile"
  ## Password for the key file if it is encrypted
  # tls_key_pwd = ""
  ## Send the specified TLS server name via SNI
  # tls_server_name = "kubernetes.example.com"
  ## Minimal TLS version to accept by the client
  # tls_min_version = "TLS12"
  ## List of ciphers to accept, by default all secure ciphers will be accepted
  ## See https://pkg.go.dev/crypto/tls#pkg-constants for supported values.
  ## Use "all", "secure" and "insecure" to add all support ciphers, secure
  ## suites or insecure suites respectively.
  # tls_cipher_suites = ["secure"]
  ## Renegotiation method, "never", "once" or "freely"
  # tls_renegotiation_method = "never"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false

  ## Optional Cookie authentication
  # cookie_auth_url = "https://localhost/authMe"
  # cookie_auth_method = "POST"
  # cookie_auth_username = "username"
  # cookie_auth_password = "pa$$word"
  # cookie_auth_headers = { Content-Type = "application/json", X-MY-HEADER = "hello" }
  # cookie_auth_body = '{"username": "user", "password": "pa$$word", "authenticate": "me"}'
  ## cookie_auth_renewal not set or set to "0" will auth once and never renew the cookie
  # cookie_auth_renewal = "5m"

  ## Amount of time allowed to complete the HTTP request
  # timeout = "5s"

  ## List of success status codes
  # success_status_codes = [200]

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

Splunk

[[outputs.http]]
  ## Splunk HTTP Event Collector endpoint
  url = "https://splunk.example.com:8088/services/collector"

  ## HTTP method to use
  method = "POST"

  ## Splunk authentication token
  headers = {"Authorization" = "Splunk YOUR_SPLUNK_HEC_TOKEN"}

  ## Serializer for formatting metrics specifically for Splunk
  data_format = "splunkmetric"

  ## Optional parameters
  # timeout = "5s"
  # insecure_skip_verify = false
  # tls_ca = "/path/to/ca.pem"
  # tls_cert = "/path/to/cert.pem"
  # tls_key = "/path/to/key.pem"

输入和输出集成示例

HTTP

  1. 从本地主机收集指标: 该插件可以从 HTTP 端点(如 http://localhost/metrics)获取指标,从而实现轻松的本地监控。
  2. 使用 Unix 域套接字: 您可以使用 http+unix 方案指定通过 Unix 域套接字从服务收集指标,例如,http+unix:///path/to/service.sock:/api/endpoint

Splunk

  1. 实时安全分析: 利用此插件将来自各种应用程序的安全相关指标实时流式传输到 Splunk 中。 组织可以通过关联跨系统的数据流立即检测到威胁,从而显着缩短检测和响应时间。

  2. 多云基础设施监控: 集成 Telegraf 以将来自多云环境的指标直接整合到 Splunk 中,从而实现全面的可见性和运营情报。 这种统一的监控使团队能够快速检测性能问题并简化云资源管理。

  3. 动态容量规划: 部署该插件以将来自容器编排平台(如 Kubernetes)的资源指标持续推送到 Splunk 中。 通过利用 Splunk 的分析功能,团队可以自动化预测性扩展和资源分配,避免资源瓶颈并最大限度地降低成本。

  4. 自动化事件响应工作流程: 将此插件与 Splunk 的警报系统结合使用,以创建自动化事件响应工作流程。 Telegraf 收集的指标会触发实时警报和自动化修复脚本,确保快速解决问题并保持高系统可用性。

反馈

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

强大的性能,无限的扩展

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

查看入门方法

相关集成

HTTP 和 InfluxDB 集成

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

查看集成

Kafka 和 InfluxDB 集成

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

查看集成

Kinesis 和 InfluxDB 集成

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

查看集成