Unixタイムスタンプ変換

Unix時間は1970-01-01 00:00:00 UTCからの秒を数えます(JavaScriptのDate.now()ではミリ秒)。ログ、JWT exp、APIフィールドはしばしばエポック数を使い、インシデントのデバッグ向けに読めるローカルまたはUTC日時に変換します。

タイムスタンプの変換方法

1. エポック数を貼るか、ピッカーから日時を選びます。
2. 値がおかしく見えるなら秒とミリ秒を切り替えます(10桁対13桁)。
3. UTCとローカルタイムゾーンの結果を読みます。
4. SQLクエリまたはログフィルタ向けに変換値をコピーします。

タイムスタンプの例

JWT expクレーム

1735689600 は将来の期限に復号されます——現在と比べます。

JavaScript Date.now()

1704067200000 ms は 2024-01-01 UTC に等しいです——13桁の値はミリ秒です。

ログ行のパース

nginxの $msec またはエポックフィールドを変換し、Splunkの人間時間と対応づけます。

エポックを変換するとき

数値日付のAPIレスポンスをデバッグするとき。
UNIX_TIMESTAMP()でデータベースクエリを書くとき。
UTCとローカル表示を学ぶオンボーディングのとき。

常に単位を確認

ミリ秒が期待されるところで秒を混ぜると日付が1000倍ずれます——モバイル分析SDKのよくあるバグです。

よくある質問

秒とミリ秒は?

10桁 ≈ 秒、13桁 ≈ 2286年までのミリ秒。

UTCとローカルは?

エポックはUTCの瞬間です——表示はローカルタイムゾーンのオフセットを示すことがあります。

負のタイムスタンプは?

一部のシステムでは1970年より前の日付が可能です——Web APIではまれです。

Y2K38問題は?

32ビット符号付きintは2038年に溢れます——システムでは64ビットlongを使います。

ローカルですか?

はい。