profile
행복하고 싶다
post-thumbnail

Spring boot 로그를 cloudwatch에 남겨보자!

서비스 오픈을 앞두고 어플리케이션의 로그들을 조금 더 쉽게 확인할 수 있는 방안이 필요했다. 현재는 베스천 서버를 만들고 서버를 들어가서 log파일을 직접 열어보는 방식이었다. 그래서 우리 서비스의 경우 현재 aws ec2에서 돌아가고 있었기에 cloudwatch를 활

2022년 7월 14일
·
2개의 댓글
·
post-thumbnail

공포의 ps, grep, awk 명령어 사용기! (feat: 웹포트가 없는 배치 어플리케이션 종료하기)

내장 톰캣을 구동시키면서 실행되는 어플리케이션의 경우 포트번호 단위로 프로세스를 죽이고 살리고 하는 것이 어렵지 않았다. 하지만 웹 서비스를 끼지 않고 실행되는 배치가 존재하는 경우 서버안에서 실행되는 어플리케이션의 개수가 지속적으로 늘어나면서 db 커넥션도 여러개 물

2022년 7월 7일
·
0개의 댓글
·
post-thumbnail

리눅스 터미널에서 다이얼로그 UI를 만들어보자

베스천 서버를 하나 만들었는데 서버의 목록이 나열되고 해당 서버를 선택해서 접속하는 형식을 만들어보고 싶었음. 그래서 알아보던중 dialog라는 툴을 사용하면 linux상에서도 dialog창을 사용할 수 있다고 해서 리서치를 해보았음connect-server.sh

2022년 6월 23일
·
0개의 댓글
·
post-thumbnail

Spring Boot 프로젝트 Nginx 무중단 배포 스크립트

단일의 aws ec2 인스턴스에서 무중단 배포를 해야 하는 상황이 드디어 온것이다. 시행착오를 거치면서 완성한 배포 스크립트를 공유한다. 프로젝트는 spring boot + gradle 기반의 프로젝트이고 nginx 서버를 사용하였다. 어플리케이션 사이드에서 포트 프로

2022년 4월 16일
·
0개의 댓글
·
post-thumbnail

Docker 실행 권한 획득하기

aws ubuntu에 docker를 설치하고 일반 유저로 실행시키고 싶은데 permission denied 문제로 실행자체가 안되는 현상을 마주함먼저 docker 사용자 그룹을 생성하라고 하길래 생성하려고 했더니 이미 존재하는 사용자라고 한다. 보통은 docker를 설

2022년 4월 11일
·
0개의 댓글
·
post-thumbnail

spring auto configuration를 사용해 필요한 패키지만 Import 해보기!

사내 프로젝트를 개발하던 와중에 멀티 모듈로 존재하는 모듈들을 하나의 모듈로 합친 뒤 패키지별로 import하여 사용하는 방식으로 구현하라는 임무가 주어졌다. (뜨든...)spring에서 제공하는 spring.factories의 org.springframework.bo

2022년 2월 4일
·
0개의 댓글
·
post-thumbnail

[JPA] 엔티티 삭제 시 casecade로 간편하게!

회사에서 프로젝트 도중 한 가지를 삭제하는 경우 하위의 여러가지 의존되어 있는 데이터들을 함께 삭제해줘야 하는 필요가 있었다. 하지만 기존 방식은 root가 되는 엔티티를 삭제하고 또 그 엔티티의 아이디를 가지고 여러가지 엔티티들을 배회하며 삭제해줘야 하는 번거로움이

2022년 1월 10일
·
0개의 댓글
·
post-thumbnail

Mysql master, slave 설정

DB가 날아갔어 ...repl 사용자 등록 및 권한 등록restore 진행 위의 형식으로 할수 있지만 나는 그냥 mysql 워크벤치로 했다...mysql 서버 정보 설정slave 시작

2021년 11월 27일
·
0개의 댓글
·
post-thumbnail

[python] wheel 파일로 설치가 안될때

간단한 파이썬 프로젝트를 공부삼아 하던 도중 pyaudio라는 녀석을 설치하려고 시도를 하였다. 하지만 자꾸 fatal error: portaudio.h: No such file or directory라는 로그가 출력 되면서 설치가 안되는 것이었다 ㅠㅠ 구글에 좀 찾아

2021년 10월 11일
·
0개의 댓글
·
post-thumbnail

socket 서버 기동시 nginx 설정 방법

로컬에서 개발중이던 소켓서버를 실제 서버에 띄우려고 하니 nginx 쪽에서 설정을 어떻게 해주어야 할지 몰라서 고민하고 있었다. 물론 클라이언트 쪽에서 소켓서버 쪽으로 연결도 계속 안되고 있었다.구글에 찾아보니 위와 같이 설정을 해줘야 한다고 한다. 각각의 자세한 내용

2021년 9월 29일
·
0개의 댓글
·
post-thumbnail

