feat(logs): make it so rule logs-setup isn't necessary
This commit is contained in:
parent
3ef811b334
commit
8dd0a74046
9 changed files with 49 additions and 11 deletions
|
|
@ -6,10 +6,12 @@
|
|||
# By: maiboyer <maiboyer@student.42.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/06/11 18:10:26 by maiboyer #+# #+# #
|
||||
# Updated: 2025/11/14 16:13:22 by rparodi ### ########.fr #
|
||||
# Updated: 2025/11/14 17:41:06 by maiboyer ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
.PHONY: logs
|
||||
|
||||
all: build
|
||||
docker compose up -d
|
||||
|
||||
|
|
|
|||
5
Makefile
5
Makefile
|
|
@ -6,7 +6,7 @@
|
|||
# By: rparodi <rparodi@student.42.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2023/11/12 11:05:05 by rparodi #+# #+# #
|
||||
# Updated: 2025/11/14 15:14:34 by rparodi ### ########.fr #
|
||||
# Updated: 2025/11/14 17:40:57 by maiboyer ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
|
|
@ -32,7 +32,6 @@ ECHO = /usr/bin/env echo
|
|||
all:
|
||||
@$(MAKE) --no-print-directory header
|
||||
@$(MAKE) --no-print-directory -f ./Docker.mk
|
||||
@$(MAKE) --no-print-directory -f ./Docker.mk logs-setup
|
||||
@$(MAKE) --no-print-directory footer
|
||||
|
||||
build:
|
||||
|
|
@ -158,4 +157,4 @@ fnginx: nginx-dev/nginx-selfsigned.crt nginx-dev/nginx-selfsigned.key
|
|||
wait
|
||||
|
||||
# phony
|
||||
.PHONY: all clean fclean re header footer npm@install npm@clean npm@fclean npm@build sql tmux
|
||||
.PHONY: all clean fclean re header footer npm@install npm@clean npm@fclean npm@build sql tmux logs
|
||||
|
|
|
|||
|
|
@ -249,9 +249,11 @@ services:
|
|||
- ES_JAVA_OPTS=-Xms512m -Xmx512m
|
||||
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
|
||||
volumes:
|
||||
- ./logs/elasticsearch/data:/usr/share/elasticsearch/data
|
||||
- elastic-data:/usr/share/elasticsearch/data
|
||||
- ./logs/elasticsearch:/setup
|
||||
ports:
|
||||
- "9200:9200"
|
||||
command: ["/setup/bootstrap.sh"]
|
||||
restart: unless-stopped
|
||||
|
||||
logstash:
|
||||
|
|
@ -281,6 +283,9 @@ services:
|
|||
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
|
||||
ports:
|
||||
- "5601:5601"
|
||||
volumes:
|
||||
- ./logs/kibana:/setup
|
||||
command: ["/setup/bootstrap.sh"]
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
|
|
@ -288,3 +293,4 @@ volumes:
|
|||
sqlite-volume:
|
||||
static-volume:
|
||||
grafana-data:
|
||||
elastic-data:
|
||||
|
|
|
|||
19
logs/elasticsearch/bootstrap.sh
Executable file
19
logs/elasticsearch/bootstrap.sh
Executable file
|
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
setup_ilm() {
|
||||
set -xe
|
||||
until curl -s -f http://localhost:9200 >/dev/null; do
|
||||
sleep 2;
|
||||
done;
|
||||
|
||||
curl -v -X PUT "localhost:9200/_ilm/policy/docker-logs-policy" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '@/setup/docker-logs-policy.json'
|
||||
curl -v -X PUT "localhost:9200/_template/docker-logs-template" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '@/setup/docker-logs-template.json'
|
||||
exit 0
|
||||
}
|
||||
|
||||
setup_ilm &
|
||||
exec /usr/local/bin/docker-entrypoint.sh eswrapper >/dev/null
|
||||
1
logs/elasticsearch/docker-logs-template.json
Normal file
1
logs/elasticsearch/docker-logs-template.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"index_patterns":["docker-*"],"settings":{"index.lifecycle.name":"docker-logs-policy"}}}
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"index_patterns": ["docker-*"],
|
||||
"settings": {
|
||||
"index.lifecycle.name": "docker-logs-policy"
|
||||
}
|
||||
}
|
||||
16
logs/kibana/bootstrap.sh
Executable file
16
logs/kibana/bootstrap.sh
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
kibana_setup() {
|
||||
set -xe
|
||||
until curl -s -f "localhost:5601/api/status"; do
|
||||
sleep 2
|
||||
done
|
||||
|
||||
curl -v -X POST "localhost:5601/api/saved_objects/index-pattern/docker-logs" \
|
||||
-H "kbn-xsrf: true" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '@/setup/docker-logs.json'
|
||||
exit 0
|
||||
}
|
||||
kibana_setup &
|
||||
exec /usr/local/bin/kibana-docker >/dev/null
|
||||
1
logs/kibana/docker-logs.json
Normal file
1
logs/kibana/docker-logs.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"attributes":{"title":"docker-*","timeFieldName":"@timestamp"}}
|
||||
Loading…
Add table
Add a link
Reference in a new issue