Unix-таймстампы идеальны для машин и бесполезны для людей. Кажется, каждый агрегатор логов, запись в базе данных и ответ API хранят время как сырое целое число секунд с 1 января 1970 года, и каждый разработчик хоть раз пытался прикинуть на глаз, свежий 1725580800 или древний.
Обычный запасной вариант — быстрый поиск в Google, «1725580800 to date», — который работает, но добавляет поход в браузер ради того, что должно занимать две секунды. Или вы пишете однострочник в консоли языка: new Date(1725580800000) в консоли JS браузера, вспоминая, что нужно умножить на 1000 для миллисекунд, и надеясь, что изначально не перепутали секунды с миллисекундами.
Секунды против миллисекунд: классическая ловушка
Unix-время обычно измеряется в секундах, но объект Date в JavaScript ожидает миллисекунды, а некоторые API (особенно построенные на JavaScript) по умолчанию возвращают таймстампы в миллисекундах. Перепутав это, вы получите дату, которая либо дико далеко в будущем, либо застряла около эпохи 1970 года — ошибка, которую хоть раз совершал каждый разработчик, отлаживая проблему «почему эта дата выглядит неправильно».
Часовые пояса добавляют ещё один слой сложности. Таймстамп конвертируется в конкретный момент времени, но отображение его в вашем локальном времени, в UTC или во времени сервера может заставить одно и то же значение выглядеть как три совершенно разных времени, что имеет большое значение, когда вы пытаетесь сопоставить ошибку с деплоем.
Конвертируйте в обе стороны мгновенно
Bellows включает конвертер таймстампов, который превращает Unix-таймстамп в читаемую дату и время и конвертирует дату обратно в таймстамп — в обе стороны, без вычислений вручную. Он сам разбирается с неоднозначностью секунд и миллисекунд, так что вам не нужно гадать.
Отладка логов и баз данных
Агрегаторы логов, строки базы данных и payload API хранят время в виде сырых чисел гораздо чаще, чем в виде читаемых строк. Конвертация нескольких таймстампов при отслеживании инцидента — небольшая задача, которая случается десятки раз за любую серьёзную сессию отладки.
Планирование и логика истечения срока
Истечение срока кеша, истечение токена и таймстампы запланированных задач — всё это Unix-время под капотом. Быстрая проверка того, чему на самом деле соответствует данное значение истечения срока в реальном времени, помогает убедиться, что ваша логика TTL делает то, что вы думаете.