historyのカラム「ns」に格納される数値につきまして

history関連テーブルに、2.2系にて「ns」カラムが追加されています。

ナノ秒が格納されるとのことですが、格納される値は以下の解釈でよろしいのでしょうか。

(例1)
ns = 999999999 → 999ミリ秒999マイクロ秒999ナノ秒

(例2)
ns = 1234567 → 001ミリ秒234マイクロ秒567ナノ秒

(例3)
ns = 24 → 000ミリ秒000マイクロ秒024ナノ秒

⇒nsを9桁ゼロパディングした左3ケタが、ミリ秒に該当する

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー pokotan の写真

自己解決です。

ソースコードを確認し、nsには

 秒未満の、ミリ秒からマイクロ秒を表す、0~999,999,999の値

が格納されることがわかりました。

予想した解釈で、よさそうです。

ライブラリzbxcommonのmisc.cのzbx_timespec()関数において、以下の方法で取得しています。

・Windowsの場合は、QueryPerformanceCounterを用いて取得
・Windows以外の場合は、clock_gettime()関数を用いて取得