このセクションでは、スイッチでSNMPの検出を実行します。
ファイルシステムやネットワークインターフェースのディスカバリとは異なり、アイテムは必ずしも "snmp.discovery" キーを持つ必要はありません - SNMPエージェントのアイテムタイプで十分です。
ディスカバリルールを設定するには、以下の手順を実行します。


すべての必須入力フィールドには赤いアスタリスクが付いています。
ディスカバリするOIDは、次の形式でSNMP OIDフィールドに定義します: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,]
ここで {#MACRO1}, {#MACRO2} … は有効なlldマクロ名、oid1, oid2... はこれらのマクロに対して意味のある値を生成できるOIDです。組み込みマクロ {#SNMPINDEX} には、検出されたOIDのインデックスが含まれ、検出されたエンティティに適用されます。検出されたエンティティは {#SNMPINDEX} マクロ値でグループ化されます。
以下は、スイッチでいくつかのsnmpwalkを実行した例です。
$ snmpwalk -v 2c -c public 192.168.1.1 IF-MIB::ifDescr
IF-MIB::ifDescr.1 = STRING: WAN
IF-MIB::ifDescr.2 = STRING: LAN1
IF-MIB::ifDescr.3 = STRING: LAN2
$ snmpwalk -v 2c -c public 192.168.1.1 IF-MIB::ifPhysAddress
IF-MIB::ifPhysAddress.1 = STRING: 8:0:27:90:7a:75
IF-MIB::ifPhysAddress.2 = STRING: 8:0:27:90:7a:76
IF-MIB::ifPhysAddress.3 = STRING: 8:0:27:2b:af:9eそしてSNMP OIDは次のように設定します: discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]
このルールでは、{#IFDESCR}マクロがWAN、LAN1、LAN2、{#IFPHYSADDRESS}マクロが8:0:27:90:7a:75、8:0:27:90:7a:76、8:0:27:2b:af:9e、{#SNMPINDEX}マクロが検出されたOIDのインデックス1、2、3に設定されたエンティティを検出します。
[
{
"{#SNMPINDEX}": "1",
"{#IFDESCR}": "WAN",
"{#IFPHYSADDRESS}": "8:0:27:90:7a:75"
},
{
"{#SNMPINDEX}": "2",
"{#IFDESCR}": "LAN1",
"{#IFPHYSADDRESS}": "8:0:27:90:7a:76"
},
{
"{#SNMPINDEX}": "3",
"{#IFDESCR}": "LAN2",
"{#IFPHYSADDRESS}": "8:0:27:2b:af:9e"
}
]エンティティに指定されたOIDがない場合、そのエンティティの対応するマクロは省略されます。たとえば、次のようなデータがある場合:
ifDescr.1 "Interface #1"
ifDescr.2 "Interface #2"
ifDescr.4 "Interface #4"
ifAlias.1 "eth0"
ifAlias.2 "eth1"
ifAlias.3 "eth2"
ifAlias.5 "eth4"この場合、SNMPディスカバリ discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias] は次の構造を返します。
[
{
"{#SNMPINDEX}": 1,
"{#IFDESCR}": "Interface #1",
"{#IFALIAS}": "eth0"
},
{
"{#SNMPINDEX}": 2,
"{#IFDESCR}": "Interface #2",
"{#IFALIAS}": "eth1"
},
{
"{#SNMPINDEX}": 3,
"{#IFALIAS}": "eth2"
},
{
"{#SNMPINDEX}": 4,
"{#IFDESCR}": "Interface #4"
},
{
"{#SNMPINDEX}": 5,
"{#IFALIAS}": "eth4"
}
]次のスクリーンショットは、アイテムプロトタイプでこれらのマクロをどのように使用できるかを示しています。

必要に応じて、いくつでもアイテムプロトタイプを作成できます。

次のスクリーンショットは、これらのマクロをトリガープロトタイプでどのように使用できるかを示しています。


次のスクリーンショットは、グラフプロトタイプでこれらのマクロをどのように使用できるかを示しています。


ディスカバリルールの概要:

サーバーが実行されると、SNMPディスカバリールールが返す値に基づいて、実際のアイテム、トリガー、グラフが作成されます。ホストの設定では、それらがどのディスカバリールールから来たかを示すオレンジ色のリンクが先頭に付いています。


