0

在每天查询一组事件的 Splunk API 时遇到问题。我的目标是为一组服务器日志返回包含 7 天事件计数(展示次数和唯一性)的 JSON。搜索如下:

index=assets_index gid=30 | timechart count(clientip) AS Impressions dc(clientip) AS Uniques

当我运行此搜索并在终端中获取结果时:

curl -u admin:ourpass -k https://ourserver.com:8089/services/search/jobs -d"search=search index=assets_index gid=30 | timechart count(clientip) AS Impressions dc(clientip) AS Uniques"
curl -u admin:ourpass \
     -k https://ourserver.com:8089/services/search/jobs/1357597855.2304/results/ \
     --get -d output_mode=json

我从搜索中获取原始事件,而不是结果(在 Web 搜索应用程序中运行它会返回我想要的结果)。我确信有一种简单的方法可以请求结果,但我找不到它。帮助。

4

1 回答 1

2

你非常接近......只是你传递参数的方式是错误的。每个请求参数都应使用 -d 标志单独传递,并且参数值需要进行 URL 编码。试试这个,看看它是否适合你:

curl -u admin:ourpass -k https://ourserver.com:8089/services/search/jobs -d search="search index%3Dassets_index gid%3D30 | timechart count(clientip) AS Impressions dc(clientip) AS Uniques"

不确定您的 web 应用程序是什么语言,Splunk 也有多种语言的SDK 。通过 SDK 并让它们处理与 Splunk 的对话可能会更容易。

于 2013-01-08T01:01:28.850 回答