What is TIG Stack?
Network administrators over the years have being challenged with properly monitoring their networks. Too many tools, lack of visibility and complex integrations are some of the challenges of network monitoring. TIG Stack is an open source group of tools that can help with your infrastructure monitoring, some of the bennefits of TIG stack are flexibility and cost. TIG stands for Telegraf, Inlfux and Grafana.
- Telegraf – An agent for collecting, processing, aggregating, and producing metrics.
- InfluxDB – An open source database, optimized for large amounts of time-stamped data.
- Grafana – An open source data visualization tool.
When combined, these services make for an incredibly powerful tool that gives the admin real-time information about your infrastructure.
Data Retention Module Overview
Data Retention Module is one of the 4 Modules of Office Dashboard APP. It is written in python and it is responsible for saving data generated by the other 3 modules and saving it either to log files or an InfluxDB. This module can NOT run as standalone.
This module has 2 different functions, let’s understand what each one does:
- write_data(): Responsible to write data into influxDB or log file depending on the configuration.
- write_list(): Responsible to recurse a list of entries to be saved by write_data function.
Configuring Data Retention Module
The only configuration to the module that is needed is in credentials.py file described on “Using Data Retention Module” section.
For data visualization on TIG Stack it is required to save the information into influxDB. Next you will need to log into Grafana to start building the Graphs required to visualize all the data. I have saved my Grafana Dashboard as a JSON file, it can be found in this link.
Next I will describe 3 different graphs to give and idea on how you can build your own customized dashboard.
- Line Graph
- Bar Graph
- Pie Chart Graph
Using Data Retention Module
As mentioned before, differently from other modules (Meraki, Webex and DNA Spaces), this module do not run as standalone. It is only invoked by OFFICE-DASHBOARD APP.
Once the app is installed the next step (step 5 in the link above) is to configure/update the credentials.py file, you can choose between 2 options:
- Write to InfluxDB: If you choose this option you have to change “save_file” variable to “False”
- Write to log files: If you choose this option you have to change “save_file” variable to “True”
Now that everything is installed and configured the last step is to test that everything is working, for that use this instructions https://github.com/diegogsoares/OFFICE-DASHBOARD#testing-meraki-module
(venv) Linux:OFFICE-DASHBOARD$ source venv/bin/activate
(venv) Linux:OFFICE-DASHBOARD$ python3 new-app.py
approximated expected output:
(venv) Linux:OFFICE-DASHBOARD$ python3 new-app.py
* Serving Flask app "new-app" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
Webex Devices Info Collected and Saved! - 0:00:00.447341
DNA Spaces Info Collected and Saved! - 0:00:00.823150
Meraki Clients Info Collected and Saved! - 0:00:02.052085
Meraki Cameras Info Collected and Saved! - 0:00:02.583565
Webex Devices Info Collected and Saved! - 0:00:00.441590
DNA Spaces Info Collected and Saved! - 0:00:00.741098
Meraki Clients Info Collected and Saved! - 0:00:01.527496
Meraki Cameras Info Collected and Saved! - 0:00:02.651590
Webex Devices Info Collected and Saved! - 0:00:00.567153
DNA Spaces Info Collected and Saved! - 0:00:00.827679
Meraki Clients Info Collected and Saved! - 0:00:01.549558
Meraki Dashboard Info Collected and Saved! - 0:00:23.853949
Meraki Cameras Info Collected and Saved! - 0:00:02.505838
Resources
- GITHUB Repository
- Here you will find the source code for OFFICE-DASHBOARD APP
- Setting up Office Dashboard VM
- Here you will find how to build your Linux VM to host OFFICE-DASHBOARD
- Setting up Meraki Module
- Here you will find how to setup Meraki Module
- Setting up Webex Module
- Here you will find how to setup WEBEX Module
- Setting up DNA Spaces Module
- Here you will find how to setup DNA Spaces Module