2016-07-16 6 views
0

は、Javaコードを考えてみましょう:出力されなぜzabbixにJavaコードから受け取った値が表示されないのですか?

zabbix_sender -z zabbixHost -p 10051 -s testHost -k test.ping.count -o 8 -v 

info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.002052" 
sent: 1; skipped: 0; total: 1 

String host = "zabbixHost"; 
    int port = 10051; 
    ZabbixSender zabbixSender = new ZabbixSender(host, port); 

    DataObject dataObject = new DataObject(); 
    dataObject.setHost("testHost"); 
    dataObject.setKey("test.ping.count"); 
    dataObject.setValue("10"); 
    // TimeUnit is SECONDS. 
    dataObject.setClock(System.currentTimeMillis()/1000); 
    SenderResult result = zabbixSender.send(dataObject); 

    System.out.println("result:" + result); 
    if (result.success()) { 
     System.out.println("send success."); 
    } else { 
     System.err.println("sned fail!"); 
    } 

結果は{"failed":0,"processed":1,"spentSeconds":0.001715,"total":1}

それから私は、コマンドラインからzabbix_senderツールでリクエストを送信しています

今のところ2つの値がありましたザビックスに送られたしかし、私がtest.ping.countのモニタリンググラフィックに着いたときには、8の値しか表示されません。例えば。応答が成功した場合でもJavaコードからの値が受信されませんでした。

何が起こっていますか?どのようにこのような状況を修正するには?

ライブラリがある - io.github.hengyunabc:zabbix-sender:0.0.3 のZabbixバージョン3.0

+0

正確に、どのように正確にあなたが値をチェックしていますか?グラフの場合は、値(右上隅)に切り替えると表示されますか?まだそうでない場合は、期間スクロールバーを右端にドラッグし、期間選択の「すべて」をクリックすると両方の値が表示されますか?まだそうでない場合は、その項目の両方の値がデータベースに表示されますか?あなたがそれらをデータベースに見ると、Zabbixのバグかもしれません:https://support.zabbix.com/browse/ZBX-9236 – Richlv

+0

zabbixデータベースの接続設定をどこに表示するか教えてください。 – Cherry

答えて

0

問題は、タイムスタンプとあったされているバージョンが、バージョン0.0.1とZABBIX-送信者は、ミリ秒単位で要求(データオブジェクトではない)クロックを設定0.0.3(秒単位)。正しいバージョンの問題を使用してください。

Mavenのサンプル(source):

<dependency> 
     <groupId>io.github.hengyunabc</groupId> 
     <artifactId>zabbix-sender</artifactId> 
     <version>0.0.3</version> 
    </dependency> 
関連する問題