telegraf/plugins/outputs/cratedb/README.md

56 lines
1.7 KiB
Markdown
Raw Normal View History

# CrateDB Output Plugin
2017-11-10 06:03:16 +08:00
This plugin writes to [CrateDB](https://crate.io/) via its [PostgreSQL
protocol](https://crate.io/docs/crate/reference/protocols/postgres.html).
2017-11-10 06:03:16 +08:00
## Table Schema
The plugin requires a table with the following schema.
```sql
CREATE TABLE IF NOT EXISTS my_metrics (
2017-11-10 06:03:16 +08:00
"hash_id" LONG INDEX OFF,
"timestamp" TIMESTAMP,
"name" STRING,
"tags" OBJECT(DYNAMIC),
"fields" OBJECT(DYNAMIC),
"day" TIMESTAMP GENERATED ALWAYS AS date_trunc('day', "timestamp"),
2017-11-10 06:03:16 +08:00
PRIMARY KEY ("timestamp", "hash_id","day")
) PARTITIONED BY("day");
```
The plugin can create this table for you automatically via the `table_create`
config option, see below.
## Global configuration options <!-- @/docs/includes/plugin_config.md -->
In addition to the plugin-specific configuration settings, plugins support
additional global and plugin configuration settings. These settings are used to
modify metrics, tags, and field or create aliases and configure ordering, etc.
See the [CONFIGURATION.md][CONFIGURATION.md] for more details.
[CONFIGURATION.md]: ../../../docs/CONFIGURATION.md#plugins
2017-11-10 06:03:16 +08:00
## Configuration
```toml @sample.conf
2017-11-10 06:03:16 +08:00
# Configuration for CrateDB to send metrics to.
[[outputs.cratedb]]
## Connection parameters for accessing the database see
## https://pkg.go.dev/github.com/jackc/pgx/v4#ParseConfig
## for available options
2017-11-10 06:03:16 +08:00
url = "postgres://user:password@localhost/schema?sslmode=disable"
## Timeout for all CrateDB queries.
# timeout = "5s"
## Name of the table to store metrics in.
# table = "metrics"
## If true, and the metrics table does not exist, create it automatically.
# table_create = false
## The character(s) to replace any '.' in an object key with
# key_separator = "_"
2017-11-10 06:03:16 +08:00
```