Skip to content

Commit

Permalink
Merge pull request #1382 from minefuto/issue-1293
Browse files Browse the repository at this point in the history
resolve #1293
  • Loading branch information
mirceaulinic authored Mar 8, 2021
2 parents 2899e4d + fc25f2b commit d733d47
Show file tree
Hide file tree
Showing 3 changed files with 1,365 additions and 4 deletions.
14 changes: 11 additions & 3 deletions napalm/junos/junos.py
Original file line number Diff line number Diff line change
Expand Up @@ -405,9 +405,17 @@ def get_interfaces_counters(self):
query.get()
interface_counters = {}
for interface, counters in query.items():
interface_counters[interface] = {
k: v if v is not None else -1 for k, v in counters
}
_interface_counters = {}
for k, v in counters:
if k == "logical_interfaces":
for _interface, _counters in v.items():
interface_counters[_interface] = {
k: v if v is not None else -1 for k, v in _counters
}
else:
_interface_counters[k] = v if v is not None else -1

interface_counters[interface] = _interface_counters
return interface_counters

def get_environment(self):
Expand Down
36 changes: 36 additions & 0 deletions napalm/junos/utils/junos_views.yml
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,42 @@ junos_iface_counter_table:


junos_iface_counter_view:
fields:
logical_interfaces: junos_logical_iface_counter_table
groups:
ts: traffic-statistics
rxerrs: input-error-list
txerrs: output-error-list
ethernet_traffic_types: ethernet-mac-statistics


# fields that are part of groups are called
# "fields_<group-name>"
fields_ethernet_traffic_types:
rx_broadcast_packets: { input-broadcasts: int }
tx_broadcast_packets: { output-broadcasts: int }
rx_unicast_packets: { input-unicasts: int }
tx_unicast_packets: { output-unicasts: int }
rx_multicast_packets: { input-multicasts: int }
tx_multicast_packets: { output-multicasts: int }

fields_ts:
rx_octets: { input-bytes: int }
tx_octets: { output-bytes: int }

fields_rxerrs:
rx_errors: { input-errors: int }
rx_discards: { input-discards: int }

fields_txerrs:
tx_errors: { output-errors: int }
tx_discards: { output-drops: int }

junos_logical_iface_counter_table:
item: logical-interface
view: junos_logical_iface_counter_view

junos_logical_iface_counter_view:
groups:
ts: traffic-statistics
rxerrs: input-error-list
Expand Down
Loading

0 comments on commit d733d47

Please sign in to comment.