VMWatch is a powerful application that allows you to effortlessly set up an open-source, proven observability stack on your virtual machines (VMs) and small environments. By leveraging VMWatch, you can quickly deploy and interact with various observability components, such as Grafana, Mimir, Loki, Tempo, and Vector, enabling you to build robust monitoring and logging solutions tailored to your needs.
-
Effortless Setup: VMWatch simplifies the setup and configuration of multiple observability components, including Grafana, Mimir, Loki, Tempo, and Vector.
-
Accelerated Development: Streamline the development and testing process for observability components, ensuring changes are thoroughly validated before being deployed to production.
-
Discover and Experiment: Explore interactions between different observability tools, like OpenTelemetry and Grafana Lab, to identify and optimize configurations that work best for your environment.
-
SDK and Application Development: VMWatch provides a comprehensive playground to accelerate the development and testing of software development kits (SDKs) and applications that rely on diverse observability tools.
Note: The following sections below provide instructions and additional information for using the VMWatch application.
- Clone the VMWatch repository:
git clone https://github.com/VMWatch/vmwatch.git
- Update the configuration files as needed:
- Loki:
vim config/loki - Vector:
vim config/vector/vector.toml - Mimir:
vim config/mimir(optional)
- Start the observability components using Docker Compose:
sudo docker-compose up -d
Once the environment is up and running, you can access the following services:
- Mimir:
http://localhost:9090/ - Grafana:
http://localhost:3000/ - Vector:
http://localhost:8686/ - Loki:
http://localhost:3100/ - Tempo:
http://localhost:3200/ - OTEL GRPC:
http://localhost:5555/
- Set up an alias for
mimirtoolfor easier usage:
alias mimirtool='docker run --rm --net examples_net grafana/mimirtool:latest'
- Run
mimirtoolcommands, for example:
mimirtool rules get --address http://load-balancer:9009 --id=demo demo_namespace demo_group
- VMWatch comes pre-configured with both Alert and Recording rules for Mimir and Loki setups.
We provide a Postman collection to simplify interactions with the observability components. To use the Postman collection:
-
Download and install Postman.
-
Import the Postman collection from the
postmandirectory in the VMWatch repository. -
Customize the collection variables to match your VMWatch environment (e.g., update base URLs).
-
Explore the API endpoints and execute requests to interact with Grafana, Mimir, Loki, Tempo, and Vector.
If you want to contribute to the VMWatch project and work on the code, make sure you have the following utilities installed:
Here are some useful resource links for understanding VMWatch components and related practices:
- Metric Naming
- Labels
- Docker Setup Guide
- Grafana Documentation
- Loki Documentation
- Tempo Documentation
- Vector Documentation
- Puneet Gupta
This project is licensed under the MIT License.
We welcome contributions from the community. If you want to contribute to VMWatch, please follow our Contribution Guidelines.
Please review and adhere to our Code of Conduct to foster an inclusive and welcoming community.
For any questions or issues, please use our Issue Tracker or join our Discord Server for community support.
If your project is built on the work of other developers, organizations, or libraries, acknowledge them here.
By using VMWatch, you can set up a powerful observability stack on your virtual machines and small environments with ease, benefiting from a unified platform to experiment, develop, and test observability tools effectively. Start leveraging VMWatch today to enhance your monitoring and logging capabilities!