AppFirst has partnered with the following companies. Click on a name to view the integration instructions.
If you are an Engine Yard user, you have the ability to activate AppFirst in the add-on marketplace. Through our partnership, AppFirst is already running on every Engine Yard instance (that means yours!). Activating AppFirst in your environment is a quick and easy process (don’t get intimidated by all the steps, we’re just thorough at AppFirst).
From cloud.engineyard.com, go to the Engine Yard Cloud Add-ons. Once you’re there, click on the AppFirst logo.
You will then be taken to the Activation page. Here you can see the details and pricing for the for AppFirst Add-on. Click the “Set it up” button under the logo to continue.
A new window will open that will prompt you to enter an email address, customer name, and password. These should be the same as your Engine Yard credentials.
After signing up, you’ll be asked to activate AppFirst on an application (environment). Select your chosen environment from the drop down menu and select “Activate.”
You can activate or deactivate multiple applications (environments) here.
Once you’ve added an application (environment), click on the name of the of the application (environment) to get to the next screen.
For the examples below, we click on the text “Test (9aws_64-6).”
You will then be taken to the Environment page. Here you can see the settings and alerts for this Environment.
By clicking “Apply,” you save any configuration change you may have made and you finish setting up this environment.
*Note: After you click “Apply” it will take a moment for the environment to set up and any changes to set.
During this time a progress bar will appear to the left of the environment name. Wait until the bar changes to a green light to continue.
After you setup your Environment, go back to the Add-on marketplace.
Once enabled, you will see an “Enabled” banner along the upper right corner. Click on the AppFirst logo to continue.
Now you will be on the Activation page again. To get to AppFirst and see your data, click “AppFirst Dashboard” in the upper right.
A new window will open to the AppFirst Workbench. Here you can start exploring the different areas of the product and see your data.
Browse through the rest of our documentation to learn more about the AppFirst product.
As a New Relic user, you can integrate all of your data into AppFirst. Data you’re able to integrate some of your New Relic data into the AppFirst Dashboard.
How the Integration Works
To get New Relic data into AppFirst, we developed a module called Poll-aroid (you can learn more about Poll-aroid in our GitHub page).
Setting up the integration using AppFirst’s Poll-aroid
The following is a walkthrough for using Poll-aroid to collect data from New Relic for inclusion into the AppFirst backend. For more information on Poll-aroid, check out our GitHub page.
Finding Metrics in New Relic
First, collect the following information from your New Relic Account:
- API Key
- Application ID
- Metric Name
For the API Key, you must enable API Access in your New Relic account. You can do this by selecting Account settings from the menu on the top right of your New Relic account.
Then navigate to Integrations – Data sharing, where you can create an API key for API access:
Once you have the API key, you need to use New Relic’s API explorer to find the metrics you want to collect. The API explorer is at https://rpm.newrelic.com/api/explore/. Once you’ve selected your account from the top right, you should see the full API list on the left of the window:
If you don’t see the Metric Names and Metric Data listings, you either don’t have the account selected, or are using a Lite account, which doesn’t support API data.
If you select the Metric Names option, you will be presented with the parameters page:
This is the first place to build your API query. This requires the use of your API key previously generated, and the application_id of the application you want metrics from. You can retrieve this value from the URL in your application:
The application ID in this example is 3088471.
Once you’ve entered this data and send the request, the page will update with a JSON formatted response:
The name field is the Metric name we’ll be using with Poll-aroid to bring the data into the AppFirst data stream. Once collected, you can then integrate this data with Poll-aroid.
AppFirst’s Poll-aroid can be downloaded from our GitHub account at http://github.com/appfirst/poll-aroid. You can clone this directly onto the system conducting the polling.
We’ve provided some basic shell scripts to assist with the setup and execution of poll-aroid commands. For full command line options, running the AfPoller.py with -h (or –help), will provide a list of accepted options.
An example of collecting the Apdex score from New Relic:
AfPoller.py --plugin=newrelic --newrelic-access-key-id= --newrelic-access-app-id=3088471 -m Apdex -a Magento
This will query New Relic Application ID 3088471 and request the Apdex metric name. The -a option specifies the application name for our StatsD bucket. The New Relic API explorer returns the following for Apdex:
When the command is run, Poll-aroid will retrieve this data from New Relic’s API and feed it into the AppFirst data stream. The StatsD bucket will then contain the following:
After you’ve tested the command, we recommend using the check_newrelic.sh script to protect your API key. The last step is scheduling Poll-aroid to run.
Navigate to Admin – Setup on click on the “Polled Data” tab. Then click the server to add the script for Poll-aroid. In the Polled Data Config File, and add the script below. Then click Save.
# Retrieve Apdex Score from New Relic
Now the check_newrelic.sh script will run and collect the Apdex score. You can then view this information in AppFirst using the StatsD name.
Viewing New Relic Data in the Dashboard
To view New Relic data in your Dashboard, you can use the StatsD widget. Select the metric you’d like to view as well as any other configurations, then click Save.
Viewing New Relic Data in Correlate
In Correlate, your New Relic data is listed under StatsD. You can search for it by typing “NewRelic” into the search bar. The metric will show up and include the New Relic account number you’ve used to connect with.
*Note: For each tenant, it’s possible to set up multiple New Relic accounts. The account name is used as part of the StatsD names.
Alerting on New Relic Metrics
You can also set up alerts on any of your New Relic metrics. Head to Admin – Setup and click on the Alerts tab. Choose StatsD as the Source Type, and then select the New Relic metric you’d like to alert on from the list of StatsD metrics. Choose the recipients for the alert, then click save.
AppFirst integrates with PagerDuty to provide you with more enhanced alerting capabilities. That means you get AppFirst’s robust alerting features and PagerDuty’s notification, on-call, and escalation solution, combined into a complete alert management solution.
Create PagerDuty & AppFirst accounts if you haven’t already.
PagerDuty Configuration Steps
There are steps that need to be completed in PagerDuty in order to integrate AppFirst alerts. In general, users must:
- Create a PagerDuty API key
- Create one or more PagerDuty services that AppFirst alerts will be routed to
Create a PagerDuty API Key
In PagerDuty, navigate to the ‘API Access’ page. Enter a description for a new API key and click ‘Create Key.’ The new API key should now be listed in the table of API access keys.
Create a PagerDuty Service
In PagerDuty, navigate to the ‘Services’ page and click ‘Add New Service.’
Select ‘Generic API system’ and click the ‘Add service’ button.
AppFirst Configuration Steps
With PagerDuty configuration completed, it’s time to configure AppFirst.
Add PagerDuty in AppFirst
Navigate to Admin and click where it says “Admin Market” with a dotted line around where a widget would be.
This takes you into our Admin Market where you can configure all of our partner integrations. Click the “Add” button in the PagerDuty widget. A popup will display asking you to input your Account ID, API Key, and an optional Account Name.
- Note: Your Account ID is the first part of your PagerDuty subdomain, e.g. CompanyName of CompanyName.PagerDuty.com
Once you add your API Key, you should see a green check which verifies your API Key. Click OK to finish the setup. A PagerDuty widget will now display in your Admin page.
Viewing PagerDuty Services
To view your PagerDuty services, navigate to Admin – Setup. Then click on the Alerts tab, and then the Services tab. All of your PagerDuty Services should be listed there.
Configuring AppFirst Alerts with PagerDuty Services
Whether you’re creating a new alert or editing a current one, you can configure the alert to send to PagerDuty. Once you have the alert set up and selected at least one recipient, click on the Services tab to enable that alert to be sent to that Service. Finish up by clicking the Save button.
View AppFirst Alerts in PagerDuty
Alerts from AppFirst will now be displayed in the PagerDuty dashboard. Alerts will be continue to be sent according to your PagerDuty settings.
Viewing Resolved Alerts
If the AppFirst alert condition is no longer being met or if the alert is manually resolved through the AppFirst Alerts page PagerDuty will automatically be notified of the resolution.
How the Integration Works
To get AppDynamics data into AppFirst, we developed a module called Poll-aroid (you can learn more about Poll-aroid in our GitHub page).
AppDynamics Configuration Steps
From AppDynamics, the following information should be gathered from your account:
- Controller Name (Url)
- Account Name
- User Name
- Account Access Key/Password
An example of this account information is shown below:
Next, get the metric path names for each metric that will be collected in the AppFirst product. This can be accomplished using the “metric browser” which lists a tree of all metrics available for an application instance.
Using the metric browser, use either “Copy Full Path” or “Copy REST URL.” For this example, we’ll copy the Full Path. Ensure you also take note of the Application – for example, “TreehouseTest” in our example screenshot.
Also note, with the Metric option, you can specify an asterisk to grab all metrics available in the metric tree as listed in the AppDynamics browser.
Alternatively, a check_appdynamics.sh script is provided.
Setting up the Integration using Poll-aroid
Once the AppDynamics metrics have been chosen, it’s time to finish the AppFirst configuration. This includes installing the AppDynamics package, configuring metrics to be collected, and creating dashboards or correlated views.
Start by installing the AppDynamics plugin to the system where the AppFirst collector is running. This can be done either through AppFirst’s GitHub, or from the package downloaded from the AppDynamics Exchange. This package has been cloned to the repo directory /usr/share/appfirst/plugins/libexec, which is the default storage location for AppFirst.
git clone https://github.com/appfirst/poll-aroid/
The following supporting python modules should also be installed:
Python for Linux
In order to install Python modules, from the Linux command line, utilize your favorite python package manager. For example, PIP:
sudo pip install requests
sudo pip install afstatsd
Python for Windows
For Windows, ActiveState Python supplies PyPM. Run the PyPM terminal, and use the command:
pypm install requests
For AFStatsD on Windows, you’ll need to download our Windows extended collector at:
Once downloaded, from the command line run:
python setup.py install
Configuration of AppDynamics Metrics
It’s time to build the script execution and add the AppDynamics metrics to the AppFirst configuration.
For AppDynamics the options are:
Usage: AfPoller.py – AppFirst Poller for AppDynamics
-h, –help –> show this help message and exit
-P PLUGIN, –plugin=PLUGIN –> [REQUIRED] Name of plug in appdynamics
-u USERNAME, –username=USERNAME –> AppDynamics username (usually name@domain format)
-p PASSWORD, –password=PASSWORD –> AppDynamics password
-a APPNAME, –application=APPNAME –> Name of your AppDynamics Application
-H HOSTNAME, –hostname=HOSTNAME –> Host name (including port) of your AppFirst Controller
-m METRICPATH, –metricpath=METRICPATH –> AppDynamics path (with \| separators) to the metric to poll. You may use wildcards ‘*’
As an example for Business Transactions, we arrive at the following command:
/usr/bin/python /usr/share/appfirst/plugins/libexec/poll-aroid/AfPoller/AfPoller.py --plugin=appdynamics -u username@account -p access_key -H controller_hostname -m "Business Transaction Performance|Business Transactions|novobiopharm|/my.aspx/results|Average Response Time (ms)" -a TreehouseTest --test --dry-run
The –test and –dry-run options execute the command, verbosely, without sending data to our backend. This is a good way to verify the information you are collecting. Once verified, you can remove these options and save the command in your Collector configuration.
Within the AppFirst product, navigate to Admin – Setup, click on the “Polled Data” tab, then click on the server you’re configuring. Below is an example of the command that should be added to the config file and what it looks like in the Polled Data Config editor:
command[ADPoll.TreehouseTest]=/usr/bin/python /usr/share/appfirst/plugins/libexec/poll-aroid/AfPoller/AfPoller.py –plugin=appdynamics -u appfirst@appfirst -p access_key -H appfirst.saas.appdynamics.com -m “Business Transaction Performance|Business Transactions|novobiopharm|/my.aspx/results|Average Response Time (ms)” -a TreehouseTest
Viewing AppDynamics Data in the Dashboard
To view AppDynamics data in your Dashboard, you can use the StatsD widget. Select the metric you’d like to view as well as any other configurations, then click Save.
Viewing AppDynamics Data in Correlate
In Correlate, your AppDynamics data is listed under StatsD. Once you search and find your metrics, you can click on them to add them to Correlate.
Alerting on AppDynamics Metrics
You can also set up alerts on any of your AppDynamics metrics. Head to Admin – Setup and click on the Alerts tab. Choose StatsD as the Source Type, and then select the AppDynamics metric you’d like to alert on from the list of StatsD metrics. Choose the recipients for the alert, then click save.
For details on how to integrate your CloudWatch data into AppFirst, visit our GitHub page.