Getting Data In

How to create or update KV Store via REST endpoints?

hypePG
Path Finder

Hello,

I want to fill my KVStore with information from a script. The script adds data via a REST Endpoint to the KVStore.

The key in the store is a hostname of a machine. The problem is, if I want to add a new host to the KVStore, but there is already an entry for this host, I will get an error. On the other hand, I can't use the "Update-method" because if it is a new host, I will get the an error as well.

I know that I could handle this problem in my script, but I wanted to know if there is a "clever" update function:

If there is a record in the KVStore then update the item, and if there isn't, create a new one.

thank you in advance.

0 Karma
1 Solution

Murali2888
Communicator

I don't think there is an update function to insert/update records in KV Store with that level of intelligence.

As you said, you can handle this by two way approach in your script using the respective REST End Points.

  1. Query the KV Store for the existence of the Key
  2. If present, use the storage/collections/data/{collection}/{id} end point to update the record
  3. else, use storage/collections/data/{collection}/ to insert a new record

Please refer the links for more details / examples
http://docs.splunk.com/Documentation/Splunk/6.2.2/RESTREF/RESTkvstore
http://docs.splunk.com/Documentation/Splunk/6.3.3/RESTREF/RESTkvstoreExamples

View solution in original post

gyslainlatsa
Motivator
0 Karma

Murali2888
Communicator

I don't think there is an update function to insert/update records in KV Store with that level of intelligence.

As you said, you can handle this by two way approach in your script using the respective REST End Points.

  1. Query the KV Store for the existence of the Key
  2. If present, use the storage/collections/data/{collection}/{id} end point to update the record
  3. else, use storage/collections/data/{collection}/ to insert a new record

Please refer the links for more details / examples
http://docs.splunk.com/Documentation/Splunk/6.2.2/RESTREF/RESTkvstore
http://docs.splunk.com/Documentation/Splunk/6.3.3/RESTREF/RESTkvstoreExamples

hypePG
Path Finder

Hello,

thank you for your answers. The batch_save operation is exactly doing this job.

thanks!

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Announcing Modern Navigation: A New Era of Splunk User Experience

We are excited to introduce the Modern Navigation feature in the Splunk Platform, available to both cloud and ...

Modernize your Splunk Apps – Introducing Python 3.13 in Splunk

We are excited to announce that the upcoming releases of Splunk Enterprise 10.2.x and Splunk Cloud Platform ...

Step into “Hunt the Insider: An Splunk ES Premier Mystery” to catch a cybercriminal ...

After a whole week of being on call, you fell asleep on your keyboard, and you hit a sequence of buttons that ...