Как правильно настроить Continuous Exports в App Insights с помощью сценария powershell?

Я слежу за документацией Microsoft о том, как настроить непрерывный экспорт для AppInsights в Azure.

Мой текущий скрипт выглядит так:

[CmdletBinding()]
Param(
    [Parameter(Mandatory=$True)]
    [String]$resourceGroupName,

    [Parameter(Mandatory=$True)]
    [String]$appInsightsName,

    [Parameter(Mandatory=$True)]
    [String[]]$docTypes,

    [Parameter(Mandatory=$True)]
    [String]$storageAccountName,

    [Parameter(Mandatory=$True)]
    [String]$continuousExportContainerName

)

Login-AzureSubscription > $Null

$storage = Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName
$continuousExportContainer = Get-AzureStorageContainer -Context $storage.Context -Name $continuousExportContainerName
$sasToken = New-AzureStorageContainerSASToken -Name testcontainer -Context $storage.Context -ExpiryTime (Get-Date).AddYears(50) -Permission "rwdl"
$sasUri = $continuousExportContainer.CloudBlobContainer.Uri.AbsoluteUri + $sasToken
$defaultLocation = Get-DataCenterLocation us AppInsights

New-AzureRmApplicationInsightsContinuousExport -ResourceGroupName $resourceGroupName -Name $appInsightsName -DocumentType $docTypes -StorageAccountId $storage.Id -StorageLocation $defaultLocation -StorageSASUri $sasUri

При запуске скрипта и проверке портала я вижу, что он был создан:

Эта проблема:

Сценарий включил запрос и исключение (предоставлено мной для параметра $docType), но ни хранилище, ни контейнер хранилища не были настроены должным образом. Я не уверен, что здесь происходит.

1 ответ

Решение

Это специально (хотя я не знаю почему, это странно).

Даже когда вы вручную создаете непрерывный экспорт по пользовательскому интерфейсу на портале Azure, вы можете увидеть то же поведение. Но это работает, и данные будут отправлены в контейнер для хранения, который вы определили ранее.

И, насколько я знаю, вы можете использовать этот командлет powershell Get-AzApplicationInsightsContinuousExport проверить контейнер для хранения / место хранения.

Пример кода PowerShell:

$s = Get-AzApplicationInsightsContinuousExport -ResourceGroupName your_resourceGroupName -Name your_app_insights_name

# get the storage container name
$s.ContainerName

# get the Storage location name
$s.DestinationStorageLocationId

# get the storage account name
$s.StorageName

Результат теста, как показано ниже:

Другие вопросы по тегам