OpenMTC/apps/InfluxdbApp
aor-fokus 6cbb2e6144 Test debian stretch+python3 (#18)
* changes starting with python3 explicit

* removes python modules which are not available for python3

* exchanges fyzz query parsing with rdflib functionality

* fixes interop tests

* replaces reduce with for loop in nodb driver

* simple python2 -> python3 conversions

* adds changes for handling different string handling in python3

* test stretch building with travis

* installing python-setuptools in docker

* installing python-setuptools in docker

* changing python2 to python3 in docker makefiles

* changing python2 to python3 and some other test changes

* push docker only in master branche

* running version of openmtc

* fix some port problems

* porting path library completly now

* restoring travis.yml

* testing new travis.yml

* add sudo

* updating travis OS from trusty to xenial

* upgrade pip before

* show running docker logs

* show more logs

* for debugging

* showlogs of docker after failure

* testing new travis.yml

* finish travis.yml
2019-02-06 15:11:32 +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 Test debian stretch+python3 (#18) 2019-02-06 15:11:32 +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"]