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

#azure #azure-blob-storage #azure-application-insights #azure-powershell

#azure #azure-blob-хранилище #azure-application-insights #azure-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
  

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

введите описание изображения здесь

Комментарии:

1. Правильно — пользовательский интерфейс, похоже, предназначен для изменения существующей конфигурации, а не для отображения текущих значений. Однако, как сказал @ivan, все работает правильно.