InfluxDB v2
Quelques commandes utiles pour interagir avec InfluxDB (v2) en ligne de commande.
Interroger un bucket InfluxDB via curl
Le langage de requêtage se nomme influx
1INFLUX_ORG_ID="xxxxxxxxxxxxxxxx"
2INFLUX_TOKEN="xxxxxxxxxxxxxxx"
3
4curl --request POST \
5 http://127.0.0.1:8086/api/v2/query?orgID=$INFLUX_ORG_ID \
6 --header 'Authorization: Token '$INFLUX_TOKEN'' \
7 --header 'Accept: application/csv' \
8 --header 'Content-type: application/vnd.flux' \
9 --data 'from(bucket:"captation") |> range(start: -1h) |> filter(fn: (r) => r._measurement == "waiting_ingest") |> filter(fn: (r) => r._field == "value") |> last()'
retourne un contenu csv :
1,result,table,_start,_stop,_time,_value,_field,_measurement,extension,group,hostname
2,_result,0,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:27:05Z,2,value,waiting_ingest,ENV,SRV-VIS,B-SRV-VIS-250
3,_result,1,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:41:02Z,83,value,waiting_ingest,HDR,SRV-VIS,B-SRV-VIS-250
4,_result,2,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:27:05Z,2,value,waiting_ingest,M4A,SRV-VIS,B-SRV-VIS-250
5,_result,3,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:41:02Z,90,value,waiting_ingest,MD5,SRV-VIS,B-SRV-VIS-250
6,_result,4,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:41:02Z,2,value,waiting_ingest,MP4,SRV-VIS,B-SRV-VIS-250
7,_result,5,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:21:05Z,2,value,waiting_ingest,MPA,SRV-VIS,B-SRV-VIS-250
8,_result,6,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:41:02Z,83,value,waiting_ingest,epg,SRV-VIS,B-SRV-VIS-250
9,_result,7,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:27:05Z,1,value,waiting_ingest,mp4,SRV-VIS,B-SRV-VIS-250
10,_result,8,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:27:05Z,2,value,waiting_ingest,rds,SRV-VIS,B-SRV-VIS-250
11,_result,9,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:27:05Z,2,value,waiting_ingest,srt,SRV-VIS,B-SRV-VIS-250
12,_result,10,2022-07-01T08:44:06.545845718Z,2022-07-01T09:44:06.545845718Z,2022-07-01T09:41:02Z,258,value,waiting_ingest,total,SRV-VIS,B-SRV-VIS-250
Interroger un bucket InfluxDB via php
1composer require influxdata/influxdb-client-php
2composer install
1#!/usr/bin/env php
2<?php
3
4require_once __DIR__ . '/vendor/autoload.php';
5
6$params = [
7 "url" => "http://127.0.0.1:8086",
8 "token" => "XXXxxx",
9 "bucket" => "myBucket",
10 "org" => "myOrg",
11];
12
13$client = new \InfluxDB2\Client($params);
14
15$query = 'from(bucket: "' . $params['bucket'] . '") ';
16$query .= ' |> range(start: -1h) ';
17$query .= ' |> filter(fn: (r) => r["_measurement"] == "uptime") ';
18$query .= ' |> last()';
19
20$res = $client->createQueryApi()->query($query);
21
22foreach ($res as $table) {
23 $rec = $table->records[0]->values;
24 $resDateTime = new \DateTimeImmutable($rec['_time']);
25}
26
27var_dump($res);
CLI
Voir la configuration du serveur
1$ influx server-config
2{
3 "assets-path": "",
4 "bolt-path": "/var/lib/influxdb/influxd.bolt",
5 "e2e-testing": false,
6 "engine-path": "/var/lib/influxdb/engine"
7 (...)
8 "vault-max-retries": 0,
9 "vault-skip-verify": false,
10 "vault-tls-server-name": "",
11 "vault-token": ""
12}
Éditer la configuration du serveur
exemple de fichier /etc/influxdb/config.toml :
1bolt-path = "/var/lib/influxdb/influxd.bolt"
2engine-path = "/var/lib/influxdb/engine"
3log-level = "error"
4http-idle-timeout = "0"
5session-length = 86400
6reporting-disabled = true
7metrics-disabled = true
Suivre les logs (en root)
1journalctl -u influxdb -f
Lister les buckets
1$ influx bucket list
2ID Name Retention Shard group duration Organization ID Schema Type
3XXX26253c0a3661e _monitoring 168h0m0s 24h0m0s 218ccXXXac73b1af implicit
4XXXcf10b0878d4ce _tasks 72h0m0s 24h0m0s 218ccXXXac73b1af implicit
5XXX6d3e6174d545d captation infinite 168h0m0s 218ccXXXac73b1af implicit
Lister les organisations
1$ influx org list
2ID Name
3218cc59XXX73b1af MyOrg
Lister les membres
1$ influx user list
2ID Name
308aXXXb81bee3000 admin
409aXXX93f100d000 tech
Liste les tableaux de bord
1$ influx dashboards
2ID OrgID Name Description Num Cells
308a6044ed0973000 218cc598ac73b1af Captation - Vue générale 67
4090a2dd0bcd73000 218cc598ac73b1af Débits par chaîne 2
5099a6ae7af833000 218cc598ac73b1af Débits par station 3
609f0cfc475a20000 218cc598ac73b1af Sondes température 4
Créer un utilisateur
1influx user create --name username --password userpass --org-id XXxxXXxxXXxxXXxx --token TOKEN_WITH_WRITE_USER
Lister les tokens d'autorisation
1$ influx auth list
2ID Description Token User Name User ID Permissions
308a603b8316e3000 admin XXX== admin 08a603b81bee3000 [read:/annotations write:/annotations read:/authorizations write:/authorizations read:/buckets write:/buckets read:/checks write:/checks read:/dashboards write:/dashboards read:/dbrp write:/dbrp read:/documents write:/documents read:/labels write:/labels read:/notebooks write:/notebooks read:/notificationEndpoints write:/notificationEndpoints read:/notificationRules write:/notificationRules read:/orgs write:/orgs read:/scrapers write:/scrapers read:/secrets write:/secrets read:/sources write:/sources read:/tasks write:/tasks read:/telegrafs write:/telegrafs read:/users write:/users read:/variables write:/variables read:/views write:/views read:/remotes write:/remotes read:/replications write:/replications]
40b8dd17c156e5000 tech XXX== admin 08a603b81bee3000 [read:orgs/218cc598ac73b1af/buckets/68b6d3e6174d545d]
Backuper le serveur
1$ influx backup influxdb
22026/04/30 15:42:21 INFO: Downloading metadata snapshot
32026/04/30 15:42:21 INFO: Backing up TSM for shard 2863
42026/04/30 15:42:21 WARN: Shard 2863 removed during backup
52026/04/30 15:42:21 INFO: Backing up TSM for shard 2864
62026/04/30 15:42:21 WARN: Shard 2864 removed during backup
72026/04/30 15:42:21 INFO: Backing up TSM for shard 2865
82026/04/30 15:42:21 WARN: Shard 2865 removed during backup
92026/04/30 15:42:21 INFO: Backing up TSM for shard 2866
102026/04/30 15:42:21 WARN: Shard 2866 removed during backup
112026/04/30 15:42:21 INFO: Backing up TSM for shard 2867
122026/04/30 15:42:21 WARN: Shard 2867 removed during backup
132026/04/30 15:42:21 INFO: Backing up TSM for shard 2870
142026/04/30 15:42:21 WARN: Shard 2870 removed during backup
152026/04/30 15:42:21 INFO: Backing up TSM for shard 2871
162026/04/30 15:42:21 WARN: Shard 2871 removed during backup
172026/04/30 15:42:21 INFO: Backing up TSM for shard 2872
182026/04/30 15:42:21 WARN: Shard 2872 removed during backup
192026/04/30 15:42:21 INFO: Backing up TSM for shard 2833
202026/04/30 15:42:24 INFO: Backing up TSM for shard 2842
212026/04/30 15:42:28 INFO: Backing up TSM for shard 2851
222026/04/30 15:42:32 INFO: Backing up TSM for shard 2860
232026/04/30 15:42:35 INFO: Backing up TSM for shard 2869
24$ ls -al influxdb/
25total 96240
26drwxrwxr-x. 2 admindl 4096 30 avril 15:42 .
27drwxrwxr-x. 4 admindl 51 30 avril 15:41 ..
28-rw-------. 1 admindl 21785014 30 avril 15:42 20260430T134221Z.2833.tar.gz
29-rw-------. 1 admindl 21899549 30 avril 15:42 20260430T134221Z.2842.tar.gz
30-rw-------. 1 admindl 21780624 30 avril 15:42 20260430T134221Z.2851.tar.gz
31-rw-------. 1 admindl 21585591 30 avril 15:42 20260430T134221Z.2860.tar.gz
32-rw-------. 1 admindl 11209612 30 avril 15:42 20260430T134221Z.2869.tar.gz
33-rw-------. 1 admindl 255904 30 avril 15:42 20260430T134221Z.bolt.gz
34-rw-------. 1 admindl 11452 30 avril 15:42 20260430T134221Z.manifest
35-rw-------. 1 admindl 6959 30 avril 15:42 20260430T134221Z.sqlite.gz
Restaurer le serveur
Si nouveau serveur il faut quand même faire la conf initiale (créa 1er user, 1ère orga) et que le cli fonctionne
1$ influx restore influxdb --full
22026/04/30 16:18:41 INFO: Restoring KV snapshot
32026/04/30 16:18:44 WARN: Restoring KV snapshot overwrote the operator token, ensure following commands use the correct token
42026/04/30 16:18:44 INFO: Restoring SQL snapshot
52026/04/30 16:18:44 INFO: Restoring TSM snapshot for shard 2833
62026/04/30 16:18:45 INFO: Restoring TSM snapshot for shard 2842
72026/04/30 16:18:46 INFO: Restoring TSM snapshot for shard 2851
82026/04/30 16:18:46 INFO: Restoring TSM snapshot for shard 2860
92026/04/30 16:18:47 INFO: Restoring TSM snapshot for shard 2869
la clé d'api d'admin a été écrasée par celle de la sauvegarde.
Le mode --full restaure user, buckets, dashboard, variables, labels ...
Ressources :
comments powered by Disqus