RPC request data truncating list items

17 views
Skip to first unread message

Bob Hayes

unread,
Jul 28, 2023, 2:42:01 AMJul 28
to Junos Python EZ
I have a customer attempting to get EX4300 snapshot data with the following script. The return output seen, when asking for json formatted output, is each FPC returns only one of the two partitions in the list. If they modify the request to text format they see both primary and backup partitions for each FPC. 
When I manually execute the rpc commands directly into the switch via a netconf session from cli, I get both partitions in json format.  
#### Manual netconf session command used
####  <rpc>
####      <get-snapshot-information format="json">
####              <media>internal</media>
####      </get-snapshot-information>
####  </rpc>
In this link https://codebeautify.org/jsonminifier/y2376e55d  I have saved the manual json output where both partitions show up. However, note the minified version shows only one partition! I don't know why that would happen unless this minifier is stumbling on the json output / list items? 
What is the proper way to report this sort of issue?
Thanks,
-Bob
## Customer script
import sys
from getpass import getpass
from jnpr.junos import Device
from jnpr.junos.exception import ConnectError
from jnpr.junos.utils.sw import SW
from lxml import etree
import json
junos_password = getpass("Junos OS or SSH key password: ")
with Device(host='x.x.x.x', user='username', passwd=junos_password, normalize=True) as dev:
    sw1 = dev.rpc.get_snapshot_information({'format':'json'},media='internal')
    print(sw1)
dev.close()
### Example customer output - cleaned up a bit to be readable. This output should have both primary and backup for fpc0 and fpc1

{'multi-routing-engine-results':

[{'multi-routing-engine-item':

[{'re-name': [{'data': 'fpc0'}],

'snapshot-information':

[{'snapshot-medium': [{'data': ' internal (/dev/da0s2a) (backup)'}],

'creation-date': [{'data': 'Nov 28 18:29:44 2022'}],

'software-version':

[{'package':

[{'package-name': [{'data': 'jcrypto-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jdocs-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jphone-home'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jsd'}], 'package-version': [{'data': 'powerpc-21.4R3-S1.5-jet-1'}]},

{'package-name': [{'data': 'jsdn-powerpc'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'junos'}], 'package-version': [{'data': 'ex-21.4R3-S1.5'}]},

{'package-name': [{'data': 'junos-ex-4300'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jweb-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]}]}]}]},

{'re-name': [{'data': 'fpc1'}],

'snapshot-information':

[{'snapshot-medium': [{'data': ' internal (/dev/da0s2a) (primary)'}],

'creation-date': [{'data': 'Nov 28 18:21:30 2022'}],

'software-version':

[{'package':

[{'package-name': [{'data': 'jcrypto-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jdocs-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jphone-home'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jsd'}], 'package-version': [{'data': 'powerpc-21.4R3-S1.5-jet-1'}]},

{'package-name': [{'data': 'jsdn-powerpc'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'junos'}], 'package-version': [{'data': 'ex-21.4R3-S1.5'}]},

{'package-name': [{'data': 'junos-ex-4300'}], 'package-version': [{'data': '21.4R3-S1.5'}]},

{'package-name': [{'data': 'jweb-ex'}], 'package-version': [{'data': '21.4R3-S1.5'}]}]}]}]}]}]}

Reply all
Reply to author
Forward
0 new messages