我正在尝试启用 VM 诊断扩展以将事件日志(应用程序 [1,2,3],安全 [all],系统 [1,2,3])发送到一个统一存储帐户(让我们调用日志存储) 应该在其中创建 WADWindowsEventLogsTable。
我试图实现的不同场景:
VM 位于日志存储所在的同一资源组中。
结果:有效
VM 位于日志存储所在的不同资源组中。
结果:有效
不同订阅中的虚拟机
结果:扩展将被启用。但是,当转到代理选项卡时,我会在存储帐户部分 [代理选项卡,存储帐户部分错误][1] 下收到错误消息“值不能为空”
环境
视窗
电源外壳 7.0.2
诊断配置.json
{
"PublicConfig": {
"WadCfg": {
"DiagnosticMonitorConfiguration": {
"overallQuotaInMB": 5120,
"WindowsEventLog": {
"scheduledTransferPeriod": "PT1M",
"DataSource": [
{
"name": "Application!*[System[(Level=1 or Level=2 or Level=3 or Level=4)]]"
},
{
"name": "Security!*"
},
{
"name": "System!*[System[(Level=1 or Level=2 or Level=3 or Level=4)]]"
}
]
}
}
},
"StorageAccount": "logsstorage",
"StorageType": "TableAndBlob"
},
"PrivateConfig": {
"storageAccountName": "logsstorage",
"storageAccountKey": "xxxxxxx",
"storageAccountEndPoint": "https://logsstorage.blob.core.windows.net"
}
}
Powershell 命令:
Set-AzVMDiagnosticsExtension -ResourceGroupName "myvmresourcegroup" -VMName "myvm" -DiagnosticsConfigurationPath "DiagnosticsConfiguration.json"
我什至尝试将帐户名称和密钥明确指定为:
$storage_key = "xxxxxx"
Set-AzVMDiagnosticsExtension -ResourceGroupName "myvmresourcegroup" -VMName "myvm" -DiagnosticsConfigurationPath "DiagnosticsConfiguration.json" -StorageAccountName "logsstroage" -StorageAccountKey $storage_key
我花了很多时间试图在没有运气的情况下解决这个问题。
更新 :
这里真正的问题是扩展没有创建预期的表WADWindowsEventLogsTable(或者如果它已经存在则写入它)[1]:https ://i.stack.imgur.com/IP9zW.jpg