This repository has been archived on 2025-07-31. You can view files and clone it, but cannot push or open issues or pull requests.
2023-07-27 09:40:25 +03:00
2023-07-06 15:39:45 +03:00
2023-07-06 12:26:35 +03:00
2023-07-06 15:39:45 +03:00
2023-06-29 12:47:49 +03:00
2023-06-28 15:21:22 +03:00
2023-07-27 09:12:46 +03:00
2023-07-27 09:12:46 +03:00

telegraf-clickhouse-plugin

The ClickHouse output plugin saves Telegraf metric data to a ClickHouse database.

The plugin uses Golang's generic "database/sql" interface and third party drivers.

Build

Dependencies:

To build the plugin, run make in the root directory of the project.

Alternatively, you can build the plugin using Docker:

docker run --rm -v $(pwd):/telegraf -w /telegraf -e CGOENABLED=false -e GOOS=linux -e GOARCH=amd64 golang go build -o telegraf-clickhouse-plugin-linux-amd64 cmd/main.go
docker run --rm -v $(pwd):/telegraf -w /telegraf -e CGOENABLED=false -e GOOS=linux -e GOARCH=arm64 golang go build -o telegraf-clickhouse-plugin-linux-arm64 cmd/main.go

Getting started

To use the plugin, set the data source name (DSN). The user account must have privileges to insert rows and create tables.

Advanced options

When the plugin first connects it runs SQL from the init_sql setting, allowing you to perform custom initialization for the connection.

Before inserting a row, the plugin checks whether the table exists. If it doesn't exist, the plugin creates the table.

DSN

Currently, Telegraf's sql output plugin depends on clickhouse-go v1.5.4 which uses a different DSN format than its newer v2.* version.

Description
A Telegraf output plugin to send data to a ClickHouse database
Readme 7.9 MiB
Languages
Go 98.2%
Makefile 1.8%