Shutdown and Draining
The default behavior of most SDKs is to send out events over the network asynchronously in the background. This means that some events might be lost if the application shuts down unexpectedly. The SDKs provide mechanisms to cope with this.
The Java SDK automatically shuts down on JVM exit and waits
shutdownTimeout milliseconds before that happens.