Grafana + InfluxDB
Introduction
In order to monitor the HELIOS system, for example, the threshold, the tigger rate, the buffer size, etc. We monitor and save those data into a database managed by InfluxDB. The database is further read by Grafana for display.
For more information on InfluxDB and Grafana, see:
we move the database and grafana from HELIOSDB to MAC2017 from Jan, 2021
TODO List after restarted the MAC2017
1) open google chrome, login the grafana, put in the TV, make it full screen
2) open a terminal and type
helios_monitor start
this will open two xterm windows, one for capturing screenshot and push it to the web, another one is for globus.
in the globus xterm, login as dgs@digios1. once login, start the globus by
globus
the "globus connect" window will pop up and click the connect.
to check the grafana and influxDB are running
brew services
if the grafana and influxdb@1 are not running,
brew services restart grafana brew services restart influxdb@1
Present setting
Although the influxdb and grafana are moved to MAC2017, but the setting is the same.
setting for HELIOSDB (obsolete)
The data (e.g. trigger Rate, threshold, Buffer ) must be taking in digios1, the DAQ.
Since the DAQ is running on a 32-bit system. the influxDB is unstable.
The database was installed in heliosDB.onenet or heliosDB.
Thus, the data will be push to heliosDB.
To run the monitor program, login to the DAQ (digios1.onenet)
digios1$ Helios_Database Start
To stop the monitor program,
digios1$ Helios_Database Stop
Grafana was also installed in heliosDB.
To run Grafana, from any browser, within onenet, type
http://heliosDB.onenet:3000
if no webpage found, probably the Grafana server is not started. To start the Grafana server
sudo service grafana-server start
Setup InfluxDB
MAC2017
to install
brew install influxdb@1
it is important to use the 1.8.x version of the influxdb, unless someone update the whole DAQ for 2.X version.
to run the influxDB server
brew services start influxdb@1
to restart the server
brew services restart influxdb@1
64-bit linux
For 64bit-linux, the setup is straight forward.
For example, in Ubuntu-18.x, simply type
sudo apt-get install influxdb
The influxdb contains 2 main programs,
- influx, for interactive database operations
- influxd, a daemon run in background, for receiving query from port 8086
To run the influxd
sudo service influxdb start
Setup Grafana
MAC
brew install grafana brew services start grafana
in case need to restart
brew services restart grafana
linux
sudo apt-get update sudo apt-get install grafana
Or see Grafana webpage, straight forward.
SSH Tunneling to mac2017 from outside
Since the Grafana is installed in heliosDB inside onenet. There is no simple way to check the Grafana from outside.
One solution is using sonata.phy.anl.gov via ssh tunneling.
ssh -L 9000:localhost:3000 -J <userName>@login.phy.anl.gov heliosdigios@mac2017
This command let you port forwarding from mac2017:3000 to localhost:9000.
After typing this in terminal, use any browser, type http://localhost:9000
To push the Grafana screenshot to ANL web page
we store a screenshot in http://www.phy.anl.gov/atlas/helios/live/grafanaElog.jpg
A bash script in is coded to take the screenshot and push it to the webpage.
digios/daq/GrafanaWeb.sh
Edit login timeout
Grafana will logout user after 7 days. To change that, edit
linux :/etc/grafana/grafana.ini Mac : /usr/local/etc/grafana/grafana.ini
under the section [auth]. change the
login_maximum_inactive_lifetime_days = 300 login_maximum_lifetime_days = 300 token_rotation_interval_minutes = 432000
and restart Grafana.
To use dramatic sound alarm for Grafana
heliosDB:~>./NewSoundAlarm.sh