zabbix_senderのunixtimeについて

いつも参考にさせていただいております。

細かい話なのですがzabbixサーバにzabbix_senderでデータを送付する際に指定したunixtimeとzabbix側で取り込まれる時間が、なからず1秒ずれてしまいます。
実用上の問題は、まったくありません。
同様なことで心当たりのある方がいれば、アドバイスいただければと考えました。

・確認したこと

(1)12/24 00:00:00のunixtimeをdateコマンドで求め、逆変換して確認する。
(2)dateコマンドで作成したunixtimeを使ってzabbix_senderの入力データを作成する。
(3)zabbix_senderでzabbixにデータを送信する。
(4)zabbixでデータを確認する。

・結果

(1)dateコマンドでのunixtime作成と逆変換して確認

以下の通りunixtimeを求めて正しく逆変換できました。
$ date +%s --date "2012/12/24 00:00:00"
1356274800
$ date --date "@1356274800"
2012年 12月 24日 月曜日 00:00:00 JST
$

(2)zabbix_senderの入力データ作成

監視対象サーバ名、アイテム名、dateコマンドで求めたunixタイム、値の順でテキストファイルを作成
$ cat data.txt
testserver testitem 1356274800 1
$

(3)zabbix_senderで送信

$ zabbix_sender -z 192.168.10.100 -s testserver -T -i data.txt
info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.000057"
sent: 1; skipped: 0; total: 1
$

(4)zabbixでデータ確認

最新データで該当のアイテムのデータを確認すると下記のように2012/12/23 23:59:59と1秒前の値として記録されます。

testitem 2012/12/23 23:59:59 1

zabbix serverは、2.0.1でzabbix_senderは、2.0.0です。

$ /usr/sbin/zabbix_server -V
Zabbix server v2.0.1 (revision 28455) (27 June 2012)
Compilation time: Jul 16 2012 11:43:21
$

$ zabbix_sender -V
Zabbix Sender v2.0.0 (revision 27675) (21 May 2012)
Compilation time: Sep 30 2012 17:06:59
$

よろしくお願いいたします。

コメント表示オプション

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

同じバージョンの環境をすぐに用意できなかったので、とりあえず
サーバもzabbix_senderも2.0.4の環境で試したところ、

 2012/12/24 00:00:00

になりました。
具体的にどのタイミングで修正されたのかわかりませんが、可能で
あるならば、2.0.4への更新をご検討ください。

--- 追記
2.0.3同士でも2012/12/24 00:00:00になりました。

ユーザー ksaito の写真

TNKさん

確認ありがとうございました。
先ほど、zabbix_senderだけ2.0.4で試してみましたが結果はNGでした。
折を見て、サーバ側もバージョンアップして確認してみます。

$ ./zabbix_sender -V
Zabbix Sender v2.0.4 (revision 31984) (08 December 2012)
Compilation time: Dec 10 2012 14:14:40
$ cat data.txt
testserver testitem 1356274800 1
$ ./zabbix_sender -z vm00032 -s testserver -T -i data.txt
info from server: "Processed 1 Failed 0 Total 1 Seconds spent 0.000072"
sent: 1; skipped: 0; total: 1
$ date --date "@1356274800"
2012年 12月 24日 月曜日 00:00:00 JST
$

ZabbixのWebインタフェースからの確認結果

タイムスタンプ 値
2012.12月.23 23:59:59 1

ユーザー fripper の写真

OS側の tzdata パッケージの影響とか‥?
送信側はうるう秒の存在を知っているが、受信側はそれを知らない‥またはその逆‥という次第

unixtime値は経過秒なので、うるう秒の存在を知る知らないの違いがあれば
年月日・時分秒へ変換した際の値はズレてしまうと思います