LocalDateTime 을 사용하고 있는데 linux 에서는 KST 시간으로 찍히지 않는 이슈가 있었다.
LocalDateTime 을 시스템 시간이라고 인지하고 있었고 리눅스 시스템 시간은 진즉 KST 로 바꿔놨었다.
그런데,,,
ubuntu:~$ date
Tue Jun 18 10:06:30 KST 2024
ubuntu:~$ sudo hwclock
2024-06-18 10:17:29.060398+09:00
이렇게 하드웨어 시간/리눅스 타임존도 KST 로 잘 되어있었는데, 서버에 올린 애플리케이션은 UTC 시간으로 찍히고 있었다 ㅠ
난,,,서울 시간을 가져오고 싶은 걸...!!
찾아보니
LocalDateTime 은 JVM 시간대를 따라가는데 -> JVM 은 시스템 시간대를 따라가기 때문에 시스템 시간으로 표현해놓은 것 같다.
정확히는 JVM 의 시간대라고 표현할 수 있겠음..!
그리고 모종의 이유로,, 현재 EC2 인스턴스 서버의 시간대가 KST 로 설정되어있음에도
JVM 은 시스템 시간을 UTC 로 인지하여 돌아가고 있는 것 같았다.
테스트 서버와 운영 서버 둘 다 동일하게!!!!
java -Duser.timezone=Asia/Seoul -jar *.jar
-Duser.timezone=Asia/Seoul
그래서 JVM 이 시작할 때 KST 시간대로 인지할 수 있도록 시간 설정을 추가해주었따..
그랬더니 내가 테스트했던 시간(한국 시간 기준)으로 데이터가 추가되는 것을 확인했다.
야호~
728x90
'개발 잡담' 카테고리의 다른 글
Test 서버를 지키자 ! AWS 청구서 훑어보고 CDN 적용 건의하기 (0) | 2024.07.09 |
---|---|
도메인 주도 개발 시작하기를 읽고 (1) | 2024.07.02 |
Jenkins 용량 부족 2편 -> "파일시스템 확장"으로 근본 문제 해결 (0) | 2024.06.13 |
Jenkins 용량 부족, 결국...캐시 삭제(자동화) ㅡㅅㅡ (0) | 2024.06.11 |
멀티 서버 Socket 통신에 Message Queue 사용하기 (0) | 2024.06.04 |