Software Development Kit (SDK) and API Discussions

How to get Snapvault relationship status in 7 - Mode like cdot?

Megajin
2,019 Views

Hey Guys,

 

I'm in a little pinch here.

 

On a cDot machine you can use this XML for a POST-Request to get Snapmirror and Snapvault informations (snapmirror-get-iter):

 

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp xmlns="http://www.netapp.com/filer/admin" version="1.110">
<snapmirror-get-iter>
<desired-attributes>
<snapmirror-info>
<break-failed-count>*</break-failed-count>
<break-successful-count>*</break-successful-count>
<current-max-transfer-rate>*</current-max-transfer-rate>
<current-operation-id>*</current-operation-id>
<current-transfer-error>*</current-transfer-error>
<current-transfer-priority>*</current-transfer-priority>
<current-transfer-type>*</current-transfer-type>
<destination-cluster>*</destination-cluster>
<destination-location>*</destination-location>
<destination-volume>*</destination-volume>
<destination-volume-node>*</destination-volume-node>
<destination-vserver>*</destination-vserver>
<destination-vserver-uuid>*</destination-vserver-uuid>
<exported-snapshot>*</exported-snapshot>
<exported-snapshot-timestamp>*</exported-snapshot-timestamp>
<file-restore-file-count>*</file-restore-file-count>
<file-restore-file-list>*</file-restore-file-list>
<identity-preserve>*</identity-preserve>
<is-constituent>*</is-constituent>
<is-healthy>*</is-healthy>
<lag-time>*</lag-time>
<last-transfer-duration>*</last-transfer-duration>
<last-transfer-end-timestamp>*</last-transfer-end-timestamp>
<last-transfer-error>*</last-transfer-error>
<last-transfer-error-codes>*</last-transfer-error-codes>
<last-transfer-from>*</last-transfer-from>
<last-transfer-network-compression-ratio>*</last-transfer-network-compression-ratio>
<last-transfer-size>*</last-transfer-size>
<last-transfer-type>*</last-transfer-type>
<max-transfer-rate>*</max-transfer-rate>
<mirror-state>*</mirror-state>
<network-compression-ratio>*</network-compression-ratio>
<newest-snapshot>*</newest-snapshot>
<newest-snapshot-timestamp>*</newest-snapshot-timestamp>
<opmask>*</opmask>
<policy>*</policy>
<policy-type>*</policy-type>
<progress-last-updated>*</progress-last-updated>
<relationship-control-plane>*</relationship-control-plane>
<relationship-group-type>*</relationship-group-type>
<relationship-id>*</relationship-id>
<relationship-progress>*</relationship-progress>
<relationship-status>*</relationship-status>
<relationship-type>*</relationship-type>
<resync-failed-count>*</resync-failed-count>
<resync-successful-count>*</resync-successful-count>
<schedule>*</schedule>
<snapshot-checkpoint>*</snapshot-checkpoint>
<snapshot-progress>*</snapshot-progress>
<source-cluster>*</source-cluster>
<source-location>*</source-location>
<source-volume>*</source-volume>
<source-vserver>*</source-vserver>
<source-vserver-uuid>*</source-vserver-uuid>
<total-transfer-bytes>*</total-transfer-bytes>
<total-transfer-time-secs>*</total-transfer-time-secs>
<transfer-snapshot>*</transfer-snapshot>
<tries>*</tries>
<unhealthy-reason>*</unhealthy-reason>
<update-failed-count>*</update-failed-count>
<update-successful-count>*</update-successful-count>
<vserver>*</vserver>
</snapmirror-info>
</desired-attributes>
<max-records>2147483647</max-records>
<query>
<snapmirror-info>
<break-failed-count>*</break-failed-count>
<break-successful-count>*</break-successful-count>
<current-max-transfer-rate>*</current-max-transfer-rate>
<current-operation-id>*</current-operation-id>
<current-transfer-error>*</current-transfer-error>
<current-transfer-priority>*</current-transfer-priority>
<current-transfer-type>*</current-transfer-type>
<destination-cluster>*</destination-cluster>
<destination-location>*</destination-location>
<destination-volume>*</destination-volume>
<destination-volume-node>*</destination-volume-node>
<destination-vserver>*</destination-vserver>
<destination-vserver-uuid>*</destination-vserver-uuid>
<exported-snapshot>*</exported-snapshot>
<exported-snapshot-timestamp>*</exported-snapshot-timestamp>
<file-restore-file-count>*</file-restore-file-count>
<file-restore-file-list>*</file-restore-file-list>
<identity-preserve>*</identity-preserve>
<is-constituent>*</is-constituent>
<is-healthy>*</is-healthy>
<lag-time>*</lag-time>
<last-transfer-duration>*</last-transfer-duration>
<last-transfer-end-timestamp>*</last-transfer-end-timestamp>
<last-transfer-error>*</last-transfer-error>
<last-transfer-error-codes>*</last-transfer-error-codes>
<last-transfer-from>*</last-transfer-from>
<last-transfer-network-compression-ratio>*</last-transfer-network-compression-ratio>
<last-transfer-size>*</last-transfer-size>
<last-transfer-type>*</last-transfer-type>
<max-transfer-rate>*</max-transfer-rate>
<mirror-state>*</mirror-state>
<network-compression-ratio>*</network-compression-ratio>
<newest-snapshot>*</newest-snapshot>
<newest-snapshot-timestamp>*</newest-snapshot-timestamp>
<opmask>*</opmask>
<policy>*</policy>
<policy-type>*</policy-type>
<progress-last-updated>*</progress-last-updated>
<relationship-control-plane>*</relationship-control-plane>
<relationship-group-type>*</relationship-group-type>
<relationship-id>*</relationship-id>
<relationship-progress>*</relationship-progress>
<relationship-status>*</relationship-status>
<relationship-type>*</relationship-type>
<resync-failed-count>*</resync-failed-count>
<resync-successful-count>*</resync-successful-count>
<schedule>*</schedule>
<snapshot-checkpoint>*</snapshot-checkpoint>
<snapshot-progress>*</snapshot-progress>
<source-cluster>*</source-cluster>
<source-location>*</source-location>
<source-volume>*</source-volume>
<source-vserver>*</source-vserver>
<source-vserver-uuid>*</source-vserver-uuid>
<total-transfer-bytes>*</total-transfer-bytes>
<total-transfer-time-secs>*</total-transfer-time-secs>
<transfer-snapshot>*</transfer-snapshot>
<tries>*</tries>
<unhealthy-reason>*</unhealthy-reason>
<update-failed-count>*</update-failed-count>
<update-successful-count>*</update-successful-count>
<vserver>*</vserver>
</snapmirror-info>
</query>
</snapmirror-get-iter>
</netapp>

 

Good on cDot everything works. As you can see I did use wildcards (*).

However 7-Mode is giving me a hard time...

 

I figured that you can not get these informations together like in cDot.

So I went ahead and used this XML for snapmirrors (snapmirror-get-status):

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapmirror-get-status>
  </snapmirror-get-status>
</netapp>

As you can see I was not able to use the wildcard (*) for 7 - Mode instead I did delete the tag 

<location></location>

which gave me the desired output for all relations.

 

 

My question is how am I supposed to do this for all snapvault relations on my 7 - Mode machine?

 

I did try these XMLs:

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapvault-primary-get-relationship-status>
    <system-path></system-path>
  </snapvault-primary-get-relationship-status>
</netapp>

- Not working because system-path cannot be empty...

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapvault-primary-get-relationship-status>
    <system-path>*</system-path>
  </snapvault-primary-get-relationship-status>
</netapp>

- Not working because the wildcard is not working (*)

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapvault-primary-get-relationship-status>
  </snapvault-primary-get-relationship-status>
</netapp>

- Not working as well since system-path is mandatoryI guess...

 

I do not understand why there are calls called "primary" and "secondary" of course I did try the secondary as well, but I get the same results.

 

Is there anyway to get all Snapvault relations on my 7 - Mode machine with a single API call? 


regards,

Megajin

 

1 REPLY 1

richard_payne
1,985 Views

Hello,

 

How about:

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapvault-secondary-relationship-status-list-iter-start/>
</netapp>

 

Or, if you're talking to the primary:

 

<?xml version="1.0" encoding="UTF-8"?>
<netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
  <snapvault-primary-relationship-status-list-iter-start/>
</netapp>

 

(I haven't checked if there's a difference as to what's returned from those two).

 

In either case you'll want to get the 'tag' that's returned to run 'snapvault-secondary-relationship-status-list-iter-next' to get the next batch of results (you may also be able to set the number of records to return to be greater than the number of your relationship...assuming you know how many you have).

 

--rdp

 

 

Public