Splunk Search

Why is .net SDK unable to run a blocking search?

vinaypradhan
Explorer

Hello all, if anybody had luck running a blocking search using the C# SDK, would appreciate your help.

I am trying to run a blocking search from a C# application. This is my code:

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };
var service = new Service(new Uri("mySplunkURL:8089"));
await service.LogOnAsync("username", "password");

SearchResultStream searchResultStream;
Job job;

job = await service.Jobs.CreateAsync(
"search index=_internal | head 10"
,new JobArgs() { ExecutionMode = ExecutionMode.Blocking });

At this point, I get an error that says
JobArgs does not contain a definition for 'ExecutionMode' 
I am following the documentation on the Splunk site, and doing exactly same 
https://dev.splunk.com/enterprise/docs/devtools/csharp/sdk-csharp/howdoicsharp2x/howtorunsearches

I don't know what am I missing here? Any help is greatly appreciated !! 

Vinay

Tags (2)
0 Karma
1 Solution

vinaypradhan
Explorer

hey yes, this is how I did it. 

SearchResultStream searchResultStream; 
 Job job;
  
 //create a job, setting the execution mode to "blocking"
 job = await service.Jobs.CreateAsync("yoursearchstring");
  
 // print search results
 IEnumerable<SearchResult> myresults;
 using (searchResultStream = await job.GetSearchResultsAsync())
 {
 myresults = searchResultStream.AsEnumerable<SearchResult>();
 foreach (SearchResult result in searchResultStream)
 {
 _time = Convert.ToDateTime(result.GetValue("_time"));
 UserName = result.GetValue("UserName");
 ComputerName = result.GetValue("ComputerName");
 }
 }

 

View solution in original post

0 Karma

ksorayya
New Member

Hey;

Did you figure out this issue?  I have the same problem.

 

0 Karma

vinaypradhan
Explorer

hey yes, this is how I did it. 

SearchResultStream searchResultStream; 
 Job job;
  
 //create a job, setting the execution mode to "blocking"
 job = await service.Jobs.CreateAsync("yoursearchstring");
  
 // print search results
 IEnumerable<SearchResult> myresults;
 using (searchResultStream = await job.GetSearchResultsAsync())
 {
 myresults = searchResultStream.AsEnumerable<SearchResult>();
 foreach (SearchResult result in searchResultStream)
 {
 _time = Convert.ToDateTime(result.GetValue("_time"));
 UserName = result.GetValue("UserName");
 ComputerName = result.GetValue("ComputerName");
 }
 }

 

0 Karma
Get Updates on the Splunk Community!

Splunk ITSI & Correlated Network Visibility

  Now On Demand   Take Your Network Visibility to the Next Level In today’s complex IT environments, ...

Community Content Calendar, August edition

In the dynamic world of cybersecurity, staying ahead means constantly solving new puzzles and optimizing your ...

Pro Tips for First-Time .conf Attendees: Advice from SplunkTrust

Heading to your first .Conf? You’re in for an unforgettable ride — learning, networking, swag collecting, ...