블로그 글

시니 선생님이 개발 블로그에 쓴 글입니다.

ELK 스택이란 무엇일까? -
Logging Monitoring

ELK 스택이란 무엇일까? -

✅ 1. 서버가 여러 대일 때는 로그를 어떻게 찾을까? 웨이팅 API의 서버가 3대라고 가정해보자 고객 문의 CS가 들어와 로그를 뒤져야 한다고 하면 몇 번 서버를 뒤져야 할까? 에러를 찾기 위해 서버 1번부터 서버 3번까지 압축된 로그 파일을 하나

Logback, Logstash, Elasticsearch를 활용한 아키텍처 구성
Logging Monitoring

Logback, Logstash, Elasticsearch를 활용한 아키텍처 구성

✅ 1. 아키텍처 구성 ES는 로그 한 줄 한 줄을 각각의 도큐먼트로 만든다. 해당 도큐먼트를 모아서 날짜별 인덱스(Index)에 묶어서 보관한다.

[실습] 로그 압축(.gz)으로 서버 용량 확보하기
Logging Monitoring

[실습] 로그 압축(.gz)으로 서버 용량 확보하기

✅ 1. 로그를 압축해서 보관해야 하는 이유 로그가 긴 파일의 경우, 로그 파일 하나의 크기가 2GB가 넘는 파일도 있음 서버의 하드디스크는 무한하지 않기 때문에, 서버 용량 부족으로 에러가 발생할 수 있음 실무에서는 로그 파일을 그냥 보관하지 않고,

[실습] Docker 설치
Logging Monitoring

[실습] Docker 설치

✅ 1. Docker 설치 윈도우 사용자 맥 사용자 ✅ 2. 체크 사항 2023년 7월부터 Docker Compose V1의 업데이트를 중단했다. 따라서 Docker Compose는 V2를 설치할 것을 권장한다. 혹시나 기존에 설치되어 있는 Docke

로그를 파일로 보관하는 방법
Logging Monitoring

로그를 파일로 보관하는 방법

✅ 1. 콘솔 로그 로그를 실시간으로 확인할 수 있다. 서버를 재시작하거나, 해당 IDE 툴을 끄면 로그도 같이 날아간다. ✅ 2. 로그 파일로 저장 지난 로그를 활용하려면 파일로 저장해야 함. .log 파일 형태로 내 컴퓨터(서버)에 영구 보관 ✅ 

Logging Monitoring

Logback의 Appender란 무엇일까?

✅ 1. Appender란? Logback에서는 로그를 배송하는 목적지(출력 위치)를 Appender가 결정함 ✅ 2. Appender의 종류 ConsoleAppender FileAppender RollingFileAppender

Elasticsearch를 로그 수집에 사용하는 이유
Logging Monitoring

Elasticsearch를 로그 수집에 사용하는 이유

✅ 1. 로그 파일을 저장할 때 DB를 사용하면 안되는 이유 로그는 하루에도 수천만 건씩 쌓이는 엄청난 양의 텍스트 데이터임 MySQL과 같은 관계형 DB는 이런 방대한 텍스트에서 특정 단어를 검색하는 게 매우 오래 걸림 따라서 Elasticsearc

[실습] Elasticsearch, Logstash 설치 및 설정
Logging Monitoring

[실습] Elasticsearch, Logstash 설치 및 설정

✅ 1. Docker Compose 파일 작성 프로젝트 폴더 최상단에 해당 파일을 만든다 ✅ 2. logstash.conf 파일 작성 프로젝트 폴더 최상단에 해당 파일을 만든다 # 1. Input input { file { # 도커 컨테이너

Logstash의 핵심 기능은 무엇일까?
Logging Monitoring

Logstash의 핵심 기능은 무엇일까?

✅ 1. Logstash는 무슨 일을 할까? L(Logstash) : 각 서버에서 로그를 수집, 변환하여 Elasticsearch로 전달하는 도구 Logstash는 세 가지 단계(입력, 필터, 출력 구조)를 통해 움직인다 ✅ 2. Logstash의 핵

Logging Monitoring

[실습] 로그 읽기 실습으로 CS 대응하기

✅ 1. 문의 접수 내용 안녕하세요 콜센터 김직원입니다. 방금 오후 3시 30분쯤 ‘Tree’ 라는 고객님이 주문을 하셨는데, 쿠폰 할인이 적용이 안된다고 하십니다. 해당 건 확인 부탁드립니다. ✅ 2. 로그 분석 - 해당 시간대 로그 찾기 2026-

[실습] 실습으로 Log Level 이해하기
Logging Monitoring

[실습] 실습으로 Log Level 이해하기

✅ 1. 각 레벨에 맞게 로그 남겨보기 package com.hi.waiting_api; @Service @Slf4j public class WaitingService { private int currentWaitingCount = 0; /

[실습] MdcLoggingFilter로 UUID 부여하기
Logging Monitoring

[실습] MdcLoggingFilter로 UUID 부여하기

✅ 1. MDC 필터를 만드는 이유 웨이팅 API에서 100명의 손님이 동시에 웨이팅을 건다면 어떨까? 여러 로그들이 섞이며 로그가 복잡해지고, 에러 발생시 찾기 어려워진다. 서버에 들어오는 모든 요청에 대해 대기번호(Trace ID)를 붙여줄 수 있

시니 선생님 블로그 글 (13쪽) | JSCODE