gpt4 book ai didi

java - Splunk 不返回所有结果 - 使用 REST API -

转载 作者:行者123 更新时间:2023-12-02 01:33:35 26 4
gpt4 key购买 nike

我正在通过生产端口 8980 使用 REST API 从 Splunk 检索数据,在 GUI 上,当我检索数据时,我可以看到 770 个事件,而我得到的数据少于 100。

这是我用于检索数据的 Java 代码:

public JSONObject Post_request() throws IOException, ParseException {
String Query = "search " + OS_Vuln_Query;
Job job = session.make_Request().getJobs().create(Query);
while (!job.isDone()) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
JobResultsArgs resultsArgs = new JobResultsArgs();
resultsArgs.setOutputMode(JobResultsArgs.OutputMode.JSON);
InputStream results = job.getResults(resultsArgs);

BufferedReader br = new BufferedReader(new InputStreamReader(results));
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null)
{
sb.append(line);
}
JSONParser parser = new JSONParser();
JSONObject json = (JSONObject) parser.parse(sb.toString());
String vulns_as_string = json.get("results").toString();
JSONArray vulns_to_json = (JSONArray) parser.parse(vulns_as_string);
if (vulns_to_json.size()>0)
{
System.out.print("Splunk return results");
for (int v = 0; v < vulns_to_json.size(); v++)
{
String vuln_as_string = vulns_to_json.get(v).toString();
Vulnerability vulnerability = new Gson().fromJson(vuln_as_string, Vulnerability.class);
data_Parsed = true;
vulnerability.ports_to_List();
list_of_OS_Vulnerability.add(vulnerability);
}
return json;
}
System.out.print("Splunk return empty results");
return null;
}

我从不同的类向 Splunk 发出请求 - 它返回我用来将查询传递给 splunk 的服务

最佳答案

我从 Splunk 文档中了解到这一点,一开始并不是这样。resultsargs 如果未设置为 0 将仅返回前 100 个结果。要解决这个问题,只需将 resultsArgs 中的 setcount 设置为 0:

        resultsArgs.setCount(0); // to return all results

关于java - Splunk 不返回所有结果 - 使用 REST API -,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55628779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com