본문 바로가기
  • 개발하는 곰돌이

2024/022

[Kotlin] 백준 3107 : IPv6 문제 링크 3107번: IPv6 첫째 줄에 올바른 IPv6 주소가 주어진다. 이 주소는 최대 39글자이다. 또한, 주소는 숫자 0-9, 알파벳 소문자 a-f, 콜론 :으로만 이루어져 있다. www.acmicpc.net 문제 해설 문자열 파싱 문제. 조건에 맞게 축약된 IPv6를 원래 IPv6로 복원해야 한다. 문제에서 주어진 두가지 조건을 역순으로 생각해보자. 0으로만 이루어져 있는 하나 이상의 연속된 그룹을 하나 골라서 콜론 2개(::)로 바꿀 수 있다. IPv6는 8 그룹의 16진수로 구성되어 있다. 즉, 축약되지 않은 원래 형태는 7개의 콜론으로 16진수 그룹을 나누게 된다. 즉, 축약된 IP 주소에서 콜론의 개수가 7개가 되도록 보충을 해주면 된다. split()으로 문자열을 분리하면 빈 문자열이.. 2024. 2. 20.
[Spring Boot] AOP를 이용해서 DB에 API 로그를 남겨보자 목차 들어가기 전에 현재 운영중인 서비스는 API 로그를 파일로 기록하고 있다. 그런데 서버가 이중화되어 있고 그 외에도 몇가지 불편한 점이 있어서 DB에 로깅을 해보면 어떨까 하는 생각이 들었다. 서버가 이중화되어 있다보니 특정 로그를 확인하려면 양쪽 서버 모두 확인해야 한다. → 사실상 가장 불편했던 점 특정 요청건에 대한 로그를 찾아보기 어렵다. 요청 일자가 모호할 경우에 여러 파일을 열어서 확인해야하는 경우 등 일자별, 시간대별 요청 건수 확인이 어렵다. 특정 요청이 처리되고 있는 도중에 다른 요청이 들어오면 로그에 혼선이 생겨서 어떤 요청에 대한 응답인지 파악하기 어려워진다. 이런 이유들로 인해 파일 대신 DB에 API로그를 남겨보려고 했는데 어차피 모든 API의 중복 로직이니까 AOP를 사용해.. 2024. 2. 6.