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

Labels (1)
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!

Announcing Scheduled Export GA for Dashboard Studio

We're excited to announce the general availability of Scheduled Export for Dashboard Studio. Starting in ...

Extending Observability Content to Splunk Cloud

Watch Now!   In this Extending Observability Content to Splunk Cloud Tech Talk, you'll see how to leverage ...

More Control Over Your Monitoring Costs with Archived Metrics GA in US-AWS!

What if there was a way you could keep all the metrics data you need while saving on storage costs?This is now ...