Accept License Agreements

This app is provided by a third party and your right to use the app is in accordance with the license provided by that third-party licensor. Splunk is not responsible for any third-party apps and does not provide any warranty or support. If you have any questions, complaints or claims with respect to this app, please contact the licensor directly.

Thank You

Downloading AppDynamics
MD5 checksum (appdynamics_425.tgz) 1b4c815ae620b6d82aff5e41a407e920
To install your download
For instructions specific to your download, click the Details tab after closing this window.

Flag As Inappropriate

AppDynamics

Splunk Certified
Overview
Details
The AppDynamics app allows you to mine application performance monitoring data from AppDynamics using its REST API. You can then slice and dice the data within Splunk using Search Processing Language (SPL). It also contains a notification client that can be extracted to an AppDynamics controller that will relay event and policy violation notifications in AppDynamics to Splunk and has the ability to cross-launch into AppDynamics from Splunk.

How To Use the AppDynamics App in Splunk

What is AppDynamics?

AppDynamics is an application performance monitoring solution that helps you:
Identify problems such as slow and stalled user requests and errors in a production environment.
Troubleshoot and isolate the root cause of such problems by:
Mining performance data from AppDynamics and viewing it in Splunk using the AppDynamics Controller REST API.
Pushing notifications on policy violations and events from AppDynamics to Splunk so that a Splunk user can use those to launch deep dives in AppDynamics. See Getting Notifications From and Launching AppDynamics in Splunk.

Installation

These instructions assume that you are familiar with using both AppDynamics and Splunk.

Links within this file go to AppDynamics 4.2 documentation. If you are running an earlier version, use the Search feature to find the associated topics.

Prerequisites

  • You have installed AppDynamics version 4.0 or newer. If you do not already have a license, you can sign up for a trial license. You can choose either a SaaS solution or an On-Premise installation.
  • You have installed Splunk version 6.x or newer.
  • You have installed the AppDynamics App for Splunk from Splunkbase.
  • You have access to the following AppDynamics Controller information, which is required to set up the integration:
  • hostname/IP address
  • port number
  • account name
  • user name
  • password

    If you use a SaaS account, AppDynamics provides you with the required information.
    - You have access to the AppDynamics documentation. When you trial or buy the product, AppDynamics provides access credentials to you.
    - $SPLUNK_HOME is set to the directory where Splunk is installed.

Steps

  1. Install the appdynamics app from splunkbase and before restarting perform steps 2 and 3.
  2. Locate and edit the files: $SPLUNK_HOME/etc/apps/appdynamics/default/metrics.conf and $SPLUNK_HOME/etc/apps/appdynamics/default/events.conf
  3. In the metrics.conf file, add one section for each individual metric you want to mine from AppDynamics. You need the following:

    • AppDynamics metric name, to name the section in the metrics.conf file, and for use as as unique identifier in Splunk
    • REST URL of the metric from the AppDynamics Metric Browser, see the AppDynamics REST documentation (login required).
    • polling interval - how frequently, in seconds, Splunk will run the script to get this metric

    For example, if you want to mine a metric called AverageResponseTime for the ViewCart.sendItems business transaction, the entry would be similar to this:

    [ViewCart.sendItems_AverageResponseTime]  
    url = http://<controller-host>:<port>/controller/rest/applications/Acme%20Online%20Book%20Store/metric-data?metricpath=Business%20Transaction%20Performance%7CBusiness%20Transactions%7CECommerce%7CViewCart.sendItems%7CAverage%20Response%20Time%20(ms)&time-range-type=BEFORE_NOW&duration-in-mins=15  
    interval = 60
    
  4. In the events.conf file, add one section for each individual event type you want to mine from AppDynamics. You need the following:

    • AppDynamics event type, to name the section in the events.conf file, specify the event query for the REST URL, and for use as as unique identifier in Splunk
    • AppDynamics event severity, to specify the event query for the REST URL
    • REST URL of the event type from the AppDynamics Metric Browser, see the AppDynamics REST documentation (login required).
    • polling interval - how frequently, in seconds, Splunk will run the script to get this metric

    For example, if you want to mine events caused by application changes, the entry would look similar to this:

    [Server.application_Changes]  
    url = http://<controller-host>:<port>/controller/rest/applications/Acme%20Online%20Book%20Store/events?time-range-type=BEFORE_NOW&duration-in-mins=15&event-types=APP_SERVER_RESTART,APPLICATION_CONFIG_CHANGE,APPLICATION_DEPLOYMENT&severities=INFO,WARN,ERROR  
    interval = 60
    
  5. Restart splunk.

  6. You will be prompted to setup the AppDynamics App. Please click on setup and configure the AppDynamics credentials. Using this view, splunk will store AppDynamics credentials in encrypted mode.
  7. If you want to add more entries to the events.conf or metrics.conf without restarting splunk, please find the python
    processes running for metrics.py and events.py and kill them. It will automatically get restarted and it will pick up the new configurations in the conf files.

