본문 바로가기
★ 프로젝트 + 트러블 슈팅 ★

Timezone 트러블 슈팅을 위한 ubuntu 시스템시각 기준(UTC, KST)변경 방법

by 리승우 2022. 12. 13.

하단에 나와있는 상품의 이벤트 시작일, 이벤트 종료일을

LocalDateTime now를 이용하여 시스템 시각기준으로 생성하였다.

 

그 결과, 초기에는 시작일, 종료일이 UTC기준 시간으로 표기되어, 이를 KST로 표기하기 위해 시도하였다.

방법은 간단하였다.

 

[코드내용]

@Scheduled(cron = "0 07 14 * * *") // 21-30일까지 02시 13분 55초에 스케줄 동작 >> cron = "55 13 02 21-30 * *"
    public void createEvent() {
        Product savedProduct = productRepository.save(new Product("에어팟 프로2", 4990, "이벤트 상품", "초고속 배송", 5000, 1L));
        LocalDateTime now = LocalDateTime.now();

        eventRepository.saveAndFlush(new Event(savedProduct.getId(), "매일 매일 쏟아지는 에어팟!", "야 나두", now, now.plusDays(1)));
    }

 

방법은 아래와 같이 진행하였다.

 

시스템 시각을 KST기준으로 변경

$sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
$date
Mon Nov 28 19:47:12 KST 2022

 

해당 코드로 시스템 시각을 변경함으로써, 이벤트 시작일 및 종료일을 KST기준으로 명시할 수 있게 되었다.

이로 인해 아래와 같이 내용이 변경되었따.

 

[기존 시스템 시각정보]

$ timedatectl
               Local time: Thu 2022-12-01 07:40:14 UTC
           Universal time: Thu 2022-12-01 07:40:14 UTC
                 RTC time: Thu 2022-12-01 07:40:14
                Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

 

[변경된 시스템 시각정보]

               Local time: Thu 2022-12-01 16:41:44 KST
           Universal time: Thu 2022-12-01 07:41:44 UTC
                 RTC time: Thu 2022-12-01 07:41:44
                Time zone: Asia/Seoul (KST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

댓글