querydsl문으로 두번째 깊이(depth)를 fetch 해보자!

채팅내역(ChattingHistory) > 전송자(User) > 전송자의 추가정보(AdvertiserInfo)를 fetch해서 한 번에 가져오고 싶었지만 전송자의 추가정보가 계속해서 null값으로 떨어지고 있었다.leftJoin이 빠져있는 모습이다.leftJoin을 c

2021년 9월 22일
·
0개의 댓글
·
post-thumbnail

vue 프로젝트에서 global로 scss 등록하기 (vue.config.js)

vue 프로젝트 어디에서나 불러다 쓰고 싶은 scss 변수가 필요vue.config.js에 해당 sass.additionalData에 필요한 변수가 들어있는 scss파일을 import해주면 된다.

2021년 4월 30일
·
0개의 댓글
·
post-thumbnail

Windows에서 nohup 대신 사용가능한 start 명령어

spring boot 프로젝트를 windows환경의 jenkins에서 빌드 및 실행해 보기위해 시도하던 중 기존에 linux에서 nohup으로 사용하던 명령어가 windows에서는 실행이 안되어서 문제가 발생리서치 하던 중 windows에서는 start라는 명령어가 존

2021년 4월 10일
·
0개의 댓글
·
post-thumbnail

vue build 할 때 app.js 버저닝하기

관리자페이지를 vue로 작성하였다. 그런데 vue-cli-service를 사용해서 build를 했는데 app.js, chunk.vendor.js가 캐싱돼서 변경 사항 적용이 안되고 있었다.vue.config.js에서 webpack 설정을 해 줄수 있는데 config를

2021년 4월 10일
·
0개의 댓글
·
post-thumbnail

싱글톤 객체를 하나 만들어 오세요.

앱쪽에서 호출 할 때 응답에 필요한 dto를 만들어야 하는데 그 dto의 값이 특별한 이유가 없으면 바뀌지 않는 (그러나 어쩌다 바뀔 가능성이 존재하는) 객체였다.처음에는 dto를 bean으로 등록 했다가 코드리뷰에서 까이고 말았음...위와 같이 코드를 작성해서 매번

2021년 3월 11일
·
0개의 댓글
·
post-thumbnail

JPA delete가 안된다?

레터리플라이 서비스 구현 중 사용자(User)가 문의사항(Question)을 쓸 수 있듯이, 삭제하는 부분도 필요했다. 그래서 JpaRepository에서 deleteById 메소드를 호출하여 삭제하려고 하는데 안되는 거임 ㅠㅠUser 엔티티와 Question 엔티티를

2020년 7월 29일
·
0개의 댓글
·
post-thumbnail

certbot dns 인증 방식으로 인증하기

사연 let's encrypt로 무료 https 인증서를 사용하고 싶은데 그러려면 certbot이라는 걸 사용해야 한다. 그런데 certbot에 대한 설명은 주로 webroot 방식의 challenge 였다. 그래서 사용하기가 쉽지 않았다. 그래서 dns challen

2020년 7월 19일
·
0개의 댓글
·
post-thumbnail

PHP nginx 설정

과거에 PHP로 구현한 서비스를 다른 쪽 서버로 이관하는 와중에 nginx 설정을 하였는데 잃어버리지 않고자 간단하게 남겨놓으려고함. 이전에 사용하던 aws 서버에서는 apache서버를 사용했는데 nginx로 이관하면서 여러가지 시행착오가 있었다. PHP 정말 오랜만

2020년 6월 18일
·
0개의 댓글
·
post-thumbnail

[Spring Security] Jwt 토큰정보로 필터링 된 유저정보를 컨트롤러단에서 @AuthenticationPricipal 어노테이션을 통해 가져오는법

사연 스프링 시큐리티에서 Jwt 토큰정보로 필터링 된 SecurityContext 정보를 컨트롤러 단에서 SecurityContext.getContext() 함수를 통해 복잡하게 가져오지 말고 @AuthenticationPrincipal 어노테이션을 통해 직접 불러오고 싶어졌다. 인증방식에서 Session을 사용하면 스프링 시큐리티에서 자동으로 잡아주기 때...

2020년 2월 5일
·
0개의 댓글
·
post-thumbnail

'연결이 비공개로 설정되어 있지 않습니다' 무시하는 방법 (크롬, Mac OS)

사연 nodejs + openssl을 사용하여 로컬에 https 서버를 구동시켰는데 '연결이 비공개로 설정되어 있지 않습니다' 라는 문구와 함께 진입 불가 경과 아무래도 openssl로 생성한 인증서를 신뢰하도록 설정하면 될 거 같다는 생각이 들었 ... 방법 크롬설정 > 인증서 검색 > 인증서 관리 image.png 항상신뢰에 체크 image.png...

2020년 2월 3일
·
1개의 댓글
·