Set Up and Access IoT Monitoring

This describes when you should use an IoT SDK or the IoT REST API, get an EUM App Key, and direct you to instructions for capturing and reporting data.

SDKs Versus REST API

The IoT SDKs use the REST API to transmit data to the EUM Server. By handling HTTP requests, serializing JSON, and managing events in memory, the SDKs make it easier to capture and report data, so you can focus on instrumenting your application. For platforms other than C++ or Java, you can take advantage of the wide variety of HTTP(S) and JSON libraries to use the IoT REST API to report data.

Get an EUM App Key

To get an EUM App Key, you need to either create an IoT app manually or use the Getting Started Wizard, which is recommended if you are a new user. You will need the EUM App Key to use the IoT REST API or IoT SDKs to report device information and events to the EUM Server. Multiple IoTapplications can share the same key.

Create an IoT Application with the Getting Started Wizard

From the Controller:

  • New Applications

  • Using Existing Applications

New Applications

From the Controller:

  1. Click User Experience from the top navigation bar.
  2. Select the Connected Devices tab.
  3. Click Get Started.
  4. From the Create Application dialog, select Create an Application using the Getting Started Wizard.
  5. Click OK.
  6. For step one of the Getting Started Wizard - Connected Devices page, select Use an existing Application.
  7. Choose one of the existing applications from the dropdown.
  8. From step two, select which method you want to use to report IoT data (Java SDK, C/C++ SDK, REST API).
  9. Copy the values for the App Key and the Collector URL. You'll be using both to report IoT data.

Using Existing Applications

From the Controller:

  1. Click User Experience from the top navigation bar.
  2. Select the Connected Devices tab.
  3. Click Get Started.
  4. From the Create Application dialog, select Create an Application using the Getting Started Wizard.
  5. Click OK.
  6. For step one of the Getting Started Wizard - Connected Devices page, select Create a new Application.
  7. Enter a name for your IoT app.
  8. Click Continue.
  9. From step two, select which method you want to use to report IoT data (Java SDK, C/C++ SDK, REST API).
  10. Copy the values for the App Key and the Collector URL. You'll be using both to report IoT data.

Manually Create an IoT Application

From your Controller:

  1. Click User Experience from the top navigation bar.
  2. Select the Connected Devices tab.
  3. Click Get Started.
  4. From the Create Application dialog, select Create an Application manually.
  5. Enter a name for your IoT app.
  6. Click OK.
  7. From the Connected Devices tab, select IoT app and click Copy Icon
    to copy the App Key to your clipboard.

Correlate Business Transactions for IoT Monitoring

You can correlate IoT network request events with business transactions. The correlation is made between beacons containing network request event information and instances of business transactions (transaction snapshots).

IoT Network Requests Correlation

This procedure outlines how IoT applications correlate network requests with business transactions:

  1. The IoT application attaches Splunk AppDynamics HTTP headers to a network request to the app server agent. These Splunk AppDynamics HTTP headers instruct the app server agent to send back correlation headers.
  2. The app server agent:
    • Sends HTTP response headers identifying the business transaction to the IoT application.
    • Aggregates backend metrics and sends them along with the business transaction identifiers to the Controller. This serves as the content for the transaction snapshot.
  3. The IoT Agent sends business transaction identifiers (from the HTTP response headers) as part of IoT network request event to the EUM Server. This serves as the content for the network request.
  4. The Controller fetches the events and business transaction identifiers from the EUM Server. These business transaction identifiers are used to correlate the network request with the transaction snapshots.

Correlate IoT Network Request Events with Business Transactions

Use the IoT SDKs or the IoT REST API to send the returned response headers from the business application with beacons to report IoT network request events and correlate those events with the business transaction.

For correlation instructions, see "Correlate Business Transactions with Network Requests" for either the IoT C/C++ SDK, IoT Java SDK, or the IoT REST API.

View Business Transactions Correlated with IoT Applications

There are several ways to navigate from a network request snapshot to its correlated business transaction. The following steps show you one possible way.

  1. From the IoT Device Dashboard, double-click one of the device records in the Unique Devices widget:Unique Devices
  2. You should now see a list of network requests in the Activity Stream tab. You can click a link in the activity stream to view the transaction flow map for a business transaction.Activity Stream
  3. Click the Business Transactions tab to view a list of correlated business transactions.Business Transactions
  4. You can then click a business transaction to view the Transaction Flow Map shown below, which provides a visual representation of the components and activities of the business application during the correlated business transaction.