39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
# CrateDB Output Plugin for Telegraf
 | 
						|
 | 
						|
This plugin writes to [CrateDB](https://crate.io/) via its [PostgreSQL protocol](https://crate.io/docs/crate/reference/protocols/postgres.html).
 | 
						|
 | 
						|
## Table Schema
 | 
						|
 | 
						|
The plugin requires a table with the following schema.
 | 
						|
 | 
						|
 | 
						|
```sql
 | 
						|
CREATE TABLE my_metrics (
 | 
						|
  "hash_id" LONG INDEX OFF,
 | 
						|
  "timestamp" TIMESTAMP,
 | 
						|
  "name" STRING,
 | 
						|
  "tags" OBJECT(DYNAMIC),
 | 
						|
  "fields" OBJECT(DYNAMIC),
 | 
						|
  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.
 | 
						|
 | 
						|
## Configuration
 | 
						|
 | 
						|
```toml
 | 
						|
# Configuration for CrateDB to send metrics to.
 | 
						|
[[outputs.cratedb]]
 | 
						|
  # A github.com/jackc/pgx connection string.
 | 
						|
  # See https://godoc.org/github.com/jackc/pgx#ParseDSN
 | 
						|
  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 = true
 | 
						|
```
 |