OpenMTC/apps/InfluxdbApp
2019-02-06 15:21:45 +01:00
..
bin Test debian stretch+python3 (#18) 2019-02-06 15:11:32 +01:00
docker Test debian stretch+python3 (#18) 2019-02-06 15:11:32 +01:00
etc rename influxdb application to influxdbApp in order to avoid confilicts on imports 2018-06-20 12:45:31 +02:00
src/influxdbapp bump version to 1.3.0 2019-02-06 15:21:45 +01:00
config.json rename influxdb application to influxdbApp in order to avoid confilicts on imports 2018-06-20 12:45:31 +02:00
MANIFEST.in rename influxdb application to influxdbApp in order to avoid confilicts on imports 2018-06-20 12:45:31 +02:00
README.md rename influxdb application to influxdbApp in order to avoid confilicts on imports 2018-06-20 12:45:31 +02:00
setup-influxdbapp.py Test debian stretch+python3 (#18) 2019-02-06 15:11:32 +01:00
utils.py Test debian stretch+python3 (#18) 2019-02-06 15:11:32 +01:00

InfluxDB

This App will subscribe to OpenMTC data and tranfer it to an instance of the InfluxDB.

Run the app

You need a running instance of InfluxDB and configure the following parameters according to your setup.

apps/influxdb-app \
    --ep "http://127.0.0.1:8000" \
    --influx_host "127.0.0.1" \
    --influx-port "8086" \
    --influx-user "root" \
    --influx-password "secret" \
    --db-name "example" \
    --db-user "root" \
    --db-pw "secret"

Data Model

Entries in the InfluxDB are organized by measurement, time, fields and tags. Data is transfered from OpenMTC like shown below:

  • measurement: data_senml["n"] (example: vehiclecount)
  • time: data_senml["t"]
  • tags:
    • application name (example: loadgen)
    • device name (example: parking_space)
    • sensor name (example: totalspaces)
    • sensor labels (example: "openmtc:sensor")
    • device labels (example: "openmtc:device")
  • fields:
    • value: data_senml["v"]
    • bn: data_senml["bn"]
    • unit: data_senml["u"]