We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hi,
I am trying to adapt the show interface media to a new one show interface extensive parser in order to get information about queues in each interface.
It Works fine for traffic-statistics and input/output errors but is not working for queue counters. I guess is because xpath is 2 level Deep.
Here an example
parser: regex-command: show\s+interfaces\s+extensive\s+|\s+display\s+xml matches: - type: multi-value method: xpath xpath: //[local-name() = 'physical-interface'] loop: key: ./[local-name() = 'name'] sub-matches: - xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'input-bps'] variable-name: $host.interface.$key.input-bps - xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'input-pps'] variable-name: $host.interface.$key.input-pps - xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'output-bps'] variable-name: $host.interface.$key.output-bps - xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'output-pps'] variable-name: $host.interface.$key.output-pps - xpath: ./[local-name() = 'input-error-list']/[local-name() = 'input-errors'] variable-name: $host.interface.$key.input-errors - xpath: ./[local-name() = 'input-error-list']/[local-name() = 'input-drops'] variable-name: $host.interface.$key.input-drops - xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-errors'] variable-name: $host.interface.$key.output-errors - xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-drops'] variable-name: $host.interface.$key.output-drops - xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-drops'] variable-name: $host.interface.$key.output-drops - xpath: ./[local-name() = 'queue-counters']/[local-name() = 'queue-counters-queued-packets'] variable-name: $host.interface.$key.queue-counters-queued-packets
And the XML sample: reth0 up up 128 536 131 reth SecGW/CPN Ethernet 1518 disabled 10Gbps none none disabled disabled
<minimum-links-in-aggregate>1</minimum-links-in-aggregate> <minimum-bandwidth-in-aggregate>0</minimum-bandwidth-in-aggregate> <if-device-flags> <ifdf-present/> <ifdf-running/> </if-device-flags> <if-config-flags> <iff-snmp-traps/> <internal-flags>0x4000</internal-flags> </if-config-flags> <current-physical-address>00:10:db:ff:10:00</current-physical-address> <hardware-physical-address>00:10:db:ff:10:00</hardware-physical-address> <interface-flapped junos:seconds="21652480">2018-01-11 00:49:15 CET (35w5d 14:34 ago)</interface-flapped> <statistics-cleared>2018-09-17 21:59:58 CEST (18:23:57 ago)</statistics-cleared> <traffic-statistics junos:style="verbose"> <input-bytes>10366164095177</input-bytes> <input-bps>1938269248</input-bps> <output-bytes>1271067057281</output-bytes> <output-bps>238333248</output-bps> <input-packets>9363622448</input-packets> <input-pps>215514</input-pps> <output-packets>5195882312</output-packets> <output-pps>121456</output-pps> <ipv6-transit-statistics> <input-bytes>0</input-bytes> <output-bytes>0</output-bytes> <input-packets>0</input-packets> <output-packets>0</output-packets> </ipv6-transit-statistics> </traffic-statistics> <stp-traffic-statistics junos:style="verbose"> <stp-input-bytes-dropped>0</stp-input-bytes-dropped> <stp-output-bytes-dropped>0</stp-output-bytes-dropped> <stp-input-packets-dropped>0</stp-input-packets-dropped> <stp-output-packets-dropped>0</stp-output-packets-dropped> </stp-traffic-statistics> <input-error-list> <input-errors>0</input-errors> <input-drops>0</input-drops> <framing-errors>0</framing-errors> <input-runts>0</input-runts> <input-giants>0</input-giants> <input-discards>0</input-discards> <input-resource-errors>0</input-resource-errors> </input-error-list> <output-error-list> <carrier-transitions>0</carrier-transitions> <output-errors>0</output-errors> <output-drops>0</output-drops> <mtu-errors>0</mtu-errors> <output-resource-errors>0</output-resource-errors> </output-error-list> <queue-counters junos:style="brief"> <interface-cos-short-summary> <intf-cos-queue-type>Egress queues</intf-cos-queue-type> <intf-cos-num-queues-supported>8</intf-cos-num-queues-supported> <intf-cos-num-queues-in-use>4</intf-cos-num-queues-in-use> </interface-cos-short-summary> <queue> <queue-number>0</queue-number> <forwarding-class-name>best-effort</forwarding-class-name> <queue-counters-queued-packets>5195048807</queue-counters-queued-packets> <queue-counters-trans-packets>5195048806</queue-counters-trans-packets> <queue-counters-total-drop-packets>0</queue-counters-total-drop-packets> </queue> <queue> <queue-number>1</queue-number> <forwarding-class-name>expedited-forwarding</forwarding-class-name> <queue-counters-queued-packets>0</queue-counters-queued-packets> <queue-counters-trans-packets>0</queue-counters-trans-packets> <queue-counters-total-drop-packets>0</queue-counters-total-drop-packets> </queue> <queue> <queue-number>2</queue-number> <forwarding-class-name>assured-forwarding</forwarding-class-name> <queue-counters-queued-packets>0</queue-counters-queued-packets> <queue-counters-trans-packets>0</queue-counters-trans-packets> <queue-counters-total-drop-packets>0</queue-counters-total-drop-packets> </queue> <queue> <queue-number>3</queue-number> <forwarding-class-name>network-control</forwarding-class-name> <queue-counters-queued-packets>826937</queue-counters-queued-packets> <queue-counters-trans-packets>826937</queue-counters-trans-packets> <queue-counters-total-drop-packets>0</queue-counters-total-drop-packets> </queue> </queue-counters> <queue-num-forwarding-class-name-map> <queue-number>0</queue-number> <forwarding-class-name>best-effort</forwarding-class-name> </queue-num-forwarding-class-name-map> <queue-num-forwarding-class-name-map> <queue-number>1</queue-number> <forwarding-class-name>expedited-forwarding</forwarding-class-name> </queue-num-forwarding-class-name-map> <queue-num-forwarding-class-name-map> <queue-number>2</queue-number> <forwarding-class-name>assured-forwarding</forwarding-class-name> </queue-num-forwarding-class-name-map> <queue-num-forwarding-class-name-map> <queue-number>3</queue-number> <forwarding-class-name>network-control</forwarding-class-name> </queue-num-forwarding-class-name-map>
The text was updated successfully, but these errors were encountered:
Hi Albert,
It seems you need to modify your xpath, could you please try something like
./[local-name() = 'queue-counters']/[local-name() = 'queue'][queue-number='0']/[local-name() = 'queue-counters-queued-packets']
or a simplified version
./[local-name() = 'queue-counters']/queue[queue-number='0']/queue-counters-queued-packets
Then if it works you should repeat the same for each queue-number (0-3)
Regards
Sorry, something went wrong.
Now I the parser doesn't fail. No log error in the log file. But not able to record an value. Any problema with the variable?
- xpath: ./*[local-name() = 'queue-counters']/*[local-name() = 'queue'][queue-number='0']/*[local-name() = 'queue-counters-qu
eued-packets'] variable-name: $host.interface.$key.queue.queue-number.0.queue-counters-queued-packets
No branches or pull requests
Hi,
I am trying to adapt the show interface media to a new one show interface extensive parser in order to get information about queues in each interface.
It Works fine for traffic-statistics and input/output errors but is not working for queue counters. I guess is because xpath is 2 level Deep.
Here an example
parser:
regex-command: show\s+interfaces\s+extensive\s+|\s+display\s+xml
matches:
-
type: multi-value
method: xpath
xpath: //[local-name() = 'physical-interface']
loop:
key: ./[local-name() = 'name']
sub-matches:
-
xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'input-bps']
variable-name: $host.interface.$key.input-bps
-
xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'input-pps']
variable-name: $host.interface.$key.input-pps
-
xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'output-bps']
variable-name: $host.interface.$key.output-bps
-
xpath: ./[local-name() = 'traffic-statistics']/[local-name() = 'output-pps']
variable-name: $host.interface.$key.output-pps
-
xpath: ./[local-name() = 'input-error-list']/[local-name() = 'input-errors']
variable-name: $host.interface.$key.input-errors
-
xpath: ./[local-name() = 'input-error-list']/[local-name() = 'input-drops']
variable-name: $host.interface.$key.input-drops
-
xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-errors']
variable-name: $host.interface.$key.output-errors
-
xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-drops']
variable-name: $host.interface.$key.output-drops
-
xpath: ./[local-name() = 'output-error-list']/[local-name() = 'output-drops']
variable-name: $host.interface.$key.output-drops
-
xpath: ./[local-name() = 'queue-counters']/[local-name() = 'queue-counters-queued-packets']
variable-name: $host.interface.$key.queue-counters-queued-packets
And the XML sample:
reth0
up
up
128
536
131
reth SecGW/CPN
Ethernet
1518
disabled
10Gbps
none
none
disabled
disabled
The text was updated successfully, but these errors were encountered: