首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >azure运行簿启用客户级诊断

azure运行簿启用客户级诊断
EN

Stack Overflow用户
提问于 2018-11-20 12:23:15
回答 2查看 528关注 0票数 0

我正在编写一个PowerShell运行簿,以查看蔚蓝订阅中的所有vms,找出是否启用了客户级监视并启用它。

下面是我用来启用对角线的命令。

代码语言:javascript
复制
Set-AzureRmVMDiagnosticsExtension -ResourceGroupName xxxxxx -VMName xxxxxx -DiagnosticsConfigurationPath $diagnosticsconfig_path -StorageAccountName xxxxxx

我正在考虑将diag文件存储在存储博客中,如何使用$diagnosticsconfig_path来指向它呢?

如果我用

代码语言:javascript
复制
Get-AzureStorageBlobContent -blob "xxx.json" -Container xxx -Context $storageAccount.Context 

or

Get-AzureStorageFileContent -ShareName 'xxx' -Context $storageAccount.Context -path xxx.json 

运行簿可以下载该文件,但我如何将此文件称为Set-AzureRmVMDiagno粘贴中的对角路径?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-21 06:30:42

尝试下面的命令,您不需要下载该文件,我们可以直接指向blob url的路径。

代码语言:javascript
复制
$SAResourceGroupName="<Storage Account ResourceGroupName>"
$StorageAccountName="<StorageAccountName>"

$StorageAccountKey = (Get-AzureRmStorageAccountKey -ResourceGroupName $SAResourceGroupName -AccountName $StorageAccountName).Value[1]
$Context=New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey

$tmpStart = Get-Date
$tmpEnd = $tmpStart.AddHours(2.0)
$SASToken = New-AzureStorageBlobSASToken -Blob "diagnostics_publicconfig.xml" -Container "111" -Context $Context -Permission r -StartTime $tmpStart -ExpiryTime $tmpEnd -FullURI

Set-AzureRmVMDiagnosticsExtension -ResourceGroupName joywebapp -VMName joyVM -DiagnosticsConfigurationPath "$SASToken" -StorageAccountName joystoragev2

在运行手册中:

票数 1
EN

Stack Overflow用户

发布于 2020-04-28 11:36:34

谢谢你的好剧本。让我分步骤定义整个过程:

  1. 转到此Microsoft页面,复制XML示例文件,粘贴到powershell中并保存为XML。
  2. 选择一个存储帐户,选择一个容器并上传XML文件。
  3. 现在使用此脚本启用或更改退出的存储帐户。
代码语言:javascript
复制
    $VMRGName = (Get-AzureRmResource -Name $VMName -ResourceType "Microsoft.Compute/virtualMachines" ).ResourceGroupName
    $StorageAccountName= "storageaccount01"
    $SAResourceGroupName= (Get-AzureRmResource -Name $diagstoragename -ResourceType 'Microsoft.Storage/storageAccounts').ResourceGroupName
    $storagecontainer = "test"
    $StorageAccountKey = (Get-AzureRmStorageAccountKey -ResourceGroupName $SAResourceGroupName -AccountName $StorageAccountName).Value[1]
    $Context= New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey
    $tmpStart = Get-Date
    $tmpEnd = $tmpStart.AddHours(2.0)
    $SASToken = New-AzureStorageBlobSASToken -Blob "DiagnosticsPubConfig.xml" -Container $storagecontainer -Context $Context -Permission r -StartTime $tmpStart -ExpiryTime $tmpEnd -FullURI
    #to SET
    Set-AzureRmVMDiagnosticsExtension -ResourceGroupName $VMRGName -VMName $VMName  -DiagnosticsConfigurationPath "$SASToken" -StorageAccountName $StorageAccountName 
    #to GET
    $publicsettings = (Get-AzureRmVMDiagnosticsExtension  -ResourceGroupName $VMRGName -VMName $VMName).PublicSettings
    $encodedconfig = (ConvertFrom-Json -InputObject $publicsettings).StorageAccount
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53392917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档