SQL
Retrieving Azure SQL Databases
query {
azureSqlDatabases( azureSqlDatabaseFilters: {
#nameSubstringFilter: {nameSubstring: "example"}
#tagFilter: {tagFilterParams: {tagKey: "foo", tagValue: "bar", filterType: TAG_KEY_VALUE}}
#resourceGroupFilter: {resourceGroupNames: ["example"]}
#subscriptionFilter: {subscriptionIds: ["7d0d81dc-3323-4f45-bd0b-cc37e5bf9f37"]}
#regionFilter: {regions: [EAST_US, EAST_US2]}
#relicFilter: {relic: false}
}) {
nodes {
name
id
region
elasticPoolName
backupStorageRedundancy
serviceTier
maximumSizeInBytes
persistentStorage {
name
id
}
serviceObjectiveName
azureSqlDatabaseServer {
name
id
}
tags {
key
value
}
effectiveSlaDomain {
name
id
}
}
}
}
$query = New-RscQuery -GqlQuery azureSqlDatabases
# $query.Var.azureSqlDatabaseFilters = Get-RscType -Name AzureSqlDatabaseFilters -InitialProperties `
# nameSubstringFilter,`
# tagFilter.tagFilterParams,`
# resourceGroupFilter,`
# subscriptionFilter,`
# regionFilter,`
# relicFilter
# $query.Var.azureSqlDatabaseFilters.nameSubstringFilter.nameSubstring = "example"
# $query.Var.azureSqlDatabaseFilters.tagFilter.tagFilterParams.key = "foo"
# $query.Var.azureSqlDatabaseFilters.tagFilter.tagFilterParams.value = "bar"
# $query.Var.azureSqlDatabaseFilters.tagFilter.tagFilterParams.filterType = [RubrikSecurityCloud.Types.TagFilterType]::TAG_KEY_VALUE
# $query.Var.azureSqlDatabaseFilters.resourceGroupFilter.resourceGroupNames = @("example")
# $query.Var.azureSqlDatabaseFilters.subscriptionFilter.subscriptionIds = @("7d0d81dc-3323-4f45-bd0b-cc37e5bf9f37")
# $query.Var.azureSqlDatabaseFilters.regionFilter.regions = @([RubrikSecurityCloud.Types.AzureRegion]::US_CENTRAL,[RubrikSecurityCloud.Types.AzureRegion]::US_EAST)
# $query.Var.azureSqlDatabaseFilters.relicFilter.relic = $false
$query.Field.nodes = @(Get-RscType -Name AzureSqlDatabaseDb -InitialProperties `
name, `
id, `
region,`
elasticPoolName,`
backupStorageRedundancy,`
serviceTier,`
maximumSizeInBytes,`
persistentStorage.name, persistentStorage.id,`
serviceObjectiveName,`
azureSqlDatabaseServer.name, azureSqlDatabaseServer.id,`
tags.key, tags.value,`
effectiveSlaDomain.name, effectiveSlaDomain.id
)
$query.Invoke().nodes
#!/bin/bash
# RSC_TOKEN="YOUR_RSC_ACCESS_TOKEN"
query="query { azureSqlDatabases( azureSqlDatabaseFilters: { }) { nodes { name id region elasticPoolName backupStorageRedundancy serviceTier maximumSizeInBytes persistentStorage { name id } serviceObjectiveName azureSqlDatabaseServer { name id } tags { key value } effectiveSlaDomain { name id } } } }"
# Execute the GraphQL query with curl
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $RSC_TOKEN" \
-d "{\"query\": \"$query\"}" \
https://example.my.rubrik.com/api/graphql
Retrieving Azure SQL Database Servers
# https://docs.microsoft.com/en-us/azure/azure-sql/database/logical-servers
query {
azureSqlDatabaseServers( azureSqlDatabaseServerFilters: {
#nameSubstringFilter: {nameSubstring: "example"}
#resourceGroupFilter: {resourceGroupNames: ["example"]}
#subscriptionFilter: {subscriptionIds: ["7d0d81dc-3323-4f45-bd0b-cc37e5bf9f37"]}
#regionFilter: {regions: [EAST_US, EAST_US2]}
}) {
nodes {
name
id
region
tags {
key
value
}
effectiveSlaDomain {
name
id
}
}
}
}
#!/bin/bash
# RSC_TOKEN="YOUR_RSC_ACCESS_TOKEN"
query="query { azureSqlDatabaseServers( azureSqlDatabaseServerFilters: { }) { nodes { name id region tags { key value } effectiveSlaDomain { name id } } } }"
# Execute the GraphQL query with curl
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $RSC_TOKEN" \
-d "{\"query\": \"$query\"}" \
https://example.my.rubrik.com/api/graphql