1. A system, comprising: a data store that is configured to store events; and a temporary events file storage system (TEFSS); a cluster of application servers each being configured to run a client application that generates events, wherein the cluster comprises: a first application server comprising: a capture service configured to: receive events generated by the client application running on the first application server and to provide the events to an in-memory buffer service that is configured to temporarily hold the events in a bounded buffer that is implemented in physical memory at the first application server, wherein the bounded buffer comprises a plurality of single-threaded buffer segments that are each configured to temporarily hold some of the events received from the capture service until a flush operation is performed, wherein each particular single-threaded buffer segment holds a plurality of events; a consumer executor service configured to: instantiate a plurality of consumer threads that each correspond to a particular single-threaded buffer segment, wherein each consumer thread comprises: an instance of an events reader that is configured to read events flushed from a corresponding single-threaded buffer segment and to add an identifier to each the events; and an instance of a direct events writer that is configured to attempt to directly write each event to the data store; an indirect events writer that is invoked when events generated by the first application server are unable to be directly written to the data store, comprising: a plurality of event capture threads each being configured to: generate a particular events file that includes a plurality of events flushed from an in-memory buffer service, and write that particular events file to the TEFSS; and a second application server comprising: an events file uploader service that is configured to: determine that the first application server is inactive; read at least one events file from the TEFSS; and write the events from each of the events files that was read to the data store.