rubrik-sdk-for-powershell
rubrik-sdk-for-powershell copied to clipboard
Export-RubrikDatabase for sqlserver generates malformed request ?
Current Behavior
$restore = Export-RubrikDatabase -Id $RubrikSourceDb.ID `
-TargetInstanceId $RubrikTargetInstanceId `
-TargetDatabaseName $ReqDbRestore.TargetDb `
-TargetFilePaths $TargetDbInfo `
-RecoveryDateTime $($ReqDbRestore.PointInTime) `
-Overwrite `
-FinishRecovery
<#
Name Value
---- -----
TargetInstanceId MssqlInstance:::770194d3-d2d8-4194-a2d7-f2fd0956781c
TargetFilePaths {@{LogicalName=mytestdb; FilePath=X:\MSSQL16.GNKD006\MSSQL\UserData\mytestdb.mdf}, @{LogicalName=mytestdb_log; FilePath=X:\MSSQL16.GNKD006\MSSQL\UserData\mytestdblog.ldf}
TargetDatabaseName mytestdb
RecoveryDateTime 2024-11-22 14:12:51
Id MssqlDatabase:::e704bf28-62fe-455b-80c3-94582885e028
FinishRecovery True
#>
This is supposed to restore mytestdb from one server to another.
Error message:
Invoke-WebRequest: C:\Program Files\WindowsPowerShell\Modules\Rubrik\9.0.0\Private\Invoke-RubrikWebRequest.ps1:28:23
Line |
28 | … $result = Invoke-WebRequest -UseBasicParsing -SkipCertificateCheck …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Request malformed
--------------------------------------------------------------------------------------------
Verbose logging:
VERBOSE: Found a Rubrik token for authentication
VERBOSE: Gather API Data for Export-RubrikDatabase
VERBOSE: Selected 1.0 API Data for Export-RubrikDatabase
VERBOSE: Load API data for Export-RubrikDatabase
VERBOSE: Description: Export MSSQL Database from Rubrik to Destination Instance.
VERBOSE: Build the URI
VERBOSE: URI = https://Rubrik2022/api/v1/mssql/db/MssqlDatabase:::e704bf28-62fe-455b-80c3-94582885e028/export
VERBOSE: Build the query parameters for <null>
VERBOSE: URI = https://Rubrik2022/api/v1/mssql/db/MssqlDatabase:::e704bf28-62fe-455b-80c3-94582885e028/export
VERBOSE: Build the body
VERBOSE: Adding Advanced Mode File Paths
VERBOSE: Body = {
"targetFilePaths": [
{
"LogicalName": "MyTestDb",
"FilePath": "X:\\MSSQL16.GNKD006\\MSSQL\\UserData\\MyTestDb.mdf"
},
{
"LogicalName": "MyTestDb_log",
"FilePath": "X:\\MSSQL16.GNKD006\\MSSQL\\UserLog\\MyTestDb_log.LDF"
}
],
"targetDatabaseName": "MyTestDb",
"allowOverwrite": true,
"recoveryPoint": {
"timestampMs": 1732282672000
},
"targetInstanceId": "MssqlInstance:::770194d3-d2d8-4194-a2d7-f2fd0956781c",
"finishRecovery": true
}
VERBOSE: Submitting the request
VERBOSE: Submitting "Post" request as "text/plain
VERBOSE: Invoking request with a custom timeout of 100 seconds
VERBOSE: Requested HTTP/1.1 POST with 533-byte payload
VERBOSE: Received HTTP/1.1 response of content type text/plain of unknown size
>> TerminatingError(Invoke-WebRequest): "Request malformed"
>> TerminatingError(Invoke-WebRequest): "Request malformed"
>> TerminatingError(Invoke-WebRequest): "Request malformed"
>> TerminatingError(Invoke-WebRequest): "Request malformed"
>> TerminatingError(Invoke-WebRequest): "Request malformed"
>> TerminatingError(Invoke-WebRequest): "Request malformed"
Request malformed
Invoke-WebRequest: C:\Program Files\WindowsPowerShell\Modules\Rubrik\9.0.0\Private\Invoke-RubrikWebRequest.ps1:28:23
Line |
28 | … $result = Invoke-WebRequest -UseBasicParsing -SkipCertificateCheck …
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Request malformed
Expected Behavior
Goal is to restore a sqlserver database from a source instance to a target instance and overwrite an existing database. Apparently this body json does not contain any source db information. Any idea what this body should look like to be working ?
Steps to Reproduce
No response
Context
PSVersion : 7.4.4
PSEdition : Core
GitCommitId : 7.4.4
OS : Microsoft Windows 10.0.20348
Platform : Win32NT
PSCompatibleVersions : {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion : 2.3
SerializationVersion : 1.1.0.1
WSManStackVersion : 3.0
HostConsoleName : Visual Studio Code Host
HostConsoleVersion : 2024.4.0
HostCulture : nl-BE
HostCultureUI : en-US
RubrikConnection : True
UserAgentString : RubrikPowerShellSDK-9.0.0--7.4.4--platform--Win32NT--platform_version--Microsoft Windows 10.0.20348
RubrikAuthentication : Bearer
RubrikClusterVersion : 8.1.1-p1-24326
RubrikCurrentModuleVersion : 9.0.0
RubrikInstalledModule : 9.0.0, 6.0.1, 6.0.0
RubrikModuleOptions : ApplyCustomViewDefinitions = True; CredentialPath = ; DefaultWebRequestTimeOut = 100
RubrikModuleDefaultParameters :
Failure Logs
Request malformed
Invoke-WebRequest: C:\Program Files\WindowsPowerShell\Modules\Rubrik\9.0.0\Private\Invoke-RubrikWebRequest.ps1:28:23 Line | 28 | … $result = Invoke-WebRequest -UseBasicParsing -SkipCertificateCheck … | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | Request malformed