No. If you upload a file via "add data" screen, the events are getting indexed and are immutable. There is no such thing as "updating" the events.
Also, why would you upload the same csv multiple times? Why would you even upload csv at all? In normal production environment you typically monitor log files or get events ingested in a different continuous way. Sometimes you upload samples of logs into dev/testing environments but that's a different case and there you usually don't mind the duplicates and/or you'd simply delete and recreate the index if duplication was an issue for you.
Not completely impossible. But before discussing workarounds, I have the same question as @PickleRick does: Why? Are they the same events (with the same timestamp, etc.)? Does the CSV even represent time series events? If they are the same events but with updates, why not delete previously loaded events before upload? I use CSV upload regularly. Each contains different events. Even so, I name files differently in part for peace of mind.
Below is my CSV
In this table when fist identify the Flow in our app we will update csv file with _key, App_name Date_find , Risk, and Status. when update happen the I will upload or ingest the csv file into Splunk. almost real time. this csv we are keeping it as lookup outside Splunk. So nothing get deleted. when I ingest or upload all the pervious entry get ingest in Splunk. only different is timestamp time at the ingestion. so all the entry such as _key 1 ,2, so get same timestamp. I want to know if it possible to return the latest result only. so I will have all the data and not any duplicate. otherwise I need to find the different solution.
Same thing happen when flow get fix Remediate_date, Risk_Afterremediate, and status get updated. file get ingested into Splunk.
Thank you in advance.
_key | App_name | Date_find | Status | Risk | Remediate_date | Risk_After remediate | Status |
1 | App1 | 12/04/2022 | Open | Critical | 12/10/2022 | Sustainable | Closed |
2 | App2 | 01/26/2023 | Open | Moderate | 02/12/2023 | Sustainable | Close |
You still need to explain your use case in Splunk. As I said, I use CSV update regularly; in fact, my CSV files have a similar structure. In my case, I have two timestamps of particular interest, "First Detected" and "Last Detected", both of them similar to "Date_Find" in your example. But "Last Detected" changes in every scan. So, I use this field as _time when I ingest.
Sure. That's what stats first/last/earliest/latest/index_earliest/index_latest are for.
But:
1) Aren't you trying to do in Splunk something it's not supposed to be? (like a database table)
2) Why not use a lookup instead of ingesting events?