目录
强大的性能,无限扩展
收集、组织和处理海量高速数据。 当您将任何数据视为时间序列数据时,它会更有价值。 借助 InfluxDB,第一名的时间序列平台,旨在与 Telegraf 一起扩展。
查看入门方法
输入和输出集成概述
Jenkins 插件通过其 API 从 Jenkins 实例收集有关作业和节点的关键信息,从而促进全面的监控和分析。
Telegraf 的 SQL 插件使用简单的表模式和动态列生成将收集的指标发送到 SQL 数据库。 当配置为 ClickHouse 时,它会调整 DSN 格式和类型转换设置,以确保无缝数据集成。
集成详情
Jenkins
Jenkins Telegraf 插件允许用户从 Jenkins 实例收集指标,而无需在 Jenkins 本身安装任何额外的插件。 通过利用 Jenkins API,该插件检索有关 Jenkins 环境中运行的节点和作业的信息。 此集成提供了 Jenkins 基础设施的全面概述,包括可用于监控和分析的实时指标。 主要功能包括用于作业和节点选择的可配置过滤器、可选的 TLS 安全设置以及有效管理请求超时和连接限制的能力。 这使其成为依赖 Jenkins 进行持续集成和交付的团队的必备工具,确保他们拥有维护最佳性能和可靠性所需的洞察力。
Clickhouse
Telegraf 的 SQL 插件旨在通过基于传入指标动态创建表和列,将指标数据写入 SQL 数据库。 当配置为 ClickHouse 时,它使用 clickhouse-go v1.5.4 驱动程序,该驱动程序采用独特的 DSN 格式和一组专门的类型转换规则,将 Telegraf 的数据类型直接映射到 ClickHouse 的原生类型。 这种方法确保了在高吞吐量环境中的最佳存储和检索性能,使其非常适合实时分析和大规模数据仓库。 动态模式创建和精确的类型映射实现了详细的时间序列数据日志记录,这对于监控现代分布式系统至关重要。
配置
Jenkins
[[inputs.jenkins]]
## The Jenkins URL in the format "schema://host:port"
url = "http://my-jenkins-instance:8080"
# username = "admin"
# password = "admin"
## Set response_timeout
response_timeout = "5s"
## Optional TLS Config
# tls_ca = "/etc/telegraf/ca.pem"
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"
## Use SSL but skip chain & host verification
# insecure_skip_verify = false
## Optional Max Job Build Age filter
## Default 1 hour, ignore builds older than max_build_age
# max_build_age = "1h"
## Optional Sub Job Depth filter
## Jenkins can have unlimited layer of sub jobs
## This config will limit the layers of pulling, default value 0 means
## unlimited pulling until no more sub jobs
# max_subjob_depth = 0
## Optional Sub Job Per Layer
## In workflow-multibranch-plugin, each branch will be created as a sub job.
## This config will limit to call only the lasted branches in each layer,
## empty will use default value 10
# max_subjob_per_layer = 10
## Jobs to include or exclude from gathering
## When using both lists, job_exclude has priority.
## Wildcards are supported: [ "jobA/*", "jobB/subjob1/*"]
# job_include = [ "*" ]
# job_exclude = [ ]
## Nodes to include or exclude from gathering
## When using both lists, node_exclude has priority.
# node_include = [ "*" ]
# node_exclude = [ ]
## Worker pool for jenkins plugin only
## Empty this field will use default value 5
# max_connections = 5
## When set to true will add node labels as a comma-separated tag. If none,
## are found, then a tag with the value of 'none' is used. Finally, if a
## label contains a comma it is replaced with an underscore.
# node_labels_as_tag = false
Clickhouse
[[outputs.sql]]
## Database driver
## Valid options include mssql, mysql, pgx, sqlite, snowflake, clickhouse
driver = "clickhouse"
## Data source name
## For ClickHouse, the DSN follows the clickhouse-go v1.5.4 format.
## Example DSN: "tcp://localhost:9000?debug=true"
data_source_name = "tcp://localhost:9000?debug=true"
## Timestamp column name
timestamp_column = "timestamp"
## Table creation template
## Available template variables:
## {TABLE} - table name as a quoted identifier
## {TABLELITERAL} - table name as a quoted string literal
## {COLUMNS} - column definitions (list of quoted identifiers and types)
table_template = "CREATE TABLE {TABLE} ({COLUMNS})"
## Table existence check template
## Available template variables:
## {TABLE} - table name as a quoted identifier
table_exists_template = "SELECT 1 FROM {TABLE} LIMIT 1"
## Initialization SQL (optional)
init_sql = ""
## Maximum amount of time a connection may be idle. "0s" means connections are never closed due to idle time.
connection_max_idle_time = "0s"
## Maximum amount of time a connection may be reused. "0s" means connections are never closed due to age.
connection_max_lifetime = "0s"
## Maximum number of connections in the idle connection pool. 0 means unlimited.
connection_max_idle = 2
## Maximum number of open connections to the database. 0 means unlimited.
connection_max_open = 0
## Metric type to SQL type conversion for ClickHouse.
## The conversion maps Telegraf metric types to ClickHouse native data types.
[outputs.sql.convert]
conversion_style = "literal"
integer = "Int64"
text = "String"
timestamp = "DateTime"
defaultvalue = "String"
unsigned = "UInt64"
bool = "UInt8"
real = "Float64"
输入和输出集成示例
Jenkins
-
持续集成监控:使用 Jenkins 插件通过收集作业持续时间和失败率的指标来监控持续集成管道的性能。 这可以帮助团队识别管道中的瓶颈并提高整体构建效率。
-
资源分配分析:利用 Jenkins 节点指标来评估不同代理之间的资源使用情况。 通过了解资源的分配方式,团队可以优化其 Jenkins 架构,可能重新分配代理或调整作业配置以获得更好的性能。
-
作业执行趋势:分析历史作业性能指标以识别作业执行随时间变化的趋势。 通过这些数据,团队可以主动解决潜在问题,并在问题扩大之前进行调整,根据需要调整作业或其配置。
-
作业失败警报:实施利用 Jenkins 作业指标的警报,以便在作业失败时通知团队成员。 这种主动方法可以提高操作意识并加快对失败的响应时间,确保有效监控关键作业。
Clickhouse
-
大容量数据的实时分析:使用插件将来自大型系统的流式指标馈送到 ClickHouse。 这种设置支持超快的查询性能和近乎实时的分析,非常适合监控高流量应用程序。
-
时间序列数据仓库:将插件与 ClickHouse 集成以创建强大的时间序列数据仓库。 此用例允许组织存储详细的历史指标并执行复杂的查询以进行趋势分析和容量规划。
-
分布式环境中的可扩展监控:利用插件在 ClickHouse 中为每种指标类型动态创建表,从而更轻松地管理和查询来自大量分布式系统的数据,而无需预先定义模式。
-
针对物联网部署的优化存储:部署插件以将来自物联网传感器的数据摄取到 ClickHouse 中。 其高效的模式创建和原生类型映射有助于处理海量数据,从而实现实时监控和预测性维护。
反馈
感谢您成为我们社区的一份子! 如果您有任何一般性反馈或在这些页面上发现任何错误,我们欢迎并鼓励您提出意见。 请在 InfluxDB 社区 Slack 中提交您的反馈。
强大的性能,无限扩展
收集、组织和处理海量高速数据。 当您将任何数据视为时间序列数据时,它会更有价值。 借助 InfluxDB,第一名的时间序列平台,旨在与 Telegraf 一起扩展。
查看入门方法