Spring boot 프로젝트에 Flyway 도입하기 (feat. 기존 데이터가 있을 경우)
·
Spring
Flyway란? Flyway는 데이터베이스의 형상 관리를 목적으로 하는 오픈소스 마이그레이션 툴이다. Flyway를 통해 변경 사항을 추적하고, 업데이트나 롤백을 보다 쉽게 할 수 있다. 우리가 개발하며 필수적으로 사용하는 git에서 코드를 형상 관리하듯 데이터베이스도 형상 관리가 가능한 것이다! 형상 관리를 하면 데이터베이스 schema의 변경 이력이 남기 때문에 데이터베이스의 변경 작업을 안전하게 할 수 있다. Flyway를 도입한 이유 기존 프로젝트의 환경별 데이터베이스 상황은 아래와 같다. local - H2 Database, ddl-auto: create dev - RDS(MySQL), ddl-auto: update prod - RDS(MySQL), ddl-auto: none (최초에는 ddl-..
디스코드로 Spring boot 에러 로그 보내는 방법 with. logback
·
Spring
에러 로그 알림 시스템을 구축한 이유 EC2에 API 서버를 올렸다고 가정하자. 만약 아무런 세팅 없이 API 서버를 실행하고 있다면, API 에러가 발생했을 때 터미널로 EC2에 접속하여 nohup.out 등을 확인하여 직접 로그를 확인해야 한다. 터미널이기 때문에 UI가 불편하며, 무엇보다도 에러가 발생했을 때 즉각적으로 파악하기 어렵다는 점이 가장 힘들었다. 그렇기 때문에 팀 내 커뮤니케이션 툴인 디스코드로 API 에러가 발생할 때마다 알림이 올 수 있도록 환경을 구축해보았다! 해당 게시글에서는 로그에 대한 구체적인 내용은 다루지 않을 예정이다. Logback? Logback은 log4j 이후에 출시된 Java 기반 Logging 프레임워크 중 하나이다. Slf4j의 구현체로, 별도의 depende..
H2 실행하기
·
Spring
H2 란? - 자바 기반 오픈소스 RDMBS - 주로 인메모리 데이터베이스로 사용되며, 기능 테스트 시 유용하게 사용된다 build.gradle dependencies { runtimeOnly 'com.h2database:h2' } application.properties spring: h2: console: enabled: true path: /h2-console datasource: # url: jdbc:h2:~/jpashop-db # Embedded Mode url: jdbc:h2:mem:test # In-memory Mode username: sa driver-class-name: org.h2.Driver Embedded, In-Memory Mode 두 가지는 저장소 위치 설정만 다르고, 사용 방..
짱정연
'Spring' 카테고리의 글 목록 (4 Page)