Get-AzureRmLog-CorrelationId未按预期检索记录

Get-AzureRmLog-CorrelationId未按预期检索记录,azure,azure-diagnostics,Azure,Azure Diagnostics,我正在使用以下命令检索活动日志 $ActivityLog = Get-AzureRmLog -StartTime $starttime -EndTime $endTime -WarningAction SilentlyContinue -MaxRecord $MaxRecords -Status 'Succeeded' $Output = $ActivityLog | Where-Object {$_.Authorization.Action -eq 'Microsoft.Resources

我正在使用以下命令检索活动日志

$ActivityLog = Get-AzureRmLog -StartTime $starttime -EndTime $endTime -WarningAction SilentlyContinue -MaxRecord $MaxRecords -Status 'Succeeded' 

$Output = $ActivityLog | Where-Object {$_.Authorization.Action -eq 'Microsoft.Resources/deployments/write'} 
接下来,我将循环检索记录,并尝试使用下面的correlationid简化代码获取相关记录

foreach ($record in $output)
{
    $record.CorrelationId
    if($record.CorrelationId -eq $null -or $record.CorrelationId -eq ''){'error'}

    Get-AzureRmLog -CorrelationId $($record.CorrelationId) -WarningAction SilentlyContinue
    #EXPECTED this command to show me the original record and any related log entries.
}
在我的例子中,我循环遍历每个活动日志记录,并且我可以使用上面的脚本验证每个记录是否具有有效的关联ID

但是,当我尝试使用get-AzureRmLog-CorrelationId获取相关记录时,许多记录的结果都是0。我可以理解,某些活动在日志中可能没有多个相关条目。然而,即使在这种情况下,当我运行Get-AzureRmLog-CorrelationId时,我希望它会返回我们最初从中检索到相关id的单个活动日志条目


为什么会出现这样的行为?

在指定的日期时间窗口内,相关ID丢失的事件记录可能根本不映射到任何事件

Get-AzureRMlog -CorrelationId "Insert Correlation ID here"
如果使用有效的关联id运行,将在当前执行日期/时间后的最后7天内枚举最多1000个与指定关联id关联的事件。每个关联id通常只输出一个事件

作为一项测试,我建议手工挑选一些您希望看到的关联事件的相关ID,并分别在每个ID上运行Get-AzureRMlog并验证事件输出。然后对列表中的相关ID运行相同的测试,没有要比较的事件。如果未列出任何事件,则表示在时间范围内没有与IDs相关的事件日志

这有几个使用示例,可能对您的调查有用

通过相关ID获取事件日志

此命令最多列出1000个与指定关联ID关联的事件,这些事件发生在当前日期/时间7天后。注意:这通常只是一个事件

通过具有最大事件数的关联ID获取事件日志

此命令最多列出从当前日期/时间起7天内发生的与指定关联ID关联的100个事件。注意:这通常只是一个事件

按相关ID和开始时间获取事件日志


如果开始时间不超过当前日期/时间的90天,则此命令最多列出1000个与指定关联ID相关的事件,这些事件发生在当地时间2017-05-22T04:30:00或之后。注意:这通常只是一个活动。

谢谢Femi Sulu。我在MSFT上开了一张罚单,结果他们说新版本的cmdlet的行为发生了变化。对于较旧的Azure Rm模块,开始时间和结束时间为7天。但较新的模块将开始和结束时间设置为同一天。我还没有完全验证它,但对我来说,指定开始和结束时间解决了它。
PS C:\>Get-AzureRmLog -CorrelationId "60c694d0-e46f-4c12-bed1-9b7aef541c23"
PS C:\>Get-AzureRmLog -CorrelationId "60c694d0-e46f-4c12-bed1-9b7aef541c23" -MaxEvents 100
PS C:\>Get-AzureRmLog -CorrelationId "60c694d0-e46f-4c12-bed1-9b7aef541c23" -StartTime 2017-05-22T04:30:00