【问题标题】:How to get List of resources which are listed for diagnostic settings on azure portal如何获取为 Azure 门户上的诊断设置列出的资源列表
【发布时间】:2019-10-22 09:47:39
【问题描述】:

使用 azure rest API 时,我们没有在 azure 门户的诊断设置下显示列表

我尝试使用 azure rest API 进行诊断设置列表

我想要使用 azure rest API 的 azure 门户的诊断设置下的资源列表。

so the attached snapshot is what we want to get

【问题讨论】:

  • 现在有更新吗?如果对您有帮助,请接受它作为答案。(单击答案旁边的复选标记将其从灰色切换为已填充。)

标签: azure azure-rest-api


【解决方案1】:

似乎没有单个 API 调用来检索所有诊断设置,您可以获取指定资源的活动诊断设置列表

参考链接https://docs.microsoft.com/en-us/rest/api/monitor/diagnosticsettings/list

更新

1.首先,转到您的 sql server>Access control(IAM)>Add>Add Role Assignment 并为您的服务主体分配一个角色。

2.使用以下rest api C#代码获取sql数据库诊断设置信息。

public static void getDiaSettings()
{
    var appId = "xxxxxxxx";
    var secretKey = "xxxxxxxx";
    var tenantId = "xxxxxxxx";
    var context = new AuthenticationContext("https://login.windows.net/" + tenantId);
    ClientCredential clientCredential = new ClientCredential(appId, secretKey);
    var tokenResponse = context.AcquireTokenAsync("https://management.azure.com/", clientCredential).Result;
    var accessToken = tokenResponse.AccessToken;
    using (var client = new HttpClient())
    {
        client.DefaultRequestHeaders.Add("Authorization", "Bearer " + accessToken);
        var baseUrl = new Uri($"https://management.azure.com/");
        var request2=  baseUrl +
                     @"/subscriptions/xxxxxxxx/resourceGroups/yourResourceGroup/providers/Microsoft.Sql/servers/yourSqlServer/databases/yourSqlDatabase/providers/microsoft.insights/diagnosticSettings?api-version=2017-05-01-preview";
        var response = client.GetAsync(request2).Result.Content.ReadAsStringAsync().Result;
    }
}

【讨论】:

  • 感谢您的回复 joey,我们已经通过了上面提到的 API。但是这个 API 需要的参数是工作流名称,我们已经传递了 subscriptionId、ResourceGroupname 但我们没有创建任何工作流......我们如何将指定的资源(不是资源组)作为参数传递给这个 API。有什么方法可以建议..任何帮助将不胜感激。
  • 转到资源,这里以逻辑应用为例:逻辑应用>属性>资源 ID。获取资源 ID 并用作 resourceUri 即可获取逻辑应用诊断设置。
  • 如果对您有帮助,请接受它作为答案。(单击答案旁边的复选标记将其从灰色切换为已填充。)
  • 目前在诊断设置下显示了两个资源,分别是sql server和sql database,但两者都没有resourceId。您能解释一下如何在诊断设置下获取资源列表吗?
  • 如前所述,似乎没有信号Api来获取其下的资源列表,您只能获取指定资源的列表。
猜你喜欢
  • 1970-01-01
  • 2022-10-19
  • 2022-11-13
  • 1970-01-01
  • 2019-10-02
  • 2021-03-14
  • 1970-01-01
  • 1970-01-01
  • 2019-11-17
相关资源
最近更新 更多