spring boot
-
Server 기동 여부 등 slack에 알리기.Computer Science/Slack 2022. 8. 5. 01:44
slack api 사이트에 들어가서 your app에 들어간다. https://api.slack.com/apps create new app을 해주어 해당 app이 작동할 workspace를 선택해준다. OAuth & Permissions Scopes를 먼저 설정해주어야 한다. Bot Token - bot의 접근 권한. - chat:write를 추가해 chat을 할 수 있는 권한을 주고, - channels:read 를 추가해 무슨 채널이 있는지 읽을 권한 을 준다. //User Token - user의 데이터에 bot이 접근 할 수 있는 권한. 그런뒤 install workspace를 진행해준다. token 값이 나온다. 해당 값은 github등에 보여지게 되면 재발급 받아야하니 주의하자. 그런뒤 sla..
-
Cerbot을 통한 SSL 발급받아 Spring boot에 적용하기Computer Science/Spring boot 2022. 7. 27. 03:05
https://certbot.eff.org/instructions?ws=other&os=arch SSL 인증서 받기 sudo certbot certonly --standalone 를 통해 SSL 인증서를 발급받는다. Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/subbak2.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/subbak2.com/privkey.pem 2가지 pem키를 얻을 수 있다. 인증서 tomcat용으로 변경 SSL 인증서를 spring boot 에서 필요한 형식 즉 tomcat이 사용하는 형식으로 변경한다.(PKCS12) opens..
-
Spring boot에 APM(dataDog) 적용하기.Computer Science/Spring boot 2022. 7. 26. 00:09
https://docs.datadoghq.com/logs/log_collection/java/?tab=log4j datadog 문서 링크이다. log를 남기는 방법이 크게 2가지가 있는데 logger에서 실시간으로 log를 datadog에 전송하는 방법. Agent Jop을 통해서 로그를 동기화하는 방법이 있다. 우선 Agent를 설치해준다. 어플리케이션 성능을 측정해줄 도구이다. 이를 각 서버에 설치한다면 이후 통합해서 확인 할 수 그전에 agent가 잘 실행이 되는지 확인을 해준다. https://docs.datadoghq.com/tracing/trace_collection/dd_libraries/java/?tab=containers 이곳에서 각종 agent관련 명령어를 확인 할 수 있다. https..
-
Spring boot 시작 시 함수 실행하고 싶을 때.Computer Science/Spring boot 2022. 7. 17. 18:00
@Component @Slf4j public class CrawlComponent implements ApplicationRunner { @Override public void run(ApplicationArguments args) throws Exception{ setAllMatchList(); } 해당 component에 applicationRunner를 implements 해준 뒤 run 함수를 override하면 해당 함수는 프로그램이 시작하면 바로 진행하게 된다.
-
MySQL Json type을 Jpa로 다루기Computer Science/Spring boot 2022. 7. 15. 15:43
우선 json타입을 다룰려면 새로운 타입이여서 해당 dependency를 추가해주어야한다. implementation 'com.vladmihalcea:hibernate-types-52:${hibernate-types.version}' @Type(type = "json") @Column(columnDefinition = "json") private Test jsonObject; @NoArgsConstructor @Getter public class Test { private Long id; private Long tt; public Test(Long id, Long tt) { this.id = id; this.tt = tt; } } 위에 처럼 진행하여도 {"id":1,"tt":2} 로 입력된다. @Type..
-
Spring boot CI/CD git action으로 aws ec2에 올리기.Computer Science/Spring boot 2022. 7. 9. 00:27
우선 바로 배포를 진행할 것이기 때문에 의존성을 모두 포함한 BootJar로만 Build를 진행합니다. 따라서 의존성을 제거하여 build하는 Jar는 skip해줍니다.(snapshot-plain.jar) jar{ enabled = false } build.gradle에 추가하여 진행합니다. s3에 대한 접근 권한을 받아오기 위해 AWS IAM을 생성해줍니다. 사용자를 생성해주고, 액서스 키 -> 기존 정책 직접 연결 -> AmazonEC2FullAccess, AmazonS3FullAccess, AWSCodeDeployFullAccess -> 키 생성 -> 액세스 키 ID, 비밀 액세스 키 secrets-actions에 등록 (EC2와 CodeDeploy는 S3에 파일을 저장하고 이 파일을 EC2에서 가..