Splunk COAP (Constrained Application Protocol) Modular Input v1.4.7

IMPORTANT

The Python code in this App is dual 2.7/3 compatible. This version of the App enforces Python 3 for execution of the modular input script when running on Splunk 8+ in order to satisfy Splunkbase AppInspect requirements. If running this App on Splunk versions prior to 8 , then Python 2.7 will get executed.

Overview

This is a Splunk Modular Input Add-On for indexing messages from a COAP Server.

What is COAP ?

http://en.wikipedia.org/wiki/Constrained_Application_Protocol

COAP and MQTT

http://eclipse.org/community/eclipse_newsletter/2014/february/article2.php

Implementation

This Modular Input utilizes the Californium Java client library version 1.0 , https://eclipse.org/californium/

Dependencies

Binary File Declaration

This App contains a custom modular input written in Java

As such , the following binary JAR archives are required

Setup

Encryption of credentials

If you require an encrypted credential in your configuration , then you can enter it on the setup page.

Then in your configration stanza refer to it in the format {encrypted:somekey}

Where somekey is any value you choose to enter on the setup page to refer to your credential.

Activation Key

You require an activation key to use this App. Visit http://www.baboonbones.com/#activation to obtain a non-expiring key

Logging

Modular Input logs will get written to $SPLUNK_HOME/var/log/splunk/coapmodinput_app_modularinput.log

These logs are rotated after a max size of 5MB with a backup limit of 5.

Setup logs will get written to $SPLUNK_HOME/var/log/splunk/coapmodinput_app_setuphandler.log

These logs are rotated daily with a backup limit of 5.

The Modular Input logging level can be specified in the input stanza you setup. The default level is INFO.

You can search for these log sources in the _internal index or browse to the Logs menu item on the App's navigation bar.

JVM Heap Size

The default heap maximum is 64MB. If you require a larger heap, then you can alter this in $SPLUNK_HOME/etc/apps/coap_ta/bin/coap.py

JVM System Properties

You can declare custom JVM System Properties when setting up new input stanzas. Note : these JVM System Properties will apply to the entire JVM context and all stanzas you have setup

Customized Message Handling

The way in which the Modular Input processes the received COAP messages is enitrely pluggable with custom implementations should you wish.

To do this you code an implementation of the com.splunk.modinput.coap.AbstractMessageHandler class and jar it up.

Ensure that the necessary jars are in the $SPLUNK_HOME/etc/apps/coap_ta/bin/lib directory.

If you don't need a custom handler then the default handler com.splunk.modinput.coap.DefaultMessageHandler will be used.

Troubleshooting

Support

BaboonBones.com offer commercial support for implementing and any questions pertaining to this App.