我想将此特定的splunk curl请求转换为Rcurl:
curl -k -u admin:传递https://localhost:8089/services/search/jobs --get -d search =“eventCount> 100”
答案 0 :(得分:2)
这可以通过for row in Sans_ND:
for i in range(2,len(row)):
if re.match("\d+(?:\.\d+)?\s*(?:%|[a-zA-Z]+/[a-zA-Z]+)",row[i]):
continue
else:
print("Formatting error",row[i],"in",row[0],"col",i)
提供一个成语,您可以从其他Splunk调用中进行推断:
httr
它希望服务器基本URL位于#' @param search_terms
#' @param other parameters passed to httr GET/POST request
#' @return data.frame of results
search_now <- function(search_terms, ...) {
require(httr)
# i.e. "https://localhost:8089"
splunk_server <- Sys.getenv("SPLUNK_API_SERVER")
username <- Sys.getenv("SPLUNK_USERNAME")
password <- Sys.getenv("SPLUNK_PASSWORD")
search_job_export_endpoint <- "servicesNS/admin/search/search/jobs/export"
response <- GET(splunk_server,
path=search_job_export_endpoint,
encode="form",
config(ssl_verifyhost=FALSE, ssl_verifypeer=0),
authenticate(username, password),
query=list(search=paste0("search ", search_terms, collapse="", sep=""),
output_mode="csv"),
verbose(), ...)
result <- read.table(text=content(response, as="text"), sep=",", header=TRUE,
stringsAsFactors=FALSE)
result
}
环境变量中(将其粘贴在SPLUNK_API_SERVER
中),并且用户名和密码将位于代码中其他两个非常明显的变量中。
我在a gist为了别人而躺在那里,所以很高兴能获得更多里程。一个完整的.Renvion
包正在开发中。