-
Notifications
You must be signed in to change notification settings - Fork 4
ELK
Francois edited this page Dec 19, 2025
·
1 revision
Presentation : ELK is a set of tools used for searching (Elastic Search), analyzing (LogStash) and visualizing (Kibana) data in real time.
For the Transcendence project, ELK stack serves as a centralized logging solution. Key benefits are :
- centralization: no need to individually check each container logs
- incident response: filters such as events and reasons help to quickly analyze the scale, gravity and origin of a problem
Each tool runs as an idependant service, and as such is parameterized in docker-compose.
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0
environment:
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ports:
- "9200:9200"
logstash:
image: docker.elastic.co/logstash/logstash:7.17.0
volumes:
- ./elk/logstash/pipeline:/usr/share/logstash/pipeline
ports:
- "5000:5000/tcp"
- "5000:5000/udp"
depends_on:
- elasticsearch
kibana:
image: docker.elastic.co/kibana/kibana:7.17.0
ports:
- "5601:5601"
depends_on:
- elasticsearch
input {
tcp {
port => 5000
codec => json_lines
}
}
output {
elasticsearch {
hosts => ["elasticsearch:9200"]
index => "logs-%{+YYYY.MM.dd}"
}
stdout { codec => rubydebug }
}
- specific dashboard in Kibana with : "Number of Pong Games Played", "Active Users" (logged in last 30 days), ...
| โ Do | โ Don't |
|---|---|
| Structure logs in JSON with project log contexts | Log sensitive data (passwords, tokens, PII) |
| Configure policies to delete old logs | Expose ports publicly |
| Filter noise : drop debug logs with Logstash filters | Ignore ELK health status |
| Type | Ressource | Notes |
|---|---|---|
| ๐ | Official Docs Elastic | - |
| ๐ฅ | ELK Overview | Not checked |
| ๐ฅ | ELK Tutorial | Not checked |
| ๐ฅ | Node.js ms : Monitoring and logging | Not checked |
Legend: ๐ Doc, ๐ Book, ๐ฅ Video, ๐ป GitHub, ๐ฆ Package, ๐ก Blog
- Gateway Service - API Gateway & JWT validation
- Auth Service - Authentication & 2FA/TOTP
- AI Service - AI opponent
- API Documentation - OpenAPI/Swagger
- DB Schema - Databases
- Fastify - Web framework
- Prisma - ORM
- WebSockets - Real-time communication
- Restful API - API standards
- React - UI library
- CSS - Styling
- Tailwind - CSS framework
- Accessibility - WCAG compliance
- TypeScript - Language
- Zod - Schema validation
- Nginx - Reverse proxy
- Logging and Error management - Observability
- OAuth 2.0 - Authentication flows
- Two-factor authentication - 2FA/TOTP
- Avalanche - Blockchain network
- Hardhat - Development framework
- Solidity - Smart contracts language
- Open Zeppelin - Security standards
- ESLint - Linting
- Vitest - Testing
- GitHub Actions - CI/CD
- Husky, Commit lints and git hooks - Git hooks
- ELK - Logging stack
๐ Page model