heechann
이전 블로그 글 : https://heechann.github.io/
close
프로필 배경
프로필 로고

heechann

  • 글 (21) N
    • JVM (0)
    • Java (2) N
    • Spring Boot (6)
    • Spring Framework (1)
    • Spring JPA (1)
    • Gradle (2)
    • MySQL (1)
    • 오픈소스 (2)
    • 일상 (5)
    • 책 (0)
    • archives (1)
  • 홈
  • 태그
  • 방명록
Spring Boot 로깅 (2) - logback-spring.xml 설정 및 Grafana Loki 연동

Spring Boot 로깅 (2) - logback-spring.xml 설정 및 Grafana Loki 연동

이번글에서는 Logback 아키텍처를 이해하고 `logback-spring.xml` 파일 작성하는 방법을 정리하려 합니다. 그리고 최종적으로 Grafana Loki로 연동하여 수집된 로그가 모니터링 도구에서 어떻게 표시되는지까지 확인해보려고 합니다. 이전에는 AI의 도움을 받아 설정 파일을 급하게 작성한 적이 있었는데 앞으로는 직접 작성할 수 있으면 좋을 것 같고, Grafana Loki에 연동했을 때 대시보드에 어떻게 로그가 보이는지 직접 살펴보는 것이 목표입니다. 실습을 진행한 환경은 윈도우 11이며 아래 링크는 제가 실습을 진행하며 사용한 Spring Boot 프로젝트 입니다. java-play-ground/practice_logging at main · HeeChanN/java-play-groun..

  • format_list_bulleted Spring Boot
  • · 2025. 9. 21.
  • textsms
Spring Boot 로깅 (1) - 기초

Spring Boot 로깅 (1) - 기초

프로젝트에 로그를 수집하여 모니터링할 수 있는 기능을 추가하려고 Spring Boot의 Logging문서를 보게 되었다. 원래는 Logback-spring.xml만 잘 설정해서 로그 기능만 추가하려는 생각을 했다가 문득 왜 Logback을 사용하고 Commons Logging은 뭐지?라는 궁금증이 들었고 그 내용을 한번 정리해 보자고 마음먹게 되었다. 1. Commons Logging(JCL) 이란?Spring Boot로 프로젝트를 시작할 때, spring-starter-web 의존성을 추가하고 애플리케이션 로그를 출력하는 코드를 작성하면 아래 그림과 같이 commons.logging과 관련된 import 코드가 추가되는 것을 볼 수 있다.위 코드를 실행시켜 Log 클래스를 출력해보면 아래와 같은 결..

  • format_list_bulleted Spring Boot
  • · 2025. 9. 16.
  • textsms
Spring Rest Docs (3) - Validation 규칙을 API 문서에 추가하기 (restdocs-api-spec)

Spring Rest Docs (3) - Validation 규칙을 API 문서에 추가하기 (restdocs-api-spec)

이 글에서 사용한 전체 코드는 다음 레포지토리에 존재합니다.https://github.com/HeeChanN/java-play-ground/tree/main/practice_rest_docs java-play-ground/practice_rest_docs at main · HeeChanN/java-play-groundjava로 이것저것. Contribute to HeeChanN/java-play-ground development by creating an account on GitHub.github.com 1. jakarta.validation.* 을 지원하지 않는 문제 JDK 17, Spring Boot 3.x 버전을 사용하면 Bean Validation을 jakarta.* 의존성을 사용한다. 공식문..

  • format_list_bulleted Spring Boot
  • · 2025. 7. 8.
  • textsms
Spring Rest Docs (2) - API 문서에 디자인 입히기 (swagger, redoc)

Spring Rest Docs (2) - API 문서에 디자인 입히기 (swagger, redoc)

Spring Rest Docs로 나온 Snippet들을 이용하여 API 문서를 만들 때, adoc 파일을 작성하여 만드는 방법 이외에 swagger 혹은 redoc을 이용하여 만드는 방법이 있습니다. 이 방법들을 사용하면 따로 adoc 파일을 작성하지 않아도 된다는 큰 장점이 존재해서 빠르게 API 문서를 만들어야 한다면 도입해 볼만하다고 생각합니다. 1. restdocs-api-spec 설정 추가`swagger`나 `redoc`을 사용하기 위해서 기존의 Snippet들을 json으로 만들어 줘야하는데 이를 자동으로 변환하기 위해 `restdocs-api-spec` 플러그인 설정을 Gradle 빌드 스크립트에 추가한다. restdocs-api-spec의 장점은 Spring Rest Docs 기반으로 작..

  • format_list_bulleted Spring Boot
  • · 2025. 7. 8.
  • textsms
Spring Rest Docs 사용하기 (1) - 기본 설정과 API 문서 생성

Spring Rest Docs 사용하기 (1) - 기본 설정과 API 문서 생성

그동안 API 문서화를 위해 Swagger UI를 사용했다. 하지만 사용하면서 몇 가지 아쉬운 점들이 있었다. 문서의 최신화가 어려웠다. 코드가 변경될 때마다 어노테이션을 함께 수정해야 했는데, 이 과정에서 종종 누락이 발생했고 실제 API와 문서 간의 불일치가 생겼다.둘째, 비즈니스 로직과 무관한 문서화 코드가 Controller에 계속 쌓이는 것이 불편했다. @ApiOperation, @ApiParam 등의 어노테이션들이 Controller 클래스를 복잡하게 만들고, 코드의 가독성을 떨어뜨렸다. 최근 테스트 코드 작성에 집중하면서 Controller Slice 테스트를 통해 API 문서를 자동 생성할 수 있는 Spring Rest Docs를 알게 되었다. 테스트가 성공해야만 문서가 생성되는 구조라 문..

  • format_list_bulleted Spring Boot
  • · 2025. 7. 4.
  • textsms
Spring Boot에서 발생한 TimeZone 문제

Spring Boot에서 발생한 TimeZone 문제

Spring Boot로 프로젝트를 진행할 때, Local 노트북 환경에서는 문제없이 동작하던 시간 비교 로직이 리눅스 우분투 환경에서는 예상과 다르게 동작하는 현상을 발견했다. Client에서 요청에 finished_at과 같은 (날짜 + 시간) 데이터를 전달할 때, 원하는 값에 9시간이 더해져서 DB에 저장되고 있었다. 이 글에서는 이러한 문제가 왜 발생했는지 분석하고, 지금까지 Spring Boot 개발 과정에서 적용되었던 시간 관련 설정들을 정리하며 학습한 내용을 공유하고자 합니다. 1. 문제 원인 파악Client에게 요청을 받아와 저장하는 로직에 log를 남기고 우분투 서버에서 확인해 보았을 때, 다음과 같은 문제를 발견할 수 있었다.LocalDateTime.now()로 생성된 날짜가 UTC로 ..

  • format_list_bulleted Spring Boot
  • · 2025. 5. 4.
  • textsms
  • navigate_before
  • 1
  • navigate_next
전체 카테고리
  • 글 (21) N
    • JVM (0)
    • Java (2) N
    • Spring Boot (6)
    • Spring Framework (1)
    • Spring JPA (1)
    • Gradle (2)
    • MySQL (1)
    • 오픈소스 (2)
    • 일상 (5)
    • 책 (0)
    • archives (1)
최근 글
인기 글
태그
  • #[LG유플러스] 유레카 백엔드
  • #REST Docs
  • #spring rest docs
  • #멀티캠퍼스IT부트캠프
  • #redoc
  • #restdocs-api-spec
  • #Spring Boot
  • #유레카 3기
  • #부트캠프후기
  • #일상
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바