·4분 읽기

맥용 유닉스 타임스탬프 변환기

로그 한 줄에 1743984000이라고 적혀 있고, 이것이 3시간 전인지 3주 전인지 손으로 계산하지 않고 알아야 합니다.

유닉스 타임스탬프는 기계에게는 완벽하지만 사람에게는 무용지물입니다. 모든 로그 수집기, 데이터베이스 레코드, API 응답이 시간을 1970년 1월 1일부터 흐른 초 단위 정수로 저장하는 것 같고, 모든 개발자는 언젠가 1725580800이 최근인지 오래된 것인지 눈대중으로 판단하려 해본 적이 있습니다.

보통의 대안은 빠른 구글 검색입니다 — "1725580800 to date" — 이는 작동하지만 2초짜리 조회 작업에 브라우저 왕복을 추가합니다. 아니면 언어 콘솔에서 한 줄짜리 코드를 씁니다: 브라우저 JS 콘솔에서 new Date(1725580800000)를 쓰면서 밀리초를 위해 1000을 곱해야 한다는 것을 기억해야 하고, 애초에 초와 밀리초를 혼동하지 않았기를 바랍니다.

초 대 밀리초: 고전적인 함정

유닉스 시간은 보통 초 단위지만, JavaScript의 Date 객체는 밀리초를 기대하며, (특히 JavaScript 기반의) 일부 API는 기본적으로 밀리초 단위 타임스탬프를 반환합니다. 이를 혼동하면 날짜가 터무니없이 미래이거나 1970년 시작 지점 근처에 멈춰 있게 됩니다 — "왜 이 날짜가 이상해 보이지"라는 문제를 디버깅하다가 모든 개발자가 적어도 한 번은 저지르는 실수입니다.

시간대는 또 다른 층을 더합니다. 타임스탬프는 특정 순간으로 변환되지만, 이를 로컬 시간, UTC, 서버 시간대 중 무엇으로 표시하느냐에 따라 같은 값이 완전히 다른 세 가지 시간처럼 보일 수 있습니다 — 오류를 배포와 연관 짓고자 할 때는 이 차이가 상당히 중요합니다.

양방향으로 즉시 변환하기

Bellows는 유닉스 타임스탬프를 읽기 쉬운 날짜와 시간으로 바꿔주고, 날짜를 다시 타임스탬프로 변환해 주는 타임스탬프 변환기를 포함합니다 — 계산이 필요 없이 양방향 모두 가능합니다. 초와 밀리초의 모호함도 처리해 주므로 추측할 필요가 없습니다.

Bellows Unix timestamp converter showing date and time output on macOS

로그와 데이터베이스 디버깅

로그 수집기, 데이터베이스 행, API 페이로드는 시간을 읽기 쉬운 문자열보다 원시 숫자로 저장하는 경우가 훨씬 많습니다. 인시던트를 추적하는 동안 몇 개의 타임스탬프를 변환하는 것은 심각한 디버깅 세션 중에 수십 번씩 일어나는 작은 작업입니다.

스케줄링과 만료 로직

캐시 만료, 토큰 만료, 예약된 작업 타임스탬프는 모두 내부적으로 유닉스 시간입니다. 특정 만료 값이 실제 벽시계 시간으로 무엇을 의미하는지 빠르게 확인하면 TTL 로직이 의도한 대로 작동하는지 검증하는 데 도움이 됩니다.

Mac App Store에서 Bellows 받기

다음 기사

Bellows

41 developer tools in one native Mac app — JSON, JWT, Base64, hashes, and more.

Get Bellows on the Mac App Store