@ -5,13 +5,13 @@ Currently this is an in-progress GSoC Summer of Code project and so the instruct
## Overview
## Overview
This project demonstrates how to configure and use Grafana Loki with OpenTelemetry to collect, parse, and visualize log data. It includes:
This project demonstrates how to configure and use Grafana Loki with OpenTelemetry to collect, parse, and visualize log data from Jitsi Meet components. It includes:
- A Docker Compose setup (`log-analyser.yml`) for Loki and OpenTelemetry Collector.
- A Docker Compose setup (`log-analyser.yml`) for Loki and OpenTelemetry Collector.
- A Docker Compose setup (`grafana.yml`) for Grafana.
- A Docker Compose setup (`grafana.yml`) for Grafana.
- Configuration files for log parsing and exporting.
- A unified Docker Compose command to start all services.
- Instructions to set up and access Grafana with Loki as a data source.
- Instructions to set up and access Grafana with Loki as a data source.
-
## Getting Started
## Getting Started
### Prerequisites
### Prerequisites
@ -23,39 +23,39 @@ This project demonstrates how to configure and use Grafana Loki with OpenTelemet
Place your log file in the `log-analyser/jitsi-logs` directory. Update the `otel-collector-config.yaml` file with the correct file path to start ingesting the logs. This setup allows OpenTelemetry to read logs from the file and forward them to Loki.
To enable log collection and analysis, you need to modify the `docker-compose.yml` file for Jitsi Meet components. Add the following configuration to each Jitsi service within the `docker-compose.yml` file:
2. **Update the otel-collector-config.yaml file:**
```yaml
logging:
driver: "json-file"
options:
labels: "service"
```
Update the file path to point to your log file for ingestion by OpenTelemetry.
This configuration ensures that logs are collected in JSON format and tagged with service labels, which is essential for Loki to properly ingest and index the logs.
3. **Start the Docker containers:**
3. **Start the Docker containers:**
```bash
To start all necessary services, including Jitsi Meet components, Grafana, Loki, and OpenTelemetry, run:
docker-compose -f docker-compose.yml -f log-analyser.yml up -d
```
### Grafana
1. **Start the Docker container:**
```bash
```bash
docker-compose -f docker-compose.yml -f grafana.yml up -d
docker-compose -f docker-compose.yml -f log-analyser.yml -f grafana.yml up -d
```
```
2. **Access Grafana:**
- This command will start the Jitsi Meet components from `docker-compose.yml`, the log analysis tools from `log-analyser.yml`, and Grafana from `grafana.yml`. The logs from Jitsi Meet components will automatically be sent to Grafana through Loki.
- **Note:** To use only Grafana for visualization without log analysis, you can use just `grafana.yml` alone. However, for the complete log analysis project, you need both `log-analyser.yml` and `grafana.yml`.
### Access Grafana
Open your web browser and navigate to [http://localhost:3000](http://localhost:3000).
1. **Open your web browser and navigate to [http://localhost:3000](http://localhost:3000).**
3. **Log in to Grafana:**
2. **Log in to Grafana:**
Use the default credentials:
Use the default credentials:
@ -64,16 +64,17 @@ This project demonstrates how to configure and use Grafana Loki with OpenTelemet
Password: admin
Password: admin
```
```
### Dashboard Setup
3. **Dashboard Setup:**
The dashboard setups are available as JSON files in the `log-analyser/grafana-dashboards` directory. You can import these JSON files into Grafana to use the pre-configured dashboards. In the future, we plan to automate this import process.
The dashboards for Jitsi Meet components are pre-configured and will be automatically available in Grafana. You can explore these dashboards to view and analyze logs.
## Usage
## Usage
- **Log Parsing and Visualization:** After setting up, you can use Grafana to explore and visualize your logs. Check our dashboards and panels to monitor log data effectively.
- **Log Parsing and Visualization:** After setting up, use Grafana to explore and visualize your logs. Check the pre-configured dashboards and panels to monitor and analyze log data from Jitsi Meet components effectively.
## Acknowledgements
## Acknowledgements
Thanks for checking out this project! If you have any questions or need further assistance, don't hesitate to reach out.
Thank you for exploring this project!
For detailed documentation, follow the [Jitsi Handbook](https://jitsi.github.io/handbook/docs/intro), you can follow the Docker and Log-Analyser guides under Self-Hosting Guide > Deployment guide.
If you have any questions or need further assistance, please feel free to reach out.