Please check the TechStack.md file for details.
The goal of this mini-project is to introduce you to three important monitoring tools and data stores used in the software landscape. These are prometheus, grafana and influxDB. In this project you will find implementations using micrometer and a store for metrics. These modules have been implemented in a Reactive way with WebFlux and the Front End is implemented with Angular Materials.
This project is also the official support project of my article on medium:
In order to run this project we need to fulfill some requirements:
- Have an IDE
- Have JDK17 installed (Details on how to do that in this manual)
- Have Docker desktop installed or just use a Linux machine with docker-compose.
brew upgrade gradle
sdk install java 17-open
sdk use java 17-open
sdk install gradle 7.3.3
make dcup-full-action
Does not work with Cypress, and it needs to be configured. Check the Okta manual of this project for more details.
export REDIRECT_PORT=8080
make dcup-full-action-secure
These Cypress tests not only perform tests, but they also generate token files necessary to allow Telegraf to access InfluxDB. These are:
The full demo Makefile script ensures that:
- The services start
- Cypress tests run
- Telegraf runs on a separate container
It can take anything between 5 and 10 minutes to get all the containers going, but then you'll get:
- Working InfluxDB scrappers: Pull from prometheus endpoints directly to InfluxDB
- Working Telegraf scrappers: Pull from prometheus and pushes data to Influx DB
make cypress-open-docker
make cypress-open
-
Objects API Swagger UI -
/objects/v3/api-docs
-
Objects API Swagger UI -
/objects/v3/api-docs
- Micrometer Prometheus
- How to Configure an OAuth2 Authentication With Spring Security (Part 1)
- Grafana Installing using Docker
- Prometheus.IO
- Prometheus parameter examples
- Travel Web Cams
- Airport Finder
- RapidAPI
- Postman OAuth 2.0
- How do you rename a Git tag?
- The 10 Best Software Engineering Books in 2019
- Using Prometheus with InfluxDB for metrics storage
- Data exploration using InfluxQL
- Monitoring nginx with Prometheus and Grafana by Dimitri