[Spring] Docker๋ฅผ ํ์ฉํ Kibana ์ค์ , Kibana๋ก ๋ก๊ทธ ํ์ธํ๊ธฐ
Docker Compose ํ์ผ์ Kibana ์ค์ ์ถ๊ฐํฉ๋๋ค.
version: "3.8"
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.10.0
container_name: elasticsearch
platform: linux/arm64
ports:
- "9200:9200"
environment:
- discovery.type=single-node
- xpack.security.enabled=false
- ES_JAVA_OPTS=-Xms256m -Xmx256m # 256MB๋ก ์ต์ ์ค์ , ํ๋ก๋์
ํ๊ฒฝ์์๋ ์ฌ์ค์ ํ์
networks:
- elastic-network
logstash:
image: docker.elastic.co/logstash/logstash:8.10.0
container_name: logstash
platform: linux/arm64
ports:
- "5044:5044"
- "9600:9600"
volumes:
- ./logstash.conf:/usr/share/logstash/pipeline/logstash.conf
networks:
- elastic-network
kibana:
image: kibana:8.10.1
container_name: kibana
platform: linux/arm64
ports:
- "5601:5601"
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
networks:
- elastic-network
depends_on:
- elasticsearch # Kibana๋ Elasticsearch๊ฐ ์์๋ ํ์ ์์๋จ
Kibana ์ ์
http://localhost:5601
์น์์ localhost:5601 ํฌํธ๋ก ์ ์ํด์ฃผ๋ฉด ๋ฉ๋๋ค.
์ผ์ชฝ 3๊ฐ ๋ง๋๊ธฐ ๋๋ฅธํ Discover ๋ผ๋ ํ์ด์ง๋ก ๋ค์ด์จํ Create Data view ๋ฅผ ๋๋ฌ์ค๋๋ค.
์ค๋ฅธ์ชฝ์ ์ด๋ฏธ ์ค์ ํ์ผ์ ์์ฑํ ์ธ๋ฑ์ค์ ๋๋ค.
๋ก๊ทธ๊ฐ ๋ ์ง์ ๋ฐ๋ผ ์์ฑ๋๋๋ก ์ธ๋ฑ์ค ํจํด์ application-logs-* ํ์์ผ๋ก ์ค์ ํฉ๋๋ค. ์ฌ๊ธฐ์ *๋ ๋ ์ง์ ๋ฐ๋ผ ๋ณ๋๋ฉ๋๋ค.
Timestamp field๋ ๋ฐ์ดํฐ์์ ์๊ฐ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ ํ๋์ ๋๋ค. Kibana์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก @timestamp ํ๋๋ฅผ ์๊ณ์ด ๋ฐ์ดํฐ๋ก ์ธ์ํฉ๋๋ค.
์ค์ ์ ์๋ฃํ๋ฉด ์กฐ๊ฑด์ ํด๋นํ๋ ๊ฒฐ๊ณผ๊ฐ ์๋ฌด๊ฒ๋ ์๊ธฐ ๋๋ฌธ์ ์์ ์ฌ์ง์ฒ๋ผ ๋ณด์ฌ์ง๋๋ค.
์ํ๋ ๊ฒ์์ด๋ฅผ ์ ๋ ฅํ๋ฉด ํน์ ์๋น์ค ํด๋์ค์์ ํด๋น ๊ฒ์์ด๊ฐ ํฌํจ๋ ๋ก๊ทธ๊ฐ ์ ์์ ์ผ๋ก ๊ฒ์๋จ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด์ ๊ฐ์ด, ์๋น์ค ์ฌ์ฉ์๊ฐ ํน์ URL ์์ฒญ ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ ๊ณ ๊ฐ ๋ฌธ์(CS)๊ฐ ์ ์๋ ๊ฒฝ์ฐ, ํด๋น URL์ ๊ธฐ์ค์ผ๋ก ๋ก๊ทธ๋ฅผ ๊ฒ์ํ๋ฉด ๋ฉ๋๋ค.
๋๋ถ๋ถ์ ์๋น์ค์์ ๋ก๊ทธ ๊ฒ์์ด ํ์ํ ์ํฉ์์๋ ๋ฌธ์ ์ ๊ด๋ จ๋ ๋จ์๋ฅผ ์ ๊ณตํ๋ ํค์๋๋ฅผ ํ์ฉํ์ฌ ๋ก๊ทธ๋ฅผ ์กฐํํ๋ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค.
[์ฐธ๊ณ ]
๊ฐ๋ฐ์์๊ฒ ํ์ํ ๋ก๊ทธ ๊ด๋ฆฌ ๊ฐ์ | ์ด์คํ(Foo) - ์ธํ๋ฐ
์ด์คํ(Foo) | , ์์ง๋ SSH๋ก ์๋ฒ์ ์ ์ํด์ ๋ก๊ทธ๋ฅผ ๋ณด์๋์?์๋ฒ์ ์ง์ ๋ก๊ทธ์ธํ์ฌ ๋ก๊ทธ ํ์ผ์ ํ์ธํ๋ ๋ฐฉ์์ ์ฌ๋ฌ ๊ฐ์ง ํ๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ฒซ์งธ, ์ฌ๋ฌ ๋์ ์๋ฒ๋ฅผ ์ด์ํ ๊ฒฝ์ฐ ๊ฐ
www.inflearn.com