LoginSignup
1
1

More than 5 years have passed since last update.

Zabbix Agentとやり取りしよう

Posted at

Zabbix Agent

Zabbix Agentは最新とします。
http://www.zabbix.com/jp/download.php
コンパイル済みZabbixエージェント
最新:3.0

Zabbix Agentプロトコル

日本語ドキュメント
https://www.zabbix.com/documentation/2.2/jp/manual/appendix/items/activepassive
3.x用は日本語ドキュメントがありませんが、英語版を確認した限り変わっていません。
「パッシブチェック」を使用します。

参考資料(手書きで申し訳ありません)
201605_ZabbixAgent接続.png

Example

  • リクエスト

    • 「vm.memory.size\n」がリクエスト
    • 「vm.memory.size」を装置パターンのOid相当に設定する。
  • レスポンス

    • 「5A 42 58 44 01 0A 00 00 00 00 00 00 00 32 31 30 38 32 35 32 31 36 30 」
    • 14バイト目からが値となります。
    • 抜出:2108252160
    • 数字が文字で返ってきます。※0は0x30ということ。
ExampleCode
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;

public class Empty {
    public static void main(String[] args) {
        try(Socket s = new Socket("10.0.0.142", 10050);
            InputStream is = s.getInputStream();
            OutputStream os = s.getOutputStream();
            InputStreamReader isr = new InputStreamReader(s.getInputStream());
            BufferedReader br = new BufferedReader(isr);
            OutputStreamWriter osw = new OutputStreamWriter(s.getOutputStream());) {

            osw.write("vm.memory.size\n");
            osw.flush();
            int c;
            int i = 0;
            StringBuffer sb = new StringBuffer();
            while((c = br.read()) != -1) {
                i++;
                System.out.print(String.format("%02X", c));
                if(i > 13) {
                    sb.append((char)c);
                }
                System.out.print(" ");
            }
            System.out.println();
            System.out.println(sb);
        }
        catch(Exception e) {
            System.out.println(e);
        }
    }
}

アイテムキー情報

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1