THIS IS WORK IN PROGRESS AND CAN CHANGE ANY TIME
At the moment we are developing a simple plugin for odysseus.
In addition, here is a brief READ.ME.
We need a grafana plugin to be able to receive data from Odysseus. Note that the current state of the plugin is experimental. Wiki-Page: https://wiki.odysseus.informatik.uni-oldenburg.de/display/ODYSSEUS/Grafana Requirements: docker 1. build a docker image based on the dockerfile in this folder docker build . -t grafana 2. build and run a docker container based on the created image docker run -d -p 3000:3000 --name grafana grafana 3. open grafana in a browser localhost:3000 username: admin password: admin 4. Add an Odysseus datasource Requirements: Running Odysseus Server (or monolithic of course) Configuration -> Data Sources Select Others -> odysseus Server URI: ws://localhost:8888/ (REST-port of a (here local) odysseus server) Leave API Key empty 5. Create Dashboard Create -> Dashboard 6. Create Panel Requirements: * To visualize single datastream attributes, there must be an operator that provides only the current timestamp named "time" and that attribute * To easily find the operator, give him a proper name * Query(s) should be installed Tipps: a) At the end of the query, create for each attribute you want to visualize a projection on "time" and the attribute b) Grafana can display historical values but to show the results in real-time, the timestamps of the results should be set to the current time (necessary if you, e.g., read from a CSV file with old timestamps) 6.1. select your Odysseus datasource as datasource 6.2. you need a websocket that provides the data 6.3. open in a browser localhost:8888/queries to get information about all installed queries (in chrome it is not formatted; copy the content in, e.g., https://jsonformatter.curiousconcept.com/) 6.4. find the websocket in the json go to the query id of your query -> rootOperators -> go to the operator providing the data to visualize -> ports -> websockets -> copy the JSON uri 6.5. Insert the copied URI in grafana into the websocket field of the panel query 6.6. Click on apply and after that on save dashboard