1

目标:

我的目标是使用 Sumologic API 从 Sumologic 仪表板中获取数据,并将其显示在 Power BI 的仪表板中。在将 URL 输入 Power BI Desktop 以可视化数据之前,我首先在 Git Bash 中检查调用。

  • 我有一个访问 ID - 看起来像: h2348f9

  • 和访问密钥 - 看起来像: 23h9qwdjqqq9qqi39d3ef9f94kks9k94k

  • 这是我试图用来访问仪表板的 url:https://api.sumologic.com/api/v2/dashboards/{dashboard id goes here} 根据Sumologic Get Dashboard Documentation

  • 我有我认为是 Dash ID 的东西

我从 Sumologic UI 中的 URL 末尾获取了破折号 ID。

附带问题: 有没有更好的方法来查找/验证 ID 的方法? 我花了很多时间搜索 Sumologic UI 和网络调用(使用 Google Chrome 检查器工具),但找不到明确说明的特定破折号 ID。我找到了我当前正在使用的确切调用,当我使用谷歌开发工具查看它时,它的响应 json 数据会被检查出来。

通过将访问 ID 替换为username并将访问密钥替换为密码,我已经成功地通过 API 访问了数据,以https://api.sumologic.com/api/v1/collectors?limit=10使用 PBI 桌面 UI“基本”身份验证设置。

(根据API 上的 Power BI 文档的指示,请参阅前几个步骤。它可以工作,尽管这表明它适用于 Azure 而不是 SumoLogic)

问题:

但是当我在我的 Git Bash for GETdashboard 中 curl 命令时,

curl -u "(AccessID):(AccessKey)" -X GET "https://api.sumologic.com/api/v2/dashboards/(dashboardID)"

我得到这个 json 响应:

{
    "id":"10NLC-3CNIS-5QN8J",
    "errors":[
        {"code":"user:not_found",
         "message":"Object Not Found."}
    ]
 }

我也无法将此调用添加到 Power BI,可能是因为同样的错误。我能够添加第一个 URL https://api.sumologic.com/api/v1/collectors?limit=10,而无需提供任何额外的用户信息。

这个错误似乎证实了 ID 是正确的,(因为我以前得到一个“不正确的 ID”错误而不是一个 json 响应),但我不确定。

主要问题:

  • 如何解决此用户未找到错误?
4

1 回答 1

1

TLDR

/api/v2/dashboards/:dashboardId端点需要与您在查看仪表板时在用户界面中看到的相同(种类)仪表板ID

长答案

如果我有这个:

在 Sumo Logic UI 中打开仪表板

然后我可以:

curl -u "$USER:$PASSWORD" -X GET "https://api.sumologic.com/api/v2/dashboards/PzClm5SSgWJqFSAusVkhPE5yMRU7NIrGZj6X0M28wMSgsnvmAc98cdvLiDwD"

并得到一个有意义的答案:

{"title":"Dashboard Sep 27, 2021 06:53:55","description":"","folderId":"0000000000D87ECD","topologyLabelMap":{"data":{}},"domain":"",
...

免责声明

我目前受雇于 Sumo Logic

于 2021-09-27T05:00:45.873 回答