IP Library Granted Patent US 11,245,581
Granted Patent B2
US 11,245,581 · App. 16/573,937 · Granted Feb 8, 2022

Selective event stream data storage based on historical stream data

Inventors: Fang I Hsiao (Berkeley, CA); Wei Jiang (San Francisco, CA); Vladimir A. Shcherbakov (Pleasanton, CA); Ramkumar Chandrasekharan (San Jose, CA); Clayton S. Ching (Sunnyvale, CA)
Assignee: Splunk Inc.
H04L41/0813G06F3/0481G06F3/0482G06F3/04842G06F16/26H04L41/22H04L67/12H04L67/36
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,245,581
App. No.
16/573,937
Granted
Feb 8, 2022
Kind
B2
Abstract

The disclosed embodiments provide a system that facilitates the processing of network data. During operation, the system causes for display a graphical user interface (GUI) for configuring the generation of time-series event data from network packets captured by one or more remote capture agents. Next, the system causes for display, in the GUI, a first set of user-interface elements containing a set of statistics associated with one or more event streams that comprise the time-series event data. The system then causes for display, in the GUI, one or more graphs comprising one or more values from the set of statistics. Finally, the system causes for display, in the GUI, a value of a statistic from the set of statistics based on a position of a cursor over the one or more graphs.

Claims (61)

1. A method performed by a configuration server coupled via a network to at least one remote capture agent, the method comprising:

receiving an event stream from a remote capture agent of the at least one remote capture agent, the event stream including timestamped event data generated by the at least one remote capture agent based on network traffic monitored by the remote capture agent;

identifying historical data indicating an amount of storage used by the event stream over one or more periods of time;

calculating, based on the historical data, an expected amount of storage to be used by the event stream relative to a storage limit;

determining a percentage of the event stream to store in one or more data stores based on the expected amount of storage to be used by the event stream relative to the storage limit; and

causing a portion of the event stream to be stored in the one or more data stores according to the percentage.

2. The method of claim 1 , further comprising generating the historical data based on the event stream without subsequently storing at least a portion of the event stream used to generate the historical data.

3. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) displaying a graph of at least a portion of the historical data, wherein the GUI further includes at least one interface element used to change a view of the graph, and wherein changing the view of the graph includes at least one of:

changing a scale of the graph,

changing a time range associated with the historical data used to generate the graph, and

changing a host associated with the event stream and the historical data.

4. The method of claim 1 , further comprising receiving input specifying the percentage of the event stream to store in the one or more data stores.

5. The method of claim 1 , wherein the historical data indicates an average amount of daily storage used by the event stream relative to a daily storage limit.

6. The method of claim 1 , wherein the storage limit is defined by a license associated with a user of an event-based system.

7. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) including a pie chart including a plurality of slices, each slice of the plurality of slices representing an index volume size of a respective event stream of a plurality of event streams including the event stream.

8. The method of claim 1 , wherein the percentage of the event stream to store in the one or more data stores is further based on an average amount of storage used by at least one other event stream generated by the at least one remote capture agent.

9. The method of claim 1 , further comprising generating a statistic related to the event stream, the statistic including at least one of:

a total number of timestamped events in the event stream,

a total data size associated with incoming network traffic represented by the event stream,

a total data size associated with outgoing traffic represented by the event stream,

a total data size associated with network traffic represented by the event stream, and

an estimated index volume for each of the event stream.

10. The method of claim 1 , further comprising causing display of a graph including a bar chart plotting a total index volume of the event stream over time.

11. The method of claim 1 , further comprising causing display of a graph including a bar chart plotting a total index volume of a plurality of event streams over time including the event stream.

12. The method of claim 1 , wherein the portion of the event stream is a first portion, and wherein causing the first portion of the event stream to be stored in the one or more data stores includes discarding a second portion of the event stream.

13. The method of claim 1 , wherein the percentage of the event stream to store in the one or more data stores is further based on a priority of the event stream relative to one or more other event streams.

14. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) including at least one interface element used to manage the event stream, and wherein managing the event stream includes enabling generation of one or more statistics from the event stream without transmitting the event stream over a network for subsequent storage and processing of the event stream by one or more components on the network.

15. The method of claim 1 , wherein the percentage of the event stream to store in the one or more data stores is further based on a traffic volume associated with the event stream.

16. The method of claim 1 , further comprising causing display of a value of a statistic associated with the event stream based on a position of a cursor over a legend displayed on a graphical user interface (GUI).

17. The method of claim 1 , further comprising storing the percentage of the event stream to store in one or more data stores as part of configuration data associated with the event stream.

18. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) including a slider interface element enabling selection of the percentage of the event stream to store in the one or more data stores.

19. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) including text indicating an automatically generated suggestion for the percentage of the event stream to store in the one or more data stores.

20. The method of claim 1 , further comprising adjusting the percentage of the event stream to store in the one or more data stores based on a condition related to the network traffic.

21. The method of claim 1 , further comprising causing display of a graphical user interface (GUI) including a list of event streams including the event stream, the list of event streams sorted by an attribute of the event streams.

22. The method of claim 1 , further comprising periodically generating additional historical data indicating an amount of storage used by the event stream over one or more periods of time.

23. The method of claim 1 , further comprising:

receiving input indicating to disable generation of the event stream by the remote capture agent; and

sending configuration information to the remote capture agent that causes the remote capture agent to cease generation of the event stream.

24. The method of claim 1 , further comprising:

receiving input requesting to generate a statistic from the event stream without storing the event stream in the one or more data stores;

generating the statistic from the event stream without storing the event stream in the one or more data stores; and

causing display of a graphical user interface (GUI) including the statistic.

25. The method of claim 1 , further comprising:

receiving input indicating an absolute storage limit for the event stream; and

causing a portion of the event stream to be stored in the one or more data stores according to the absolute storage limit.

26. The method of claim 1 , wherein the event stream is generated by a plurality of remote capture agents distributed across a computer network.

27. The method of claim 1 , further comprising adjusting the portion of the event stream to be stored in the one or more data stores based on an unused amount of storage relative to the storage limit.

28. An apparatus, comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the apparatus to:

receive an event stream from a remote capture agent of the at least one remote capture agent, the event stream including timestamped event data generated by the at least one remote capture agent based on network traffic monitored by the remote capture agent;

identify historical data indicating an amount of storage used by the event stream over one or more periods of time;

calculate, based on the historical data, an expected amount of storage to be used by the event stream relative to a storage limit;

determine a percentage of the event stream to store in one or more data stores based on the expected amount of storage to be used by the event stream relative to the storage limit; and

cause a portion of the event stream to be stored in the one or more data stores according to the percentage.

29. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform operations comprising:

receiving an event stream from a remote capture agent of the at least one remote capture agent, the event stream including timestamped event data generated by the at least one remote capture agent based on network traffic monitored by the remote capture agent;

identifying historical data indicating an amount of storage used by the event stream over one or more periods of time;

calculating, based on the historical data, an expected amount of storage to be used by the event stream relative to a storage limit;

determining a percentage of the event stream to store in one or more data stores based on the expected amount of storage to be used by the event stream relative to the storage limit; and

causing a portion of the event stream to be stored in the one or more data stores according to the percentage.

Assignments (4)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069825/0782 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 19, 2019
From: HSIAO, FANG I.; JIANG, WEI; SHCHERBAKOV, VLADIMIR A.; CHANDRASEKHARAN, RAMKUMAR; CHING, CLAYTON S.
To: SPLUNK INC.
Reel/Frame 050437/0408 →
Continuity (5)
Continuation 14699807 · Apr 29, 2015
Continuation In Part 14610408 · Jan 30, 2015
Continuation In Part 14253713 · Apr 15, 2014
Continuation In Part 14528898 · Oct 30, 2014
Related Publication 20200014593A1 · Jan 9, 2020
Cited By (1)
US 12,417,074