All Projects → awegrzyn → influxdb-cxx

awegrzyn / influxdb-cxx

Licence: MIT license
C++ client library for InfluxDB 1.x/2.x

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects

Labels

Projects that are alternatives of or similar to influxdb-cxx

engine
Online 4X Grand Strategy RPG Engine
Stars: ✭ 19 (-72.46%)
Mutual labels:  influxdb
ml-ops
Get your MLOps (Level 1) platform started and going fast.
Stars: ✭ 81 (+17.39%)
Mutual labels:  influxdb
docker-telegraf-influxdb-grafana
Docker Image with Telegraf, InfluxDB and Grafana
Stars: ✭ 17 (-75.36%)
Mutual labels:  influxdb
influx-crypto-watcher
Server that let you monitor many cryptocurrencies and store the OHLC data in InfluxDB (visualisation with grafana)
Stars: ✭ 49 (-28.99%)
Mutual labels:  influxdb
formula1-telemetry-kafka
No description or website provided.
Stars: ✭ 99 (+43.48%)
Mutual labels:  influxdb
geostat
GeoStat, Python script for parsing Nginx and Apache logs files and getting GEO data from incoming IP's.
Stars: ✭ 50 (-27.54%)
Mutual labels:  influxdb
sensu-influxdb-handler
Sensu Go InfluxDB Metrics Handler
Stars: ✭ 14 (-79.71%)
Mutual labels:  influxdb
telemetry collector
build telemetry software stack for Cisco nx-os, support both telemetry dial-out and gNMI dial-in
Stars: ✭ 39 (-43.48%)
Mutual labels:  influxdb
rpi-monitoring-node
Automated installation of Grafana, Telegraf and influxdb for your Raspberry Pi
Stars: ✭ 18 (-73.91%)
Mutual labels:  influxdb
envsensor-observer-py
Python Bluetooth low energy observer example for OMRON Environment Sensor (2JCIE-BL01)
Stars: ✭ 31 (-55.07%)
Mutual labels:  influxdb
trickster
Open Source HTTP Reverse Proxy Cache and Time Series Dashboard Accelerator
Stars: ✭ 1,753 (+2440.58%)
Mutual labels:  influxdb
effluence
Zabbix loadable module for real-time export of history to InfluxDB
Stars: ✭ 26 (-62.32%)
Mutual labels:  influxdb
influxdb-c
💙 C write client for InfluxDB.
Stars: ✭ 28 (-59.42%)
Mutual labels:  influxdb
csv2influx
A CLI tool for importing CSV files into Influxdb
Stars: ✭ 16 (-76.81%)
Mutual labels:  influxdb
monitoring-rancher
🤠How to Set up Rancher Server Monitoring with TIG Stack?
Stars: ✭ 22 (-68.12%)
Mutual labels:  influxdb
bme680 to influxdb
Simple script that sends your BME680 temp, pressure, humidity and gas sensor data to InfluxDB.
Stars: ✭ 21 (-69.57%)
Mutual labels:  influxdb
air-quality
Live dashboard for air quality in my home.
Stars: ✭ 70 (+1.45%)
Mutual labels:  influxdb
uber-cli
Beeps when surge is gone
Stars: ✭ 29 (-57.97%)
Mutual labels:  influxdb
grafana-dashboards
List of Grafana Dashboards 📺
Stars: ✭ 120 (+73.91%)
Mutual labels:  influxdb
continuous-analytics-examples
A collection of examples of continuous analytics.
Stars: ✭ 17 (-75.36%)
Mutual labels:  influxdb

influxdb-cxx

Build Status codecov

InfluxDB C++ client library

  • Batch write
  • Data exploration
  • Supported transports
    • HTTP/HTTPS with Basic Auth
    • UDP
    • Unix datagram socket

Installation

Build requirements

  • CMake 3.12+
  • C++17 compliler

Dependencies

  • CURL (required)
  • boost 1.57+ (optional - see Transports)

Generic

git clone https://github.com/awegrzyn/influxdb-cxx.git
cd influxdb-cxx; mkdir build
cd build
cmake ..
sudo make install

macOS

brew install awegrzyn/influxdata/influxdb-cxx

Quick start

Basic write

// Provide complete URI
auto influxdb = influxdb::InfluxDBFactory::Get("http://localhost:8086/?db=test");
influxdb->write(Point{"test"}
  .addField("value", 10)
  .addTag("host", "localhost")
);

Batch write

// Provide complete URI
auto influxdb = influxdb::InfluxDBFactory::Get("http://localhost:8086/?db=test");
// Write batches of 100 points
influxdb->batchOf(100);

for (;;) {
  influxdb->write(Point{"test"}.addField("value", 10));
}

Query

// Available over HTTP only
auto influxdb = influxdb::InfluxDBFactory::Get("http://localhost:8086/?db=test");
/// Pass an IFQL to get list of points
std::vector<Point> points = idb->query("SELECT * FROM test");

Transports

An underlying transport is fully configurable by passing an URI:

[protocol]://[username:password@]host:port[/?db=database]

List of supported transport is following:
Name Dependency URI protocol Sample URI
HTTP cURL http/https http://localhost:8086/?db=<db>
UDP boost udp udp://localhost:8094
Unix socket boost unix unix:///tmp/telegraf.sock
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].