Ad Widget

Collapse

Best practices for multi-number SNMP with LLD? (modular network switches, PON, etc.)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dj_c00ler
    Junior Member
    • Feb 2021
    • 5

    #1

    Best practices for multi-number SNMP with LLD? (modular network switches, PON, etc.)

    Here's what i have.
    Dozen of multi-linecards network devices like Cisco Catalyst 6500 series, Huawei PON Modular devices etc.

    Problem.
    Can't figure out how to add tens/hundreds of items via SNMP LLD.

    Let's assume everything below is about Huawei PON modular device.
    What i did so far.
    LLD discovery rules/prototypes/graphs/triggers for ethernet ports - done, very easy.
    LLD discovery rules/prototypes/graphs/triggers for PON ports - done, very easy.
    LLD discovery rules/prototypes/graphs/triggers for PON SUBports (aka customer ONU devices) - failed.

    The main problem is two-dimensional SNMP-queries. snmpwalk ifName:
    Code:
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]128[/B][/COLOR] = STRING: InLoopBack0
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]262[/B][/COLOR] = STRING: null0
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]263[/B][/COLOR] = STRING: meth0
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]264[/B][/COLOR] = STRING: vlanif2007
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]234905600[/B][/COLOR] = STRING: ethernet0/3/0
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]234905664[/B][/COLOR] = STRING: ethernet0/3/1
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]234905728[/B][/COLOR] = STRING: ethernet0/3/2
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]234905792[/B][/COLOR] = STRING: ethernet0/3/3
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]3221250304[/B][/COLOR] = STRING: bits0/3/4
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194304000[/B][/COLOR] = STRING: GPON 0/0/0
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194304256[/B][/COLOR] = STRING: GPON 0/0/1
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194304512[/B][/COLOR] = STRING: GPON 0/0/2
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194304768[/B][/COLOR] = STRING: GPON 0/0/3
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194305024[/B][/COLOR] = STRING: GPON 0/0/4
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194305280[/B][/COLOR] = STRING: GPON 0/0/5
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194305536[/B][/COLOR] = STRING: GPON 0/0/6
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194305792[/B][/COLOR] = STRING: GPON 0/0/7
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194306048[/B][/COLOR] = STRING: GPON 0/0/8
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194306304[/B][/COLOR] = STRING: GPON 0/0/9
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194306560[/B][/COLOR] = STRING: GPON 0/0/10
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194306816[/B][/COLOR] = STRING: GPON 0/0/11
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194307072[/B][/COLOR] = STRING: GPON 0/0/12
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194307328[/B][/COLOR] = STRING: GPON 0/0/13
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194307584[/B][/COLOR] = STRING: GPON 0/0/14
    .1.3.6.1.2.1.31.1.1.1.1.[COLOR=#ff0000][B]4194307840[/B][/COLOR] = STRING: GPON 0/0/15
    LLD rule used: discovery[{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFTYPE},1.3.6.1 .2.1.2.2.1.3]
    Prototypes created like "Interface {#IFNAME}: TX" with key "net.if.in[ifHCInOctets.{#SNMPINDEX}]", "Interface {#IFNAME}: RX" with key "net.if.out[ifHCOutOctets.{#SNMPINDEX}]" and so on.
    Please note the red numbers above are used as an {#SNMPINDEX}.

    BUT! SNMP queries of customer devices attached to these ports must use mentioned red numbers as data-part. Here's an example output:
    Code:
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]6[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]7[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]9[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]10[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]11[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]12[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]13[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]14[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]15[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]16[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]17[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]18[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]19[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]20[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]21[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]22[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]23[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]24[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]25[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]26[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]27[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]28[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]29[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]30[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]31[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]32[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]33[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]34[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]36[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]37[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]38[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]39[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305536[/B][/COLOR].[COLOR=#0000ff][B]40[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]6[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]7[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]8[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]9[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]10[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]11[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]12[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]13[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]14[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]15[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]16[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]17[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]18[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]19[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]20[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]21[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]22[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]23[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]24[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]25[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]26[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]27[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]28[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]29[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]30[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]31[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194305792[/B][/COLOR].[COLOR=#0000ff][B]32[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]6[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]7[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]8[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]9[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]10[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]11[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]12[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]13[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]14[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]15[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306048[/B][/COLOR].[COLOR=#0000ff][B]16[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]6[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]7[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]8[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306304[/B][/COLOR].[COLOR=#0000ff][B]9[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]7[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]8[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]9[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]10[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]11[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]12[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]13[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]14[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]15[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]16[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194306816[/B][/COLOR].[COLOR=#0000ff][B]17[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]2[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]3[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]4[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]5[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307072[/B][/COLOR].[COLOR=#0000ff][B]6[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307840[/B][/COLOR].[COLOR=#0000ff][B]0[/B][/COLOR] = INTEGER: 1
    .1.3.6.1.4.1.2011.6.128.1.1.2.43.1.6.[COLOR=#ff0000][B]4194307840[/B][/COLOR].[COLOR=#0000ff][B]1[/B][/COLOR] = INTEGER: 1
    My goal is to have items created like "Interface {#IFNAME} ONU {<blue_number>}: TX", "Interface {#IFNAME} ONU {<blue_number>}: RX" and so on. All with corresponding SNMP OIDs.

    I tried to use LLD rule like discovery[{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#SOMEDATA},1.3.6 .1.4.1.2011.6.128.1.1.2.43.1.2] but ended up with this (Zabbix LLD test string aligned with jq tool):
    Code:
    [
      {
        "{#SNMPINDEX}": "128",
        "{#IFNAME}": "InLoopBack0"
      },
      {
        "{#SNMPINDEX}": "262",
        "{#IFNAME}": "null0"
      },
      {
        "{#SNMPINDEX}": "263",
        "{#IFNAME}": "meth0"
      },
      {
        "{#SNMPINDEX}": "264",
        "{#IFNAME}": "vlanif2007"
      },
      {
        "{#SNMPINDEX}": "234905600",
        "{#IFNAME}": "ethernet0/3/0"
      },
      {
        "{#SNMPINDEX}": "234905664",
        "{#IFNAME}": "ethernet0/3/1"
      },
      {
        "{#SNMPINDEX}": "234905728",
        "{#IFNAME}": "ethernet0/3/2"
      },
      {
        "{#SNMPINDEX}": "234905792",
        "{#IFNAME}": "ethernet0/3/3"
      },
      {
        "{#SNMPINDEX}": "3221250304",
        "{#IFNAME}": "bits0/3/4"
      },
      {
        "{#SNMPINDEX}": "4194304000",
        "{#IFNAME}": "GPON 0/0/0"
      },
      {
        "{#SNMPINDEX}": "4194304256",
        "{#IFNAME}": "GPON 0/0/1"
      },
      {
        "{#SNMPINDEX}": "4194304512",
        "{#IFNAME}": "GPON 0/0/2"
      },
      {
        "{#SNMPINDEX}": "4194304768",
        "{#IFNAME}": "GPON 0/0/3"
      },
      {
        "{#SNMPINDEX}": "4194305024",
        "{#IFNAME}": "GPON 0/0/4"
      },
      {
        "{#SNMPINDEX}": "4194305280",
        "{#IFNAME}": "GPON 0/0/5"
      },
      {
        "{#SNMPINDEX}": "4194305536",
        "{#IFNAME}": "GPON 0/0/6"
      },
      {
        "{#SNMPINDEX}": "4194305792",
        "{#IFNAME}": "GPON 0/0/7"
      },
      {
        "{#SNMPINDEX}": "4194306048",
        "{#IFNAME}": "GPON 0/0/8"
      },
      {
        "{#SNMPINDEX}": "4194306304",
        "{#IFNAME}": "GPON 0/0/9"
      },
      {
        "{#SNMPINDEX}": "4194306560",
        "{#IFNAME}": "GPON 0/0/10"
      },
      {
        "{#SNMPINDEX}": "4194306816",
        "{#IFNAME}": "GPON 0/0/11"
      },
      {
        "{#SNMPINDEX}": "4194307072",
        "{#IFNAME}": "GPON 0/0/12"
      },
      {
        "{#SNMPINDEX}": "4194307328",
        "{#IFNAME}": "GPON 0/0/13"
      },
      {
        "{#SNMPINDEX}": "4194307584",
        "{#IFNAME}": "GPON 0/0/14"
      },
      {
        "{#SNMPINDEX}": "4194307840",
        "{#IFNAME}": "GPON 0/0/15"
      },
      {
        "{#SNMPINDEX}": "4194305536.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.6",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.7",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.9",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.10",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.11",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.12",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.13",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.14",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.15",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.16",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.17",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.18",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.19",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.20",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.21",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.22",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.23",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.24",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.25",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.26",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.27",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.28",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.29",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.30",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.31",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.32",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.33",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.34",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.36",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.37",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.38",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.39",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305536.40",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.6",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.7",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.8",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.9",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.10",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.11",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.12",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.13",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.14",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.15",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.16",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.17",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.18",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.19",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.20",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.21",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.22",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.23",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.24",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.25",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.26",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.27",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.28",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.29",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.30",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.31",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194305792.32",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.6",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.7",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.8",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.9",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.10",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.11",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.12",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.13",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.14",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.15",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306048.16",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.6",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.7",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.8",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306304.9",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.7",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.8",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.9",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.10",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.11",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.12",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.13",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.14",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.15",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.16",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194306816.17",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.1",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.2",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.3",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.4",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.5",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307072.6",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307840.0",
        "{#SOMEDATA}": "1"
      },
      {
        "{#SNMPINDEX}": "4194307840.1",
        "{#SOMEDATA}": "1"
      }
    ]
    As a result items can't be accurately created because of different SNMP indexes.

    Can someone point me out the right way to deal with.
    I believe there should be a very simple solution.

    P.S. Zabbix server/Zabbix agent v. 5.2.0. No proxies used.
  • dj_c00ler
    Junior Member
    • Feb 2021
    • 5

    #2
    Looks like there's no out-of-the-box solution so i did the following (example for Huawei PON device).

    1. Create a Python script (obviously it could be done with anything else) /usr/share/zabbix/externalscripts/pon-onu-huawei.py and CHMOD it to 755:
    Code:
    #!/usr/bin/python3
    #coding=UTF8
    
    import sys,os,netsnmp
    
    snmp_timeout = 30000 # in milliseconds
    snmp_retries = 1
    
    ponIfIndex = '.1.3.6.1.2.1.2.2.1.3'
    ponIfIndexFilter = 250 # = PON interface ID
    ponIfName = '.1.3.6.1.2.1.31.1.1.1.1'
    onuIndex = '.1.3.6.1.4.1.2011.6.128.1.1.2.43.1.2' # onuIndex = ponIf
    onuDescr = '.1.3.6.1.4.1.2011.6.128.1.1.2.43.1.9' # + onuIndex
    
    ponIfList = {}
    ponIfNames = {}
    onuIndexList = {}
    onuDescrList = {}
    
    param_conn = str(sys.argv[1])
    param_comm = "secret_public_ro"
    
    ponIfIndex_var = netsnmp.VarList(ponIfIndex)
    ponIfName_var = netsnmp.VarList(ponIfName)
    onuIndex_var = netsnmp.VarList(onuIndex)
    onuDescr_var = netsnmp.VarList(onuDescr)
    netsnmp.snmpwalk(ponIfIndex_var, Version=2, DestHost=param_conn, Community=param_comm, Timeout=snmp_timeout, Retries=snmp_retries, UseNumeric=1)
    netsnmp.snmpwalk(ponIfName_var, Version=2, DestHost=param_conn, Community=param_comm, Timeout=snmp_timeout, Retries=snmp_retries, UseNumeric=1)
    netsnmp.snmpwalk(onuIndex_var, Version=2, DestHost=param_conn, Community=param_comm, Timeout=snmp_timeout, Retries=snmp_retries, UseNumeric=1)
    netsnmp.snmpwalk(onuDescr_var, Version=2, DestHost=param_conn, Community=param_comm, Timeout=snmp_timeout, Retries=snmp_retries, UseNumeric=1)
    
    for aaa in ponIfName_var:
        ponIfNames[aaa.iid] = aaa.val
    for bbb in ponIfIndex_var:
        if int(bbb.val) == ponIfIndexFilter:
            ponIfList[bbb.iid]=ponIfNames[bbb.iid]
    for ccc in onuDescr_var:
        onuDescrList[ccc.tag.replace(onuDescr+".","")+"."+ccc.iid] = ccc.val
    
    total = len(onuIndex_var)
    text = ""
    processed = 0
    if total > 0:
        for ddd in onuIndex_var:
            intf = ddd.tag.replace(onuIndex+".","")
            text += "{\"{#SNMPINDEX}\":\""+intf+"."+ddd.iid+"\",\"{#ON TIF}\":\""+ponIfNames[intf]+":"+ddd.iid+"\",\"{#ONTDESCR}\":\""+onuDescrLi st[intf+"."+ddd.iid]+"\"}"
           processed += 1
           if processed < total: text += ","
    
    print ("["+text+"]")
    and got json like:
    Code:
    [
    {
    "{#SNMPINDEX}": "4194305536.0",
    "{#ONTIF}": "GPON 0/0/6:0",
    "{#ONTDESCR}": "mydescr1"
    },
    {
    "{#SNMPINDEX}": "4194305536.1",
    "{#ONTIF}": "GPON 0/0/6:1",
    "{#ONTDESCR}": "mydescr2"
    },
    {
    "{#SNMPINDEX}": "4194305536.2",
    "{#ONTIF}": "GPON 0/0/6:2",
    "{#ONTDESCR}": "mydescr3"
    },
    {
    "{#SNMPINDEX}": "4194305536.3",
    "{#ONTIF}": "GPON 0/0/6:3",
    "{#ONTDESCR}": "mydescr4"
    },
    ...
    {
    "{#SNMPINDEX}": "4194307840.1",
    "{#ONTIF}": "GPON 0/0/15:1",
    "{#ONTDESCR}": "mydescr100500"
    }
    ]
    2. Made a discovery rule 'External check' with key 'pon-onu-huawei.py[{HOST.CONN}]'.
    3. Everything else is simple - made an item/trigger/graph prototypes like 'ONT {#ONTIF} ({#ONTDESCR}): Traffic in' with 'net.ont.traffic.in[{#SNMPINDEX}]' key.
    4. As some devices are very slow to SNMP respond i had to set Timeout=25 in /etc/zabbix/zabbix_server.conf along with increase number of StartPollers and StartPollers Unreachable.
    5. Last thing to do is uncheck 'Use bulk requests' for such devices because i had rapidly growing queue and restart of Zabbix-server processes every 2-3 hours.

    Comment

    • jameskirsop
      Member
      • Jul 2018
      • 32

      #3
      This looked really promising until I saw that you had hardcoded the {#SNMPINDEX} on line 10 of your script.

      Did you ever get something to automatically discover and monitor the SUB ports of a low-level discovered interface?

      What you're trying to achieve is similar (in terms of practical implementation) to what I'm trying to do here with Juniper Class of Service stats capture, where I need to do multi-dimensional discovery and monitoring.

      Comment

      Working...