我如何知道Splunk REST API基本URL?

时间:2017-08-23 12:10:22

标签: rest splunk

我们在https://splunkit.corp.company.com部署了Splunk(已修改网址)。

并且能够访问https://splunkit.corp.company.com/en-US/app/launcher/home上的Splunk Web主页(已修改网址)。

我正在构建一个仪表板应用程序,它使用Splunk REST服务提供的JSON数据。

我已将link和其他结束点作为here

从上面链接我知道了

  

我需要使用用户名和密码向服务/ auth / login发送请求。这将返回会话密钥,该密钥将用于进一步的API调用。

     

必须向服务/搜索/作业发出请求才能创建搜索。这将返回搜索ID。

     

我需要检查服务/搜索/工作/搜索完成。

     

如果搜索完成然后我可以使用服务/搜索/作业//结果检索结果。

我面临的问题是我不知道基本网址是什么。我尝试构建https://splunkit.corp.company.com/en-US/services/auth/login等但不起作用。

任何帮助表示赞赏。感谢

1 个答案:

答案 0 :(得分:1)

我之前有同样的问题。这里有一个解决方法,找出REST API Base URL。事实上我偶然发现了这个解决方案。

  • 在Firefox浏览器中,打开Web Developer / Network工具,检查本地计算机与Splunk服务器之间的URL
  • 通过Web界面登录Splunk
  • 我们假设您事先已完成搜索,因此服务器上应该已存储Job。然后,我们点击窗口右上角的Activity / Jobs链接
  • 会列出一份工作清单。选择任何作业,点击Job / Delete Job按钮,然后删除作业搜索结果。
  • Web Developer工具中,删除作业时检查URL

对我来说,我的网址如下:

  

https://the-company-splunk-server.com/en-US/splunkd/__raw/services/search/jobs/scheduler_search_RMD554b7a649e94cdf69_at_1526886000_58534?output_mode=json

顶部的秘密是: /services/之前的网址是REST API Base URL 。在这种情况下,基本URL是:

  

https://the-company-splunk-server.com/en-US/splunkd/__raw/services/

测试基础URl

我们可以尝试使用此Base URL登录CURL

  

curl --insecure https://the-company-splunk-server.com/en-US/splunkd/__raw/services/auth/login -d username = your-user -d password = your-password

我们得到以下结果:

<response>
<sessionKey>kq6gkXO_dFcJzJG2XpwZs1IwfhH8MkkYDaBsZrPxZh8</sessionKey>
</response>

所以测试成功了。我们已经证明基本URL可以正常工作。

祝你好运。