This repository contains the configuration files and setup for an ELK (Elasticsearch, Logstash, Kibana) stack along with a FastAPI app that implements CRUD methods.
Before starting, ensure you have the following installed:
- Docker
- Docker Compose
-
Clone the repository:
git clone https://github.com/olahsymbo/elk-fastapi-app-monitoring.git cd elk-fastapi-app-monitoring
-
Install the required Python packages using Poetry:
poetry install
- Configuration file:
elasticsearch/elasticsearch.yml
- Configuration files:
logstash/config/logstash.yml
logstash/pipeline/logstash.conf
- Configuration file:
kibana/kibana.yml
The FastAPI app is implemented in apis/app.py
and includes a POST | GET | PUT | DELETE request methods.
Dockerfile for FastAPI app: Dockerfile
Docker Compose file: docker-compose.yml
- Navigate to the project root directory.
- Run the following command:
docker-compose up -d
Here is kibana dashboard showing the logs: