Merge pull request #34 from ZertoPublic/ZertoAnalytics

Implements Zerto Analytics Functionality.
This commit is contained in:
Wes Carroll
2019-06-17 09:11:11 -04:00
committed by GitHub
124 changed files with 6342 additions and 55 deletions
+19 -43
View File
@@ -15,55 +15,31 @@ In no event shall Zerto, its authors or anyone else involved in the creation, pr
## Disclaimer
This code is still under development!! USE AT YOUR OWN RISK AND ONLY IF YOU KNOW WHAT YOU ARE DOING!!
This code is still under development! Please use carefully and if you encounter any issues or have an idea, please submit an [issue](https://github.com/ZertoPublic/ZertoApiWrapper/issues). Along the same lines, should you be proficient in PowerShell, please feel free to submit any [Pull Requests](https://github.com/ZertoPublic/ZertoApiWrapper/pulls) with enhancements and bug fixes.
## Installing the Module
This module can be installed directly from the [PowerShell Gallery](https://www.powershellgallery.com/packages/ZertoApiWrapper) with the following command.
`PS> Install-Module -name ZertoApiWrapper
## Getting Started
Place the folder and contents on your hard drive in a location known to you. From there run the following command to import the module into your session:
```PowerShell
PS C:\>Import-Module <path>\ZertoApiWrapper\ZertoApiWrapper\ZertoApiWrapper.psm1 -force
```
This will import the module into your current session and make the function available to you use and test.
### Connecting to a ZVM
Before any of the functions will work, you will need to connect to a Zerto Virtual Manager server. To do this you will use the `Connect-ZertoServer` function passing in a Server Name or IP address of the Zerto Virtual Manager. If you are using a non-standard port, you will need to provide that as well with the `-zertoPort` parameter. You will also need to supply credentials to authenticate against the Zerto Virtual Manager. If credentials are not provided, the user will be prompted for a username and password.
```PowerShell
PS C:\>$credential = Get-Credential
PS C:\>Connect-ZertoServer -zertoServer "192.168.222.20" -credential $credential
```
After successful execution, a few Module level variables are set that are not currently exposed. These variables keep track of the Zerto Server connection information such as Server Name and Port information along with the authentication headers. A "Last Action" variable is also set to keep track of when the last call was made to the API to determine if the authentication information has expired or not. Should this command be run again with a different server, the old information will be overwritten and all commands from that point will be executed against the new server information.
### Using the Module
A help system is currently under development. While each command has a help page, it may not be fully fleshed out yet. To see all possible functions you can use the following command after the module has been imported:
```PowerShell
PS C:\>Get-Command -module ZertoApiWrapper
```
Once you have found the command that you want to know about you can call `Get-Help <Command>` to take a look at the help page, or if you want to see syntax, `Get-Command <Command> -syntax`.
### Ending the Session
If you are using this as part of a larger script, I highly suggest explicitly ending your session with the `Disconnect-ZertoSession` command. This will delete the token authorization from the Zerto Virtual Manager as well as clear all Module scoped variables.
* [Getting Started with Zerto Virtual Manager and the ZertoApiWrapper](https://github.com/ZertoPublic/ZertoApiWrapper/wiki/Getting-Stated-with-Zerto-Virtual-Manager)
* [Getting Started with Zerto Analytics and the ZertoApiWrapper](https://github.com/ZertoPublic/ZertoApiWrapper/wiki/Getting-Started-with-Zerto-Analytics)
## Recent Updates
- May 31st, 2019: Implement logic to allow use of this module in both Windows PowerShell 5.1 and PowerShell Core.
- March 15th, 2019: Implement Export and Import Functionality. Please See [Export-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Export-ZertoVpg.md) and [Import-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Import-ZertoVpg.md) for assistance. No current pre-seed support.
- March 11th, 2019: Create basic VPG completed. Please see [New-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/New-ZertoVpg.md)
* June 16th, 2019: Added functionality for Zerto Analytics.
* May 31st, 2019: Implement logic to allow use of this module in both Windows PowerShell 5.1 and PowerShell Core.
* March 15th, 2019: Implement Export and Import Functionality. Please See [Export-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Export-ZertoVpg.md) and [Import-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Import-ZertoVpg.md) for assistance. No current pre-seed support.
* March 11th, 2019: Create basic VPG completed. Please see [New-ZertoVpg Help](https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/New-ZertoVpg.md)
## TODO
- Complete Help Markdown Files
- JFLR Functionality
- Create VPG (Per-VM modification and Backup Settings)
- Edit VPG
- Delete Zerto License
- Flesh out Pester Tests
- Complete Automated Build Process
* Complete Help Markdown Files
* JFLR Functionality
* Create VPG (Per-VM modification and Backup Settings)
* Edit VPG
* Delete Zerto License
* Flesh out Pester Tests
* Complete Automated Build Process
+9 -2
View File
@@ -1,4 +1,11 @@
* Initial Release
* Updated 'Invoke-ZertoRestRequest' to work in Powershell 5.1 as well as Powershell core
## Initial Release
### Zerto Virtual Manager
* Updated `Invoke-ZertoRestRequest` to work in Powershell 5.1 as well as Powershell core
### Zerto Analytics
* Implemented Zerto Analytics Functionality. Please see [Getting Started with Zerto Analytics](https://github.com/ZertoPublic/ZertoApiWrapper/wiki/Getting-Started-with-Zerto-Analytics)
@@ -0,0 +1,17 @@
$filePath = (Split-Path -Parent $MyInvocation.MyCommand.Path) -replace 'Tests', 'ZertoApiWrapper'
$fileName = (Split-Path -Leaf $MyInvocation.MyCommand.Path ) -replace '.Tests.', '.'
$file = Get-ChildItem "$filePath\$fileName"
. $file.FullName
Describe $file.BaseName -Tag Unit {
it "file should exist" {
$file.FullName | should exist
}
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file.FullName -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+19
View File
@@ -0,0 +1,19 @@
#Requires -Modules Pester
$moduleFileName = "ZertoApiWrapper.psd1"
$here = (Split-Path -Parent $MyInvocation.MyCommand.Path).Replace("Tests", "ZertoApiWrapper")
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path).Replace(".Tests.", ".")
$file = Get-ChildItem "$here\$sut"
$modulePath = $here -replace "Public", ""
$moduleFile = Get-ChildItem "$modulePath\$moduleFileName"
Get-Module -Name ZertoApiWrapper | Remove-Module -Force
Import-Module $moduleFile -Force
Describe $file.BaseName -Tag 'Unit' {
It "is valid Powershell (Has no script errors)" {
$contents = Get-Content -Path $file -ErrorAction Stop
$errors = $null
$null = [System.Management.Automation.PSParser]::Tokenize($contents, [ref]$errors)
$errors | Should -HaveCount 0
}
}
+7 -8
View File
@@ -1,12 +1,5 @@
#Requires -Modules 'InvokeBuild'
. '.\ZertoApiWrapper.settings.ps1'
# import-module "$BuildRoot\ZertoApiWrapper\ZertoApiWrapper.psd1" -Verbose -Force
<# [CmdletBinding()]
param([switch]$Install,
[string]$Configuration = (property Configuration Release))
$targetDir = "temp/$Configuration/ZertoApiWrapper" #>
$version = "{0}.{1}" -f $(Get-Content .\version.txt), $(get-date -format 'yyyyMMdd')
task . CreateArtifacts
@@ -54,7 +47,7 @@ task AnalyzeBuiltFiles CheckPSScriptAnalyzerInstalled, CreatePsm1ForRelease, {
Severity = @('Error', 'Warning')
Recurse = $true
Verbose = $false
ExcludeRule = @()
ExcludeRule = @("PSUseBOMForUnicodeEncodedFile", "PSUseSingularNouns")
}
$saresults = Invoke-ScriptAnalyzer @scriptAnalyzerParams
@@ -89,6 +82,12 @@ task UpdateMarkdownHelp CheckPlatyPSInstalled, {
Update-MarkDownHelp -Path docs -AlphabeticParamsOrder
}
task UpdateMarkdownHelpModule CheckPlatyPSInstalled, {
remove-module ZertoApiWrapper -force -ErrorAction SilentlyContinue
Import-Module .\ZertoApiWrapper\ZertoApiWrapper.psm1 -Force
Update-MarkDownHelpModule -Path docs -AlphabeticParamsOrder
}
task CreatePsd1ForRelease CleanTemp, {
$functionsToExport = Get-ChildItem -Path 'ZertoApiWrapper\Public\*.ps1' | ForEach-Object { $_.BaseName }
$releaseNotes = "# {0}{1}" -f $version, $(Get-Content .\RELEASENOTES.md -Raw)
@@ -0,0 +1,20 @@
function Invoke-ZARestRequest {
[cmdletbinding()]
param(
[string]$uri,
[string]$method = "GET",
[string]$body,
[string]$contentType = "application/json"
)
$submittedUri = "https://analytics.api.zerto.com/v2/{0}" -f $uri
if ($PSVersionTable.PSVersion.Major -ge 6) {
Invoke-RestMethod -Uri $submittedUri -Method $method -Body $body -Headers $Script:zaHeaders -ContentType $contentType -TimeoutSec 100
} else {
if ([String]::IsNullOrEmpty($body)) {
Invoke-RestMethod -Uri $submittedUri -Method $method -Headers $Script:zaHeaders -ContentType $contentType -TimeoutSec 100
} else {
Invoke-RestMethod -Uri $submittedUri -Method $method -Headers $Script:zaHeaders -ContentType $contentType -TimeoutSec 100 -Body $body
}
}
}
@@ -0,0 +1,20 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Connect-ZertoAnalytics {
[cmdletbinding()]
param(
[Parameter(
Mandatory = $true,
HelpMessage = "PSCredential Object containing username and password authorized for the Zerto Analytics site",
Position = 0
)]
[System.Management.Automation.PSCredential]$credential
)
$uri = "auth/token"
Set-Variable -Name zaHeaders -Scope Script -Value @{"Accept" = "application/json" }
Set-Variable -Name zaLastActionTime -Scope Script -Value $(Get-date).Ticks
$body = @{"username" = $credential.UserName; "password" = $credential.GetNetworkCredential().password }
$result = Invoke-ZARestRequest -Uri $uri -body $($body | ConvertTo-Json) -Method POST
$Script:zaHeaders["Authorization"] = "Bearer $($result.Token)"
$Script:zaHeaders
}
+39
View File
@@ -0,0 +1,39 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAAlert {
[cmdletbinding( DefaultParameterSetName = "zOrg")]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the alert list. If the ZORG identifier is omitted, a list of all the alerts is retrieved.",
ParameterSetName = "zOrg"
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The maximum number of alerts to return.",
ParameterSetName = "zOrg"
)]
[ValidateRange(1, 1000000)]
[int]$limitTo,
[Parameter(
HelpMessage = "The alert Idnetifier",
ParameterSetName = "alertId",
Mandatory = $true
)]
[ValidateNotNullOrEmpty()]
[string]$alertIdentifier
)
$uri = "monitoring/alerts"
switch ($PSCmdlet.ParameterSetName) {
zOrg {
if ( $PSBoundParameters.Keys.Count -gt 0 ) {
$filterString = Get-ZertoApiFilter -filterTable $PSBoundParameters
$uri = "{0}{1}" -f $uri, $filterString
}
}
alertId {
$uri = "{0}/{1}" -f $uri, $alertIdentifier
}
}
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,39 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZADatastore {
[CmdletBinding(DefaultParameterSetName = "AllInfo")]
param (
[Parameter(
HelpMessage = "The site identifier. The site identifier is mandatory. Omit the datastore and datastore cluster identifiers to view site level storage information.",
Mandatory = $true,
ParameterSetName = "AllInfo"
)]
[Parameter(
Mandatory = $true,
ParameterSetName = "cluster"
)]
[Parameter(
Mandatory = $true,
ParameterSetName = "datastore"
)]
[ValidateNotNullOrEmpty()]
[string]$siteIdentifier,
[Parameter(
HelpMessage = "The datastore cluster identifier. Gets a list of datastores in the cluster.",
ParameterSetName = "cluster",
Mandatory = "true"
)]
[ValidateNotNullOrEmpty()]
[string]$clusterIdentifier,
[Parameter(
HelpMessage = "The datastore identifer. Gets the datastore info.",
ParameterSetName = "datastore",
Mandatory = $true
)]
[ValidateNotNullOrEmpty()]
[string]$datastoreIdentifier
)
$filter = Get-ZertoApiFilter -filterTable $PSBoundParameters
$uri = "monitoring/datastores{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
+39
View File
@@ -0,0 +1,39 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAEvent {
[cmdletbinding()]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the user's events. If the ZORG identifier is omitted, events is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The event category (events/alertsHistory). Default displays the list of all."
)]
[ValidateSet("events", "alertsHistory")]
[string]$category,
[Parameter(
HelpMessage = "The maximum number of events to return."
)]
[ValidateRange(1, 1000000)]
[int]$limitTo,
[Parameter(
HelpMessage = "The earliest timestamp of an event to return, in RFC 3339 standard ('1970-01-01T00:00:00Z'). Default is one year ago."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The latest timestamp of an event to return, in RFC 3339 standard ('1970-01-01T00:00:00Z'). Default is the present time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$uri = "monitoring/events"
if ( $PSBoundParameters.Keys.Count -gt 0 ) {
$filterString = Get-ZertoApiFilter -filterTable $PSBoundParameters
$uri = "{0}{1}" -f $uri, $filterString
}
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalAverageHistory {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/journal-history-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalAverageSize {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/journal-size-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalBreach {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/journal-breach{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalHistoryStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/stats-journal-history{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSiteAverageHistory {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the recovery site. A site identification is required for at least one site.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/site-journal-history-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSiteAverageSize {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the recovery site. A site identification is required for at least one site.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/site-journal-size-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSiteHistoryStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the recovery site.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/site-journal-history-stats{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSiteHistorySummary {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the recovery site.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/site-journal-history-summary{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSiteSizeStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/site-journal-size-stats{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalStatusProportion {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/journal-statuses-proportions{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalStorageStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/stats-journal-storage{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAJournalSummary {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filtertable $PSBoundParameters
$uri = "reports/journal-summary{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
+7
View File
@@ -0,0 +1,7 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZALicense {
[cmdletbinding()]
param()
$uri = "licenses"
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,18 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAMonitoring {
[cmdletbinding()]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the user's statistics for a single account. If the ZORG identifier is omitted, statistics related to all sites, for a single account, is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier
)
$uri = "monitoring/"
if ( -not [String]::IsNullorEmpty($zOrgIdentifier) ){
$filterTable = @{"zOrgIdentifier" = $zOrgIdentifier}
$filterString = Get-ZertoApiFilter -filterTable $filterTable
$uri = "{0}{1}" -f $uri, $filterString
}
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,53 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkSiteAverageIOPS {
[CmdletBinding(DefaultParameterSetName = "ProtectedSite")]
param (
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "ProtectedSite",
Mandatory
)]
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "RecoverySite"
)]
[ValidateNotNullOrEmpty()]
[string]$protectedSiteIdentifier,
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "RecoverySite",
Mandatory
)]
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "ProtectedSite"
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the executive summary."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/sites-network-iops-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,52 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkSiteAveragePerformance {
[CmdletBinding(DefaultParameterSetName = "ProtectedSite")]
param (
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "ProtectedSite",
Mandatory
)]
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "RecoverySite"
)]
[ValidateNotNullOrEmpty()]
[string]$protectedSiteIdentifier,
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "RecoverySite",
Mandatory
)]
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "ProtectedSite"
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the executive summary."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per hour, for up to 15 days time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/sites-network-performance-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,47 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkSiteStat {
[CmdletBinding(DefaultParameterSetName = "ProtectedSite")]
param (
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "ProtectedSite",
Mandatory
)]
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "RecoverySite"
)]
[ValidateNotNullOrEmpty()]
[string]$protectedSiteIdentifier,
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "RecoverySite",
Mandatory
)]
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "ProtectedSite"
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the executive summary."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/sites-network-stats{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,47 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkSiteSummary {
[CmdletBinding(DefaultParameterSetName = "ProtectedSite")]
param (
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "ProtectedSite",
Mandatory
)]
[Parameter(
HelpMessage = "Protected site identifier. A site identification is required for at least one of the sites.",
ParameterSetName = "RecoverySite"
)]
[ValidateNotNullOrEmpty()]
[string]$protectedSiteIdentifier,
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "RecoverySite",
Mandatory
)]
[Parameter(
HelpMessage = "Recovery site identifier. If the recovery site identifier is omitted, the API will show all outgoing traffic from the protected site to its replicating sites.",
ParameterSetName = "ProtectedSite"
)]
[ValidateNotNullOrEmpty()]
[string]$recoverySiteIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is ommitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the executive summary."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/sites-network-summary{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkVpgAverageIOPS {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The VPG identifier.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per minute - for up to 6 hours, per hour - for 6 hours to 15 days, or per day - for 15 days up to 30 days. If an interval is not specified, the default is 60 seconds. Submit value in Seconds."
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/vpg-network-iops-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkVpgAveragePerformance {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The VPG identifier.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be per minute - for up to 6 hours, per hour - for 6 hours to 15 days, or per day - for 15 days up to 30 days. If an interval is not specified, the default is 60 seconds. Submit value in Seconds."
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/vpg-network-performance-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkVpgStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The VPG identifier.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/vpg-network-stats{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZANetworkVpgSummary {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The VPG identifier.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default end date is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoAPIFilter -filtertable $PSBoundParameters
$uri = "reports/vpg-network-summary{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,25 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOAccountAverage {
[CmdletBinding()]
param (
[Parameter(
Helpmessage = "The ZORG identifier by which to filter the user's average RPO for a single account. If the ZORG identifier is omitted, statistics related to all sites, for a single account, is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/account-rpo-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,31 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOAverage {
[CmdletBinding()]
param (
[Parameter(
Helpmessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate,
[Parameter(
HelpMessage = "The interval selected within the duration of the report. The interval can be 1-minute data granularity for up to 6 hours time frame, 1-hour data granularity for 6 hours to 15 days time frame or 1-day data granularity for 15 days up to 30 days time frame. Value should be submitted in Seconds"
)]
[ValidateRange(60, 2678400)]
[Int32]$interval
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/rpo-average{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOBreach {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/rpo-breach{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
+26
View File
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOStat {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/stats-rpo{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOStatusProportion {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/rpo-statuses-proportions{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,26 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZARPOSummary {
[CmdletBinding()]
param (
[Parameter(
HelpMessage = "The identifier of the VPG.",
Mandatory
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier,
[Parameter(
HelpMessage = "The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). If only the end date is added, the start date by default will be the end date minus 7 days."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z'). The default is the current time."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "reports/rpo-summary{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
+18
View File
@@ -0,0 +1,18 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZASite {
[cmdletbinding()]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter site list. If the ZORG identifier is omitted, a list of all sites is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier
)
$uri = "monitoring/sites"
if ( -not [String]::IsNullorEmpty($zOrgIdentifier) ) {
$filterTable = @{"zOrgIdentifier" = $zOrgIdentifier }
$filterString = Get-ZertoApiFilter -filterTable $filterTable
$uri = "{0}{1}" -f $uri, $filterString
}
Invoke-ZARestRequest -uri $uri
}
+24
View File
@@ -0,0 +1,24 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZASitePair {
[cmdletbinding()]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the site list. If the ZORG identifier is omitted, a list of all sites is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "Start date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the start date is omitted, the default start date is 7 days before the end date."
)]
[ValidateNotNullOrEmpty()]
[string]$startDate,
[Parameter(
HelpMessage = "End date in RFC 3339 standard ('1970-01-01T00:00:00Z'). If the end date is omitted, the default endDate is the current date."
)]
[ValidateNotNullOrEmpty()]
[string]$endDate
)
$filter = Get-ZertoApiFilter -filterTable $PSBoundParameters
$uri = "reports/sites-list{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
@@ -0,0 +1,20 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZASiteTopology {
[cmdletbinding()]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter sites topology list. If the ZORG identifier is omitted, information related to all sites topology is retrieved."
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier
)
$uri = "monitoring/sites"
if ( -not [String]::IsNullorEmpty($zOrgIdentifier) ) {
$filterTable = @{"zOrgIdentifier" = $zOrgIdentifier }
$filterString = Get-ZertoApiFilter -filterTable $filterTable
$uri = "{0}{1}&format=topology" -f $uri, $filterString
} else {
$uri = "{0}?format=topology" -f $uri
}
Invoke-ZARestRequest -uri $uri
}
+39
View File
@@ -0,0 +1,39 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZATask {
[cmdletbinding( DefaultParameterSetName = "zOrg")]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the task list. If the ZORG identifier is omitted, a list of all the tasks is retrieved.",
ParameterSetName = "zOrg"
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The maximum number of tasks to return.",
ParameterSetName = "zOrg"
)]
[ValidateRange(1, 1000000)]
[int]$limitTo,
[Parameter(
HelpMessage = "The task Idnetifier",
ParameterSetName = "taskId",
Mandatory = $true
)]
[ValidateNotNullOrEmpty()]
[string]$taskIdentifier
)
$uri = "monitoring/tasks"
switch ($PSCmdlet.ParameterSetName) {
zOrg {
if ( $PSBoundParameters.Keys.Count -gt 0 ) {
$filterString = Get-ZertoApiFilter -filterTable $PSBoundParameters
$uri = "{0}{1}" -f $uri, $filterString
}
}
taskId {
$uri = "{0}/{1}" -f $uri, $taskIdentifier
}
}
Invoke-ZARestRequest -uri $uri
}
+44
View File
@@ -0,0 +1,44 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAVolume {
[CmdletBinding(DefaultParameterSetName = "VpgIdentifier")]
param (
[Parameter(
HelpMessage = "The site identifier. The site identifier is mandatory if vpgIdentifier is not entered.",
Mandatory,
ParameterSetName = "SiteAndClusterIdentifier"
)]
[Parameter(
HelpMessage = "The site identifier. The site identifier is mandatory if vpgIdentifier is not entered.",
Mandatory,
ParameterSetName = "SiteAndDatastoreIdentifier"
)]
[ValidateNotNullOrEmpty()]
[string]$siteIdentifier,
[Parameter(
HelpMessage = "The cluster identifier. If a cluster identifier is not entered, you must enter a datastore identifier.",
Mandatory,
ParameterSetName = "SiteAndClusterIdentifier"
)]
[ValidateNotNullOrEmpty()]
[string]$clusterIdentifier,
[Parameter(
HelpMessage = "The datastore identifer. If a datastore identifier is not entered, you must enter a cluster identifier.",
Mandatory,
ParameterSetName = "SiteAndDatastoreIdentifier"
)]
[ValidateNotNullOrEmpty()]
[string]$datastoreIdentifier,
[Parameter(
HelpMessage = "The vpg identifer.",
Mandatory,
ParameterSetName = "VpgIdentifier"
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier
)
$filter = Get-ZertoApiFilter -FilterTable $PSBoundParameters
$uri = "monitoring/volumes{0}" -f $filter
Invoke-ZARestRequest -uri $uri
}
+36
View File
@@ -0,0 +1,36 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAVpg {
[cmdletbinding(DefaultParameterSetName = 'zOrg')]
param(
[Parameter(
HelpMessage = "The ZORG identifier by which to filter the VPG list. If the ZORG identifier is omitted, a list of all VPGs is retrieved.",
ParameterSetName = 'zOrg'
)]
[ValidateNotNullOrEmpty()]
[string]$zOrgIdentifier,
[Parameter(
HelpMessage = "The VPG Identifier",
ParameterSetName = "vpg",
Mandatory = $true
)]
[ValidateNotNullOrEmpty()]
[string]$vpgIdentifier
)
$uri = "monitoring/vpgs"
switch ($PSCmdlet.ParameterSetName) {
zOrg {
if ( -not [String]::IsNullorEmpty($zOrgIdentifier) ) {
$filterTable = @{"zOrgIdentifier" = $zOrgIdentifier }
$filterString = Get-ZertoApiFilter -filterTable $filterTable
$uri = "{0}{1}" -f $uri, $filterString
}
}
vpg {
$uri = "{0}/$vpgIdentifier"
}
}
Invoke-ZARestRequest -uri $uri
}
+7
View File
@@ -0,0 +1,7 @@
<# .ExternalHelp ./en-us/ZertoApiWrapper-help.xml #>
function Get-ZAzOrg {
[cmdletbinding()]
param()
$uri = "monitoring/zorgs"
Invoke-ZARestRequest -uri $uri
}
+61
View File
@@ -0,0 +1,61 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Connect-ZertoAnalytics.md
schema: 2.0.0
---
# Connect-ZertoAnalytics
## SYNOPSIS
All requests to the server, apart from the request to authenticate, must contain a security token which is provided on successful authentication.
In order to authenticate, the user sends myZerto credentials (user/password).
## SYNTAX
```
Connect-ZertoAnalytics [-credential] <PSCredential> [<CommonParameters>]
```
## DESCRIPTION
All requests to the server, apart from the request to authenticate, must contain a security token which is provided on successful authentication.
In order to authenticate, the user sends myZerto credentials (user/password). Once this call has been completed successfully, the header authentication token will be stored as a variable and automatically passed during future calls to the Zerto Analytics platform. This token will automatically expire after 60 minutes of inactivity and need to be reauthorized by calling this function again.
## EXAMPLES
### Example 1
```powershell
PS C:\> Connect-ZertoAnalytics -credential $myCredential
```
Connects to the Zerto Analytics site and gets a Bearer Authorization token that is automatically stored as a variable for future calls to the Zerto Analytics REST API. This token will automatically expire after 60 minutes of inactivity and need to be reauthorized by calling this function again.
## PARAMETERS
### -credential
PSCredential Object containing username and password authorized for the Zerto Analytics site
```yaml
Type: PSCredential
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Authentication](https://docs.api.zerto.com/#/Authentication/post_v2_auth_token)
+125
View File
@@ -0,0 +1,125 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAAlert.md
schema: 2.0.0
---
# Get-ZAAlert
## SYNOPSIS
Retrieve information about all existing alerts.
## SYNTAX
### zOrg (Default)
```
Get-ZAAlert [-zOrgIdentifier <String>] [-limitTo <Int32>] [<CommonParameters>]
```
### alertId
```
Get-ZAAlert -alertIdentifier <String> [<CommonParameters>]
```
## DESCRIPTION
Retrieve information about all existing alerts.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAAlert
```
Returns all alerts.
### Example 2
```powershell
PS C:\> Get-ZAAlert -limitTo 10
```
Returns 10 alerts.
### Example 3
```powershell
PS C:\> Get-ZAAlert -zOrgIdentifier "1234-5678-9012"
```
Returns all alerts for the zOrg with Identifier "1234-5678-9012".
### Example 4
```powershell
PS C:\> Get-ZAAlert -zOrgIdentifier "1234-5678-9012" -limitTo 10
```
Returns 10 alerts for the zOrg with Identifier "1234-5678-9012".
### Example 3
```powershell
PS C:\> Get-ZAAlert -alertId "1234-5678-9012"
```
Returns one alert with identifier "1234-5678-9012".
## PARAMETERS
### -alertIdentifier
The VPG Idnetifier
```yaml
Type: String
Parameter Sets: alertId
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -limitTo
The maximum number of alerts to return.
```yaml
Type: Int32
Parameter Sets: zOrg
Aliases:
Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -zOrgIdentifier
The ZORG identifier by which to filter the alert list.
If the ZORG identifier is omitted, a list of all the alerts is retrieved.
```yaml
Type: String
Parameter Sets: zOrg
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Alerts](https://docs.api.zerto.com/#/Monitoring/get_v2_monitoring_alerts)
[Zerto Analytics REST API Endpoint for Alerts by Identifier](https://docs.api.zerto.com/#/Monitoring/get_v2_monitoring_alerts__alertIdentifier_)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZATask.md
schema: 2.0.0
---
# Get-ZADatastore
## SYNOPSIS
Get a list of datastore/s, filtered by site. Enter a site identifier only to get the list of all datastores. Enter a site identifier and cluster identifier to get a list of datastores in the cluster. Enter a site identifier and datastore identifier to get specific datastore info.
## SYNTAX
### AllInfo (Default)
```
Get-ZADatastore -siteIdentifier <String> [<CommonParameters>]
```
### datastore
```
Get-ZADatastore -siteIdentifier <String> -datastoreIdentifier <String> [<CommonParameters>]
```
### cluster
```
Get-ZADatastore -siteIdentifier <String> -clusterIdentifier <String> [<CommonParameters>]
```
## DESCRIPTION
Get a list of datastore/s, filtered by site. Enter a site identifier only to get the list of all datastores. Enter a site identifier and cluster identifier to get a list of datastores in the cluster. Enter a site identifier and datastore identifier to get specific datastore info.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZADatastore -siteIdentifier "7890-1234-5678"
```
Returns all datastore clusters and datastores associated with site identifier "7890-1234-5678"
### Example 2
```powershell
PS C:\> Get-ZADatastore -siteIdentifier "7890-1234-5678" -clusterIdentifier "3456-7890-1234"
```
Returns datastore cluster information with identifier "3456-7890-1234" associated with site identifier "7890-1234-5678"
### Example 3
```powershell
PS C:\> Get-ZADatastore -siteIdentifier "7890-1234-5678" -datastoreIdentifier "5678-9012-3456"
```
Returns all datastore information with identifier "5678-9012-3456" associated with site identifier "7890-1234-5678"
## PARAMETERS
### -clusterIdentifier
The datastore cluster identifier.
Gets a list of datastores in the cluster.
```yaml
Type: String
Parameter Sets: cluster
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -datastoreIdentifier
The datastore identifer.
Gets the datastore info.
```yaml
Type: String
Parameter Sets: datastore
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -siteIdentifier
The site identifier.
The site identifier is mandatory.
Omit the datastore and datastore cluster identifiers to view site level storage information.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
### None
## OUTPUTS
### System.Object
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Datastores](https://docs.api.zerto.com/#/Monitoring/get_v2_monitoring_datastores)
+140
View File
@@ -0,0 +1,140 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAEvent.md
schema: 2.0.0
---
# Get-ZAEvent
## SYNOPSIS
Retrieve details of all existing events.
## SYNTAX
```
Get-ZAEvent [[-zOrgIdentifier] <String>] [[-category] <String>] [[-limitTo] <Int32>] [[-startDate] <String>]
[[-endDate] <String>] [<CommonParameters>]
```
## DESCRIPTION
Retrieve details of all existing events.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAEvent
```
Retrieve details of all existing events.
### Example 2
```powershell
PS C:\> Get-ZAEvent -zOrgIdentifier "1234-5678-9012"
```
Retrieve details of all existing events for zOrg with Identifier "1234-5678-9012"
### Example 3
```powershell
PS C:\> Get-ZAEvent -category events -startDate "2019-03-01" -endDate "2019-04-01" -limitTo 400
```
Retrieve details of all events between March 1st and April 1st and limit results to 400.
## PARAMETERS
### -category
The event category (events/alertsHistory).
Default displays the list of all.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -endDate
The latest timestamp of an event to return, in RFC 3339 standard ('1970-01-01T00:00:00Z').
Default is the present time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -limitTo
The maximum number of events to return.
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The earliest timestamp of an event to return, in RFC 3339 standard ('1970-01-01T00:00:00Z').
Default is one year ago.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -zOrgIdentifier
The ZORG identifier by which to filter the user's events.
If the ZORG identifier is omitted, events is retrieved.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Events](https://docs.api.zerto.com/#/Monitoring/get_v2_monitoring_events)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalAverageHistory.md
schema: 2.0.0
---
# Get-ZAJournalAverageHistory
## SYNOPSIS
Retrieves the list of historical average journal history values for a specific VPG, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## SYNTAX
```
Get-ZAJournalAverageHistory [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Retrieves the list of historical average journal history values for a specific VPG, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalAverageHistory -vpgIdentifier "9876-5432-1098"
```
Returns Journal Average History information for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalAverageHistory -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Average History for VPG with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalAverageHistory -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Average History for VPG with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Average History](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_journal_history_average)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalAverageSize.md
schema: 2.0.0
---
# Get-ZAJournalAverageSize
## SYNOPSIS
Retrieves the list of historical average journal storage values for a specific VPG, filtered by start date, end date, and optional interval. The interval defines the journal storage samples interval.
## SYNTAX
```
Get-ZAJournalAverageSize [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Retrieves the list of historical average journal storage values for a specific VPG, filtered by start date, end date, and optional interval. The interval defines the journal storage samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalAverageSize -vpgIdentifier "9876-5432-1098"
```
Returns Journal Average Size information for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalAverageSize -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Average Size for VPG with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalAverageSize -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Average Size for VPG with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Average Size](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_journal_size_average)
+101
View File
@@ -0,0 +1,101 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalBreach.md
schema: 2.0.0
---
# Get-ZAJournalBreach
## SYNOPSIS
Retrieves the journal history breaches over the selected timeframe.
## SYNTAX
```
Get-ZAJournalBreach [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[<CommonParameters>]
```
## DESCRIPTION
Retrieves the journal history breaches over the selected timeframe.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalBreach -vpgIdentifier "9876-5432-1098"
```
Returns Journal Breach information for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalBreach -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Breach information for VPG with identifier "9876-5432-1098" between the dates specified.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Breach](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_journal_breach)
+101
View File
@@ -0,0 +1,101 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalHistoryStat.md
schema: 2.0.0
---
# Get-ZAJournalHistoryStat
## SYNOPSIS
Retrieves Journal history min, max and avg Statistics over the selected timeframe.
## SYNTAX
```
Get-ZAJournalHistoryStat [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[<CommonParameters>]
```
## DESCRIPTION
Retrieves Journal history min, max and avg Statistics over the selected timeframe.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalHistoryStat -vpgIdentifier "9876-5432-1098"
```
Returns Journal History Stats for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalHistoryStat -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal History Stats for VPG with identifier "9876-5432-1098" between the dates specified.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal History Stats](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_stats_journal_history)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSiteAverageHistory.md
schema: 2.0.0
---
# Get-ZAJournalSiteAverageHistory
## SYNOPSIS
Get list of samples of average Journal History values for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the Journal History samples interval.
## SYNTAX
```
Get-ZAJournalSiteAverageHistory [-recoverySiteIdentifier] <String> [[-startDate] <String>]
[[-endDate] <String>] [[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Get list of samples of average Journal History values for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the Journal History samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSiteAverageHistory -recoverySiteIdentifier "9876-5432-1098"
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSiteAverageHistory -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalSiteAverageHistory -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -recoverySiteIdentifier
The identifier of the recovery site.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Average Site History](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_site_journal_history_average)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSiteAverageSize.md
schema: 2.0.0
---
# Get-ZAJournalSiteAverageSize
## SYNOPSIS
Get list of samples of total Journal Size of all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the Journal Size samples interval.
## SYNTAX
```
Get-ZAJournalSiteAverageSize [-recoverySiteIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Get list of samples of total Journal Size of all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the Journal Size samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSiteAverageSize -recoverySiteIdentifier "9876-5432-1098"
```
Returns Journal Average Size information for the recovery site with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSiteAverageSize -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Average Size information for the recovery site with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalSiteAverageSize -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Average Size information for the recovery site with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -recoverySiteIdentifier
The identifier of the recovery Site.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Average Site Size](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_site_journal_size_average)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSiteHistoryStat.md
schema: 2.0.0
---
# Get-ZAJournalSiteHistoryStat
## SYNOPSIS
Get Max, Avg. and Min Journal History statistics for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## SYNTAX
```
Get-ZAJournalSiteHistoryStat [-recoverySiteIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Get Max, Avg. and Min Journal History statistics for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSiteHistoryStat -recoverySiteIdentifier "9876-5432-1098"
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSiteHistoryStat -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalSiteHistoryStat -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Average History information for the recovery site with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -recoverySiteIdentifier
The identifier of the recovery site.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Site History Stats](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_site_journal_history_stats)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSiteHistorySummary.md
schema: 2.0.0
---
# Get-ZAJournalSiteHistorySummary
## SYNOPSIS
Get a Journal History executive summary for all VPGs replicating to a specified recovery site.
## SYNTAX
```
Get-ZAJournalSiteHistorySummary [-recoverySiteIdentifier] <String> [[-startDate] <String>]
[[-endDate] <String>] [[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Get a Journal History executive summary for all VPGs replicating to a specified recovery site.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSiteHistorySummary -recoverySiteIdentifier "9876-5432-1098"
```
Returns Journal History Executive Summary information for the recovery site with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSiteHistorySummary -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal History Executive Summary information for the recovery site with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalSiteHistorySummary -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal History Executive Summary information for the recovery site with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -recoverySiteIdentifier
The identifier of the recovery site.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Site History Summary](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_site_journal_history_summary)
+123
View File
@@ -0,0 +1,123 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSiteSizeStat.md
schema: 2.0.0
---
# Get-ZAJournalSiteSizeStat
## SYNOPSIS
Get Max, Avg. and Min of total Journal Size statistics for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## SYNTAX
```
Get-ZAJournalSiteSizeStat [-recoverySiteIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[[-interval] <Int32>] [<CommonParameters>]
```
## DESCRIPTION
Get Max, Avg. and Min of total Journal Size statistics for all VPGs replicating to a specified recovery site, filtered by start date, end date, and optional interval. The interval defines the journal history samples interval.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSiteSizeStat -recoverySiteIdentifier "9876-5432-1098"
```
Returns Journal Size Statistics information for the recovery site with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSiteSizeStat -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Size Statistics information for the recovery site with identifier "9876-5432-1098" between the dates specified.
### Example 3
```powershell
PS C:\> Get-ZAJournalSiteSizeStat -recoverySiteIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08" -interval 7200
```
Returns Journal Size Statistics information for the recovery site with identifier "9876-5432-1098" between the dates specified with a 2 hour interval.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -interval
The interval selected within the duration of the report. The interval can be per hour, for up to 15 days' time frame or per day, for between 15 to 30 days' time frame. Submit value in Seconds
```yaml
Type: Int32
Parameter Sets: (All)
Aliases:
Required: False
Position: 4
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False
```
### -recoverySiteIdentifier
The identifier of the recovery site.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Site size Stats](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_site_journal_size_stats)
+101
View File
@@ -0,0 +1,101 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalStatusProportion.md
schema: 2.0.0
---
# Get-ZAJournalStatusProportion
## SYNOPSIS
Retrieves journal history SLA status distribution over selected timeframe.
## SYNTAX
```
Get-ZAJournalStatusProportion [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[<CommonParameters>]
```
## DESCRIPTION
Retrieves journal history SLA status distribution over selected timeframe.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalStatusProportion -vpgIdentifier "9876-5432-1098"
```
Returns Journal history SLA status distribution for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalStatusProportion -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journalhistory SLA status distribution for VPG with identifier "9876-5432-1098" between the dates specified.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Statuses Proportions](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_journal_statuses_proportions)
+101
View File
@@ -0,0 +1,101 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalStorageStat.md
schema: 2.0.0
---
# Get-ZAJournalStorageStat
## SYNOPSIS
Retrieves Journal Storage minimum, maximum and average. Statistics over the selected timeframe.
## SYNTAX
```
Get-ZAJournalStorageStat [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[<CommonParameters>]
```
## DESCRIPTION
Retrieves Journal Storage minimum, maximum and average. Statistics over the selected timeframe.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalStorageStat -vpgIdentifier "9876-5432-1098"
```
Returns Journal Storage Stats for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalStorageStat -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Storage Stats for VPG with identifier "9876-5432-1098" between the dates specified.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Storage Stats](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_stats_journal_storage)
+101
View File
@@ -0,0 +1,101 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZAJournalSummary.md
schema: 2.0.0
---
# Get-ZAJournalSummary
## SYNOPSIS
Retrieves journal historical statistics for a given VPG.
## SYNTAX
```
Get-ZAJournalSummary [-vpgIdentifier] <String> [[-startDate] <String>] [[-endDate] <String>]
[<CommonParameters>]
```
## DESCRIPTION
Retrieves journal historical statistics for a given VPG.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZAJournalSummary -vpgIdentifier "9876-5432-1098"
```
Returns Journal Summary information for VPG with identifier "9876-5432-1098"
### Example 2
```powershell
PS C:\> Get-ZAJournalSummary -vpgIdentifier "9876-5432-1098" -startDate "2019-06-01" -endDate "2019-06-08"
```
Returns Journal Summary information for VPG with identifier "9876-5432-1098" between the dates specified.
## PARAMETERS
### -endDate
The end date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
The default is the current time.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -startDate
The starting date of the report, in RFC 3339 standard ('1970-01-01T00:00:00Z').
If only the end date is added, the start date by default will be the end date minus 7 days.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### -vpgIdentifier
The identifier of the VPG.
```yaml
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API Endpoint for Journal Summary](https://docs.api.zerto.com/#/Journal_Reports/get_v2_reports_journal_summary)
+45
View File
@@ -0,0 +1,45 @@
---
external help file: ZertoApiWrapper-help.xml
Module Name: ZertoApiWrapper
online version: https://github.com/ZertoPublic/ZertoApiWrapper/blob/master/docs/Get-ZALicense.md
schema: 2.0.0
---
# Get-ZALicense
## SYNOPSIS
Retrieve a list of all licenses.
## SYNTAX
```
Get-ZALicense [<CommonParameters>]
```
## DESCRIPTION
Retrieve a list of all licenses.
## EXAMPLES
### Example 1
```powershell
PS C:\> Get-ZALicense
```
Returns all licenses and associated information
## PARAMETERS
### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
## INPUTS
## OUTPUTS
## NOTES
## RELATED LINKS
[Zerto Analytics REST API License End Point Documentation](https://docs.api.zerto.com/#/Licenses/get_v2_licenses)

Some files were not shown because too many files have changed in this diff Show More