Splunk Indexes

For metrics, an index called "appdynamics" is created.
For events, an index called "appdynamics_events" is created.

Metrics

  1. Launch the AppDynamics App in Splunk.
  2. Enter index=appdynamics in the Search field of the AppDynamics App in Splunk.

AppDMetricsOnSplunk.png

Events

  1. Launch the AppDynamics App in Splunk.
  2. Enter index=appdynamics_events in the Search field of the AppDynamics App in Splunk.

AppDEventsOnSplunk.PNG

Proxy Support

If the connection to the AppDynamics controller has to go through a proxy, you need to replace the following line
from the metrics.py and events.py

myhttp = httplib2.Http(timeout=10)

Replace the above line with

myhttp = httplib2.Http(timeout=10,proxy_info = httplib2.ProxyInfo(httplib2.socks.PROXY_TYPE_HTTP, 'localhost', 8000))

Please make sure to replace 'localhost' and 8000 with the correct proxy settings.

SSL Support

If the connection to the AppDynamics controller is over SSL, you can import the certificates by replacing the following
line from the metrics.py and events.py

myhttp = httplib2.Http(timeout=10)

Replace the above line with

myhttp = httplib2.Http(timeout=10,ca_certs = '<path_to_certificate>')

Please make sure to replace '<path_to_certificate>' with the correct path in your environment.

Cross App linking to AppDynamics

  1. Add the following field extraction section to your $SPLUNK_HOME/etc/apps/search/default/props.conf file:

    [source::http-simple]  
    EXTRACT-AppD = url="http[s]?:\/\/(?&lt;nurl&gt;[^"|]+)"
    
  2. Add the following workflow action to your $SPLUNK_HOME/etc/apps/search/default/workflow_actions.conf file:

    [LaunchAppD]  
    display_location = both  
    fields = url  
    label = Launch in AppDynamics  
    link.method = get  
    link.target = blank  
    link.uri = http://$!nurl$  
    type = link
    

Dependencies

The appdynamics splunkbase app depend on the open source library httplib2.

Custom Notifications in Splunk from AppDynamics

AppDNotificationsOnSplunk.png

Launching AppDynamics from Splunk

On an event in the Splunk Search App, click the blue pulldown and choose Launch in AppDynamics. See the screenshot above.

Contributing

Always feel free to fork and contribute any changes directly via GitHub

Community

Find out more in the AppSphere community.

Support

For any questions or feature request, please contact AppDynamics Center of Excellence.

Release Notes

Version 4.2.5
Nov. 12, 2016

v4.2.5
* added support for ssl.
* cleaned up the path structure to use $SPLUNK_HOME.
* Commented out props.conf,transforms.conf and lookup_app,py and lookup_bt.py functionalities as the controller api in 4.2 now returns entity name information. Keeping it still there for compatibility reasons.
* Added more documentation.
* keeping the versions compatible with the controller releases.

69
Installs
1,937
Downloads
Share Subscribe LOGIN TO DOWNLOAD

Subscribe Share

Splunk Certification Program

Splunk's App Certification program uses a specific set of criteria to evaluate the level of quality, usability and security your app offers to its users. In addition, we evaluate the documentation and support you offer to your app's users.

Are you a developer?

As a Splunkbase app developer, you will have access to all Splunk development resources and receive a 50GB license to build an app that will help solve use cases for customers all over the world. Splunkbase has 1000+ apps and add-ons from Splunk, our partners and our community. Find an app or add-on for most any data source and user need, or simply create your own with help from our developer portal.

Follow Us:
© 2005-2017 Splunk Inc. All rights reserved.
Splunk®, Splunk>®, Listen to Your Data®, The Engine for Machine Data®, Hunk®, Splunk Cloud™, Splunk Light™, SPL™ and Splunk MINT™ are trademarks and registered trademarks of Splunk Inc. in the United States and other countries. All other brand names, product names, or trademarks belong to their respective owners.