Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

JET通知 API Overivew

JET通知APIを使用すると、イベントを購読し、イベントの発生時にイベントを受信するコールバック関数を指定できます。これらの Python インターフェイスは、Python 以外の言語については、JET 以外の言語で処理する必要がある、という、THE 型の通知システムへのインターフェイスを提供します(「 非 Python 言語向けプログラミング JET 通知 」を参照してください)。HTTPS://MOSQUITTO.ORG/ の詳細については、 を参照 してください

JSON 形式の通知JETメッセージ

JETは JSON 形式で配信されます。JSON メッセージには、ヘッダーと属性の 2 つの部分があります。ヘッダーは、すべてのイベントで共通です。イベント ID、ホスト名、時間、重大度、イベントの設備が含されます。属性にはイベントに関する情報が含まれているので、イベントのトピック名によって異なります。

カーネル rtsock イベントはすべて重大度として info 、施設として KERNEL 発生します。syslog イベントの場合、重大度と設備は Syslog メッセージの重大度とJunos OSされます。

イベント JSON ファイルの例を以下に示します。

JSON の詳細については、「 package JET Applications 」を参照してください。

イベントの加入

データ ツールを使用してJET、表 1 に示すイベントを 購読できます。トピック 、クライアントが接続するエンドポイントです。トピックは、メッセージの公開と加入のための中央配布ハブとして機能します。トピックはシンプルで階層型の文字列で、UTF-8 でエンコードされ、スラッシュで区切っています。

表 1:Junosのトピック

イベント

トピック

返されるイベント情報

物理インターフェイス(IFD)

  • /junos/events/kernel/interfaces/ifd/add/ifdname

  • /junos/events/kernel/interfaces/ifd/change/ifdname

  • /junos/events/kernel/interfaces/ifd/delete/ifdname

名前、snmp-id、フラグ

論理インターフェイス(IFL)

  • /junos/events/kernel/interfaces/ifl/add/iflname

  • /junos/events/kernel/interfaces/ifl/change/iflname

  • /junos/events/kernel/interfaces/ifl/delete/iflname

名前、サブユニット、snmp-id、フラグ

ファミリー(IFF)

  • /junos/events/kernel/interfaces/iff/add/iflname/family-type

  • /junos/events/kernel/interfaces/iff/change/iflname/family-type

  • /junos/events/kernel/interfaces/iff/delete/iflname/family-type

名前、サブユニット、ファミリー、テーブル名、フラグ

アドレス

  • /junos/events/kernel/interfaces/ifa/add/iflname/family-type/address

  • /junos/events/kernel/interfaces/ifa/change/iflname/family-type/address

  • /junos/events/kernel/interfaces/ifa/delete/iflname/family-type/address

名前, サブユニット, ファミリー, ローカル アドレス, 宛先アドレス, ブロードキャスト アドレス, フラグ

ファイアウォール

  • /junos/events/kernel/firewall/filter/add/filtername

  • /junos/events/kernel/firewall/filter/change/filtername

  • /junos/events/kernel/firewall/filter/delete/filtername

名前、バージョン、client-id、フィルター タイプ、プロトコル、インターフェイス名、フラグ

ルート

  • /junos/events/kernel/route/add/family/prefix-with-length

  • /junos/events/kernel/route/change/family/prefix-with-length

  • /junos/events/kernel/route/delete/family/prefix-with-length

table-name, 論理ルーター名, アドレスファミリー, ルートタイプ, ルートプレフィックス, arrayof(nexthop-address) フラグ

ルート テーブル

  • /junos/events/kernel/route-table/add/tablename/lrname

  • /junos/events/kernel/route-table/change/tablename/lrname

  • /junos/events/kernel/route-table/delete/tablename/lrname

名前、論理ルーター名、アドレス ファミリー、フラグ

Syslog

/junos/events/syslog/event-id

arrayof(属性と値のペア)

Python JET対応のプログラミングおよび通知

高レベル言語の多くは、利用可能なS多くのライブラリを備え、アプリケーションJET対応するライブラリを使用して、イベントの通知や購読で実行されているJUNOS OSブローカーに接続できます。例えば、ここには、例えば、JAVAプログラムのサンプルが、1つのSDSブローカーに接続し、イベントの加入を行います。例:JAVAのSD-3 メッセージの例です。

異なる言語用の場合の、次の表 2 を参照してください。

表 2:言語別のライブラリ(英語)

言語名

ライセンス リンク

C、モズキット

Freebsd

C++、Mosquitto

Freebsd

Python、Mosquitto

Freebsd

Ruby、Ruby-ruby-ruby

MIT ライセンス

Java、Eclipse Paho Java

Eclipseパブリックライセンス

Go, Eclipse Paho Go

Eclipseパブリックライセンス

C#、WebDotNet

カスタム ライセンス