Spring 썸네일형 리스트형 개발 환경에 따른 log 분리 1.application-local.yml spring: config: activate: on-profile: local logging: level: root: info local에서 쓰일 설정들을 application-local.yml에 선언합니다. 2.application-prod.yml spring: config: activate: on-profile: prod logging: level: root: info prod에서 쓰일 설정들을 application-local.yml에 선언합니다. 3.application.yml spring: profiles: active: prod 어떠한 개발환경이 쓰일지는 application.yml의 spring.prfile.active에서 선언하거나 intellij에.. 더보기 MDC 및 로그레벨에 따른 로그파일 분리 (1) 문제점 멀티쓰레드 환경에서 동시에 요청이 처리되기 떄문에 동일한 요청에 대한 로그가 연속적으로 쌓이는 것이 아니라 처리된 순서대로 로그가 쌓이는것을 볼 수 있다. 만약 서비스에 문제가 생겨 로그파일을 보려고 할때 쉽게 문제를 찾기 위해서는 동일한 요청을 분리하는 작업이 필요하다. 위의 문제를 해결하기위해서는 요청별로 고유의 값을 부여하고 로그에 함꼐 출력한다면 동일한 요청을 분리하는 작업이 매우 간단해 질 것이다. (2) MDC를 이용한 해결방안 1. MDC란 MDC(Mapped Diagnostic Context)는 현재 실행중인 쓰레드에 메타 정보를 넣고 관리하는 공간이다. MDC는 내부적으로 Map을 관리하고 있어 (Key, Value) 형태로 값을 저장할 수 있다. 메티 정보를 쓰레드 별로 .. 더보기 Pinpoint Cloud (1) PinPoint란? Java로 작성된 대규모 분산 시스템용 APM 도구 - APM: · Application Performance Management의 약자, 응용 소프트웨어의 성능과 서비스 가용성을 모니터링, 관리하는 도구 Transaction 추적을 제공 임계치를 설정하여, Event 발생시 SMS 또는 Email을 통해 알림을 받을 수 있다. (2) 버전 java 11 gradle 8.4 springboot 2.7.17 - java 17, springboot3.0 이상은 핀포인트로 서버 구동시 에러가 발생했습니다. (3) PinPoint 설정하기 1. 네이버 클라우드 플랫폼에서 콘솔에 들어 간 후 Management & Goverrace에 PinPointCloude에 들어갑니다. 2. Rep.. 더보기 Spring Restdocs (1) 버전 Java 17 Springboot 3.1.5 Spring 6.0.13 restdocs 3.0.0 Junit5 Gradle 8.4 (2) build.gradle plugins { id 'org.asciidoctor.jvm.convert' version '3.3.2' // (1) } configurations { compileOnly { extendsFrom annotationProcessor } asciidoctorExt // (2) } dependencies { asciidoctorExt 'org.springframework.restdocs:spring-restdocs-asciidoctor' // (3) testImplementation 'org.springframework.restdocs:.. 더보기 그라파나 설치 및 사용법 (1)그라파나 설치 https://grafana.com/grafana/download Download Grafana | Grafana Labs Overview of how to download and install different versions of Grafana on different operating systems. grafana.com (2) 그라파나 실행 그라파나를 설치 후 bin 폴더의 grafana_server를 실행 시킨 후 3000포트로 접속하면 위의 웹 화면이 나타난다. username과 password를 admin으로 입력하면 로그인이 완료된다. 실제 서비스에서는 username과 password를 변경하여 사용하여야 한다. (3) 그라파나 프로메테우스 연동 connections -.. 더보기 프로메테우스 설치 및 사용법 (1)프로메테우스 설치 https://prometheus.io/download/ Download | Prometheus An open-source monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach. prometheus.io (2) 프로메테우스 실행 프로메테우스를 설치 후 exe 파일을 실행 하면 9090포트로 접속하면 위의 웹 화면이 나타난다. (3) 애플리케이션 설정 1.build.gradle 설정 dependencies { ... implementation 'io.micrometer:micrometer-regist.. 더보기 Actuator Actuator 실제 운영 되고 있는 서비스에 문제가 없는지 모니터링하고 지표들을 심어서 감시하는 활동들을 매우 편리하게 사용할 수 있는 편의기능들을 제공해준다. 1. build.gradle implementation 'org.springframework.boot:spring-boot-starter-actuator' //actuator 추가 2.Application.yml # Actuator의 기능들을 웹에 노출하거나 제거 management: endpoints: web: exposure: include: "*" exclude: "bean" Actuator가 제공하는 endpoint들을 웹으로 확인하려고 할 경우management.endpoints.web.expososure.include를 사용하여 확인.. 더보기 javaMailSender를 이용한 이메일 인증(Naver) 1.Naver SMTP 설정 네이버 메일 -> 환경설정 -> SMTP 설정을 사용함으로 바꿔줍니다. 2.Build.gradle 설정 implementation 'org.springframework.boot:spring-boot-starter-mail' 3.NaverMail.yml 설정 spring: mail: host: smtp.naver.com #smtp 서버 주소 port: 465 # 메일 인증서버 포트 username: xxxx@naver.com #네이버 아이디 password: xxxx #네이버 비밀번호 properties: mail: smtp: starttls: enable: true auth: true ssl: enable: true yml에 JavaMailSender에 쓰일 Propertie.. 더보기 이전 1 2 3 4 5 다음