Commit graph

170 commits

Author SHA1 Message Date
Alessandro Petitcollin
fb1b69a0ae (tic-tac-toe): Added button to restart game. 2025-12-07 01:31:29 +01:00
Alessandro Petitcollin
9653b0cbe6 (tic-tac-toe): Board is now locked once game is finished. 2025-12-07 01:14:53 +01:00
apetitco
7f412c8fb5 (feat): Maieul helped starting the frontend. 2025-12-04 17:59:34 +01:00
apetitco
56ad511ceb (punition): No more working on backend until Maieul says so :( 2025-12-04 17:53:32 +01:00
apetitco
9734e2d865 (docker-compose): Added tic-tac-toe service to the docker-compose file. 2025-12-04 15:33:05 +01:00
apetitco
8b91505894 (eslint): Removed empty line. 2025-12-04 15:25:31 +01:00
apetitco
69809e284e (eslint): Removed trailing space at end of line 2. 2025-12-04 15:22:42 +01:00
apetitco
8e3413fb95 (misc): Added configuration files. 2025-12-04 15:20:13 +01:00
apetitco
fe52fbbbd4 (misc): Started working on app.ts. 2025-12-04 15:17:24 +01:00
apetitco
c7149cffad (misc): Started working on entrypoint for the microservice. 2025-12-04 15:05:49 +01:00
apetitco
e9a61f1716 (misc): Initial commit 2025-12-04 14:17:33 +01:00
NigeParis
0f3414e8ce minor text update 2025-11-25 16:13:43 +01:00
NigeParis
3091d25774 Add Flashes to buttons 2025-11-25 16:13:43 +01:00
NigeParis
40b807efc8 Connected Button Added now working 2025-11-25 16:13:43 +01:00
Maieul BOYER
deaf58dfce update 2025-11-25 16:13:43 +01:00
Maieul BOYER
0358a6025b socket fix 2025-11-25 16:13:43 +01:00
NigeParis
b215904cfd Added Connected button to show how many connected to the chat 2025-11-25 16:13:43 +01:00
NigeParis
e530de6ce7 added protection for messages broadcast - stops unknown receiving broadcast messages 2025-11-25 16:13:43 +01:00
NigeParis
5031efa866 Add Arrived in Chat and Left in chat LoginName 2025-11-25 16:13:43 +01:00
Maieul BOYER
757a436fc6
chore(deps): updated deps and removed stray lockfile 2025-11-24 17:03:58 +01:00
NigeParis
b85d9b64c7 WIP progress chat broadcast 2025-11-21 14:17:37 +01:00
Maieul BOYER
eec27ce2e6 feat(chat): updated to work with socket.io
- Chore: ran `make npm@update` to update deps and lockfile
- Chat: new plugin: Socket.ts that allow the use of socket.io with
  fastify (fastify-socket.io is not updated)
- Chat: Put everything from `src/socket.ts` that needed to be saved into
  `src/app.ts`
2025-11-21 14:17:37 +01:00
NigeParis
6ff1745f16 pas connection :-( 2025-11-21 14:17:37 +01:00
NigeParis
ffa7c305f1 socket io RAW testing 2025-11-21 14:17:37 +01:00
NigeParis
b07040b61b eslint done __up to date pushing for review 2025-11-21 14:17:37 +01:00
NigeParis
d43e62dfc1 Chat basic works - with also console out pur to check data 2025-11-21 14:17:37 +01:00
NigeParis
486f0ff425 broadcast generally working 2025-11-21 14:17:37 +01:00
NigeParis
98631be918 WIP BroadCast working on console... needs more work 2025-11-21 14:17:37 +01:00
NigeParis
d89c21dd2c WIP on separation socket-client from chat.ts 2025-11-21 14:17:37 +01:00
NigeParis
9889600708 separated socket from app for clear develoopement 2025-11-21 14:17:37 +01:00
Maieul BOYER
0a504a75ce socket io with fastify 2025-11-21 14:17:37 +01:00
NigeParis
34e9f8e3ca socket default acess refuse server 2025-11-21 14:17:37 +01:00
NigeParis
cf6f3145b6 socket.io first attempt 2025-11-21 14:17:37 +01:00
Maieul BOYER
5a905a1239 feat(oauth2/db): reworked oauth2 database footprint
- Removed `auth` table and merged its information inside the `user`
  table
- Changed around some field names in the database
- Changed Create*User functions to not be using overload but different
  functions
2025-11-18 15:30:55 +01:00
Maieul BOYER
34249bf68d
chore(deps): removed vulnerable dependency (rimraf) 2025-11-18 15:18:07 +01:00
Maieul BOYER
b1d4f68453 feat(frontend): added returnTo to login and signin page 2025-11-16 17:06:40 +01:00
Raphaël
033d399fcb
Merge pull request #38 from Maix0/maix/fixes/monitoring 2025-11-15 11:49:43 +01:00
Maieul BOYER
a4bf71cc6a
feat(monitoring): wrote plugin for /monitoring endpoint and updated service to use them 2025-11-14 22:43:31 +01:00
Raphaël
e44a3af76d
Logs module
## 🦌 Centralized Logging Stack Integration

### ELK Stack Online

- Added **`elasticsearch`**, **`logstash`**, and **`kibana`** services to `docker-compose.yml`:
  - **Elasticsearch** for log storage and indexing with persistent volumes.
  - **Logstash** as the GELF entrypoint, handling log ingestion and transformation.
  - **Kibana** as the web UI for log exploration, dashboards, and saved searches.
- Each ELK service is wired with:
  - **Persistent storage** to survive restarts.
  - **Environment variables** for credentials and tuning.
  - **Bootstrap scripts** to perform initial setup (policies, templates, dashboards, etc.).

### Global GELF Logging

- All existing services now use the **GELF logging driver** in `docker-compose.yml`:
  - Containers send their logs to **Logstash** instead of stdout-only.
  - Provides **structured**, centralized logs ready for querying in Elasticsearch/Kibana.
- Result: no more log hunting across containers — everything lands in one searchable place.

---

## 🔁 Log Lifecycle & Visualization Automation

### Elasticsearch & Kibana Bootstrap

- Introduced **bootstrap scripts and config files** to automate:
  - **Index Lifecycle Management (ILM)** policies for log retention and rollover.
  - **Index templates** for log indices (naming, mappings, and settings).
  - **Kibana imports** (index patterns / data views, dashboards, visualizations).
- This turns ELK setup from a manual ritual into a **single-command provisioning step**.

### Logstash Pipeline Upgrade

- Added a **Logstash pipeline configuration** to:
  - Ingest **GELF** logs from Docker.
  - **Normalize/rename fields** for consistent querying across services.
  - Index logs into **Elasticsearch** with **daily rotation per container** pattern.
- Outcome: logs are structured, tagged by container, and auto-rotated to keep storage sane.

---

## 🛠 Makefile & Docker.mk Enhancements

### Logs Setup Targets

- Added a new **`logs`** target in `Makefile` (with `.PHONY` declaration) to manage logging setup from the top level.
- Added a **`logs-setup`** target in `Docker.mk` to:
  - Initialize **ILM policies** in Elasticsearch.
  - Apply **index templates** for logs.
  - Create **Kibana index patterns** so logs are immediately visible in the UI.
- These targets plug into the existing tooling, making logging setup part of the **standard dev/ops workflow**.

---

## 🔐 Environment Configuration

### Secure Elasticsearch Access

- Updated `env.example` to include:
  - **`ELASTIC_PASSWORD`**: central password for Elasticsearch authentication.
- Encourages **secure-by-default** deployments and aligns local/dev with production-style security.

---

## 📈 Monitoring Configuration Updates

### Grafana Alerting & Prometheus Cleanup

- Added a **basic alerting policy for Grafana**:
  - Provides a default routing tree for alerts.
  - Acts as a foundation for future, more granular alert rules.
- Cleaned up **Prometheus scrape configuration**:
  - Removed obsolete backend scrape targets.
  - Keeps monitoring config focused on **live** and relevant services.
2025-11-14 22:01:24 +01:00
Raphael
f1805ff9be
Merge branch 'master' into raph/logs 2025-11-14 21:53:46 +01:00
Maieul BOYER
f1569b7120
chore(deps): updated pnpm-lock.yaml 2025-11-14 19:10:20 +01:00
Maieul BOYER
470007c9f8
feat(chat): removed unused depedencies 2025-11-14 19:08:27 +01:00
Maieul BOYER
7bdf667ece
feat(logs): removed unused mkdir in elasticsearch 2025-11-14 18:54:39 +01:00
Maieul BOYER
6a75faa40f
feat(logs/kibana): made it so dashboard is default page 2025-11-14 18:32:28 +01:00
Maieul BOYER
46fb7d81aa
feat(logs/kibana): import dashboard 2025-11-14 18:27:40 +01:00
Maieul BOYER
8dd0a74046
feat(logs): make it so rule logs-setup isn't necessary 2025-11-14 17:58:45 +01:00
Maieul BOYER
6d630fee92 feat(frontend/auth): Added way to automatically fetch providers
This allows the frontend to list all available providers without
hardcoding them in.
2025-11-14 16:57:14 +01:00
Raphaël
3ef811b334
Merge branch 'master' into raph/logs 2025-11-14 16:25:06 +01:00
Raphael
b6789188ae
core(env): adding the elastic password to the env 2025-11-14 16:21:49 +01:00
Raphael
bf0b1a7772
feat(logs/ilm): adding the logs management 2025-11-14 16:18:01 +01:00