Splunk MINT SDK for iOS

Splunk MINT SDK for iOS Developer Guide

Download manual as PDF

Download topic as PDF

Customize session handling

By default, Splunk MINT uses the initAndStartSessionWithAPIKey: and initAndStartSessionWithHECUrl: methods and the time zone of our servers to calculate the time a user's session begins. However, you can customize session handling if you need to.

Note When you close a session, it does not impact any other feature of the Splunk MINT plugin. The plugin will continue working properly and record network information, handled exceptions, events, and any crash that might occur.

Use the following methods to start, close, and flush sessions:

  • To explicitly start the session, use the startSession: method. (If a previous session was initialized less than one minute earlier, this call is ignored.)
  • To close the active session, use the closeSession method.
  • To manually flush all saved data, use the flush: method.
  • To only send data over a WiFi connection, use the enableFlushOnlyOverWiFi: method.


The SDK sends data over the network in the following cases:

  • When the app starts. The SDK sends a "hello" packet to update all of the real-time information that is displayed in the Splunk MINT dashboards, along with all of the information that was collected and saved from previous sessions.
  • When you explicitly call the flush: method. The SDK sends all information that has been gathered and saved until that moment.
  • When an unexpected runtime exception occurs and crashes your app. The SDK collects the crash information and writes it to disk, then the app terminates. The next time the app starts, it tries to send the information to Splunk MINT.
  • When batched event data reaches 140KB. The MINT SDK saves events in batches up to 140KB per file. If there is network connectivity, the SDK sends the data. Otherwise, the SDK continues to save up to three files of event data. If there is still no network connectivity, the SDK deletes the first file and continues saving data.


Example code

If there are logged handled exceptions, custom events, or any network interception captured by Splunk MINT and you don't want to wait for another initAndStartSessionWithAPIKey use the flush: method to immediately send any logged requests to the Splunk server.

// Objective-C

[[Mint sharedInstance] startSession];

[[Mint sharedInstance] closeSession];

[[Mint sharedInstance] enableFlushOnlyOverWiFi:YES];

[[Mint sharedInstance] flush];

// Swift

Mint.sharedInstance().startSession()
 
Mint.sharedInstance().closeSession()

Mint.sharedInstance().enableFlushOnlyOverWiFi(true)

Mint.sharedInstance().flush()

PREVIOUS
Add Splunk MINT to your iOS project
  NEXT
Monitor transactions

This documentation applies to the following versions of Splunk MINT SDK for iOS: 5.2.x


Was this documentation topic helpful?

Enter your email address, and someone from the documentation team will respond to you:

Please provide your comments here. Ask a question or make a suggestion.

You must be logged into splunk.com in order to post comments. Log in now.

Please try to keep this discussion focused on the content covered in this documentation topic. If you have a more general question about Splunk functionality or are experiencing a difficulty with Splunk, consider posting a question to Splunkbase Answers.

0 out of 1000 Characters