使用powershell从azure DevOps UI下载csv格式的审核日志

使用powershell从azure DevOps UI下载csv格式的审核日志,powershell,automation,azure-devops,azure-devops-analytics,Powershell,Automation,Azure Devops,Azure Devops Analytics,嗨,我正在寻找一个脚本,它可以在给定的时间范围内使用powershell从azure DevOps下载csv格式的导出日志。就像我可以输入时间框架,然后脚本将从azure DevOps ui下载并返回csv文件一样- 我在这里找到了这个脚本 我不确定在这里使用什么用户名、密码和url $Username = 'domain\user' $Password = 'password' $Url = "https://server:8080/tfs/_api/_licenses/Expor

嗨,我正在寻找一个脚本,它可以在给定的时间范围内使用powershell从azure DevOps下载csv格式的导出日志。就像我可以输入时间框架,然后脚本将从azure DevOps ui下载并返回csv文件一样-

我在这里找到了这个脚本

我不确定在这里使用什么用户名、密码和url

$Username = 'domain\user'
$Password = 'password'
$Url = "https://server:8080/tfs/_api/_licenses/Export"
$Path = "D:\temp\data.csv"
$WebClient = New-Object System.Net.WebClient
$WebClient.Credentials = New-Object    
System.Net.Networkcredential($Username, $Password)
$WebClient.DownloadFile( $url, $path )

我找不到有关此的更多数据

您共享的示例是从Azure DevOps服务器下载审核日志,url是
https://{your_Server}/tfs/_api/_licenses/Export
,用户名、密码是您登录tfs的用户名和密码。 注意:不要忘记在用户名之前添加域名

如果您使用的是Azure DevOps服务,则可以尝试此操作,并使用power shell脚本保存审核日志

$outfile = "{Local path}"
$connectionToken="{PAT}"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$AuditLogURL = "https://auditservice.dev.azure.com/{organization}/_apis/audit/downloadlog?format=csv&startTime={startTime}&endTime={endTime}&api-version=6.1-preview.1" 
$AuditInfo = Invoke-RestMethod -Uri $AuditLogURL -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get –OutFile $outfile
结果:


回答:可能是的。请向我们显示您已尝试的代码。添加有关未按预期工作的内容、可能收到的错误消息等的信息。@Theo I仅使用为此找到的脚本更新了代码,我不确定需要在脚本中输入的值。我还尝试使用rest api获取审核日志,但这并不能证明这里的所有数据都是问题发布的-嗨@megha,我已经更新了api并添加了时间范围,现在您可以在给定的时间范围内使用powershell从azure DevOps下载csv格式的导出日志。您可以尝试一下,并在这里分享结果。谢谢。嗨@megha,只是想看看这个问题现在是否还在阻碍你?有关于这个问题的更新吗?@VitoLiu MSFT谢谢。这奏效了:-)真棒的回答,维托。仅供参考,我在这里回答了一个类似的问题: