####Update for 0.9.0 API changes
InfluxDB An open-source distributed time series database with no external dependencies. It is the new home for all of your metrics, events, and analytics.
A Portable .NET library to access the REST API of a InfluxDB database.
Installation
NuGet - InfluxDB.Net
P.S. One of this project's fork already uses InfluxDB.Net name for NuGet package. So, I called my package InfluxDB.Net-Main.
Install-Package InfluxDB.Net-Main -Pre
####List of supported methods (More documentation available soon)
- Ping
- Version
- CreateDatabase
- DeleteDatabase
- DescribeDatabases
- Write
- Query
- CreateClusterAdmin(User user);
- DeleteClusterAdmin(string name);
- DescribeClusterAdmins();
- UpdateClusterAdmin(User user, string name);
- CreateDatabaseUser(string database, User user);
- DeleteDatabaseUser(string database, string name);
- DescribeDatabaseUsers(String database);
- UpdateDatabaseUser(string database, User user, string name);
- AuthenticateDatabaseUser(string database, string user, string password);
- GetContinuousQueries(String database);
- DeleteContinuousQuery(string database, int id);
- DeleteSeries(string database, string name);
- ForceRaftCompaction();
- Interfaces();
- Sync();
- ListServers();
- RemoveServers(int id);
- CreateShard(Shard shard);
- GetShards();
- DropShard(int id, Shard.Member servers);
- GetShardSpaces();
- DropShardSpace(string database, string name);
- CreateShardSpace(string database, ShardSpace shardSpace);
var _client = new InfluxDb("http://...:8086", "root", "root");
Pong pong =await _client.PingAsync();
var _client = new InfluxDb("http://...:8086", "root", "root");
string version =await _client.VersionAsync();
var _client = new InfluxDb("http://...:8086", "root", "root");
InfluxDbApiCreateResponse response =await _client.CreateDatabaseAsync("MyDb");
//Or
InfluxDbApiCreateResponse response = await _client.CreateDatabaseAsync(new DatabaseConfiguration
{
Name = "MyDb"
});
var _client = new InfluxDb("http://...:8086", "root", "root");
InfluxDbApiDeleteResponse deleteResponse = await _client.DeleteDatabaseAsync("MyDb");
var _client = new InfluxDb("http://...:8086", "root", "root");
List<Database> databases = await _client.DescribeDatabasesAsync();
var _client = new InfluxDb("http://...:8086", "root", "root");
Serie serie = new Serie.Builder("testSeries")
.Columns("value1", "value2")
.Values(DateTime.Now.Millisecond, 5)
.Build();
InfluxDbApiResponse writeResponse =await _client.WriteAsync("MyDb", TimeUnit.Milliseconds, serie);
var _client = new InfluxDb("http://...:8086", "root", "root");
List<Serie> series = await _client.QueryAsync("MyDb", "select * from testSeries"), TimeUnit.Milliseconds);
##Bugs If you encounter a bug, performance issue, or malfunction, please add an Issue with steps on how to reproduce the problem.
##TODO
- Add more tests
- Add more documentation
##License
Code and documentation are available according to the MIT License (see LICENSE).