0% found this document useful (0 votes)
13 views44 pages

ADDB292 Install and Get Started 13march2015

Uploaded by

retrogradeview
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views44 pages

ADDB292 Install and Get Started 13march2015

Uploaded by

retrogradeview
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

Install and Get Started

AppDynamics for Databases


Version 2.9.x

Page 1
Install and Get Started with AppDynamics for Databases . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Supported Environments and Versions for AppDynamics for Databases . . . . . . . . . . . . 3
Required Database Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Install AppDynamics for Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Install AppDynamics for Databases and AppDynamics Controller on the Same Host . 13
13
Tuning the AppDynamics for Databases mySQL Database . . . . . . . . . . . . . . . . . . . . 13
Enable AppDynamics for Databases Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
SSL Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Start AppDynamics for Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Licenses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Collectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Setup Monitoring of Database Servers and NetApp Servers . . . . . . . . . . . . . . . . . . . 30
Verify Collector Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Integrate and Use AppDynamics for Databases with AppDynamics Pro . . . . . . . . . . . . 33
Integrate AppDynamics for Databases with AppDynamics Pro 3.7 and higher . . . . . 34
Integrate AppDynamics for Databases with AppDynamics Pro 3.6 . . . . . . . . . . . . . . 36
Resolve Installation Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Manually Map a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Use AppDynamics Pro with AppDynamics for Databases . . . . . . . . . . . . . . . . . . . . . 39

Page 2
Install and Get Started with AppDynamics for
Databases
AppDynamics for Databases can monitor three categories of collectors. There are several collector
types within these categories. The following lists the supported databases, servers, and storage
systems now supported:
Database Collector: DB2, GreenPlum, mongoDB, Microsoft SQL Server, Microsoft SQL
Azure Database, MySQL, Oracle, PostgreSQL, Sybase ASE, and Sybase IQ
Server Collector: IBM AIX Server, Linux Server, Solaris Server, and Windows Server
Storage Collector: NetApp and NetApp E-Series

Supported Environments and Versions for AppDynamics for


Databases
For large scale deployments, or where monitored systems are extremely busy, please contact
AppDynamics Support for installation recommendations and assistance.
On this page:
Systems that AppDynamics for Database Monitors
Hardware Requirements
Network Requirements
Compatible Operating Systems
Compatible Browser

Systems that AppDynamics for Database Monitors


Once AppDynamics for Databases is up and running, you can create collectors that run on the
AppDynamics for Databases server to monitor any of the following systems:

System System Type Version


Category

Databases

DB2 LUW 9.x, LUW 10.x

GreenPlum

Microsoft SQL Server 2000, 2005, 2008, 2012, and 2014

Microsoft SQL Azure


Database

Copyright © AppDynamics 2012-2015 Page 3


MySQL all versions including Percona and
MariaDB

MongoDB 2.2 and higher

Oracle 8i, 9i, 10g, 11g, and 12c

PostgreSQL 8+
Supported on Amazon RDS

Sybase ASE 12.5+

Sybase IQ 15+

Servers

IBM AIX Server

Linux Server 64-bit

Solaris Server all versions

Windows Server 32-bit (will also work on 64-bit systems)

Storage

NetApp FAS 7 mode, Clustered Data ONTAP

NetApp E-Series Arrays

AppDynamics for Databases collectors are not installed on the monitored systems.

Hardware Requirements
AppDynamics for Databases can be installed on physical or virtual machines.
You should install AppDynamics for Databases on a dedicated machine.
Installation package: 142 MB Windows, 140 MB Linux
Disk space usage after installation: 614 MB
Disk space required for historical data storage:
100 MB per database collector (for data retention period = 1 week)
10 MB per server collector (for data retention period = 1 week)
Minimum recommended hardware:
1-10 collectors: 2 GB RAM, Single CPU, 1 disk
10-20 collectors: 4 GB RAM, 2 CPUs, 1 disk
More than 20 collectors: 8 GB RAM, 4 CPUs, fast disk

Copyright © AppDynamics 2012-2015 Page 4


Minimum Memory requirements:
512 MB for AppDynamics for Databases Repository
512 MB AppDynamics for Databases GUI
100 MB per collector
For information on hardware requirements of the AppDynamics Controller, see AppDynamics Pro,
Controller System Requirements.

Requirements for Demo and Small Profile Environments

AppDynamics for Databases is an on-premise solution and can be installed on the same server as
the AppDynamics Pro Controller, or on a different server. In either case it requires 1 CPU and
2GB of RAM to monitor a single database instance. If you install it on the Controller server, these
resources are in addition to the Controller resources. Also, change the default port number so it
doesn't conflict with the Controller.

Network Requirements
The machine on which the database is running or the machine you want to monitor must be
accessible from the AppDynamics for Databases installation machine. This machine must
have a network connection, internet or intranet.
If there is a firewall, the database listener port (and optionally the SSH or WMI port) must be
open.

Compatible Operating Systems


Microsoft Windows platforms, including Windows 7 and Windows 8. The AppDynamics for
Databases application is 32-bit, which is compatible with both 32-bit and 64-bit servers.
Linux versions/platforms. 64-bit systems are supported. The Asynchronous I/O library, libaio
must be installed before installing AppDynamics for Databases.

Compatible Browser
For better navigation and performance, use Chrome or Safari.
Google Chrome 1.x and later
Safari 4.x and later
Mozilla FireFox 3.x and later
Internet Explorer 7.x and later

GUI Performance Considerations

The charts and reports within AppDynamics for Databases are created with JavaScript;
consequently, the speed at which they are rendered depends on the performance of the
JavaScript engine within the Browser. For this reason, although AppDynamics for Databases is
supported on any browser, we recommend using better performing browsers, such as Chrome and
Safari.

Copyright © AppDynamics 2012-2015 Page 5


Required Database Permissions
On this page:
IBM DB2 (LUW) Database Permissions
Microsoft SQL Server Database Permissions
Mongo Database Permissions
MySQL Database Permissions
Oracle Database Permissions
PostgreSQL Database Permissions
Sybase ASE Database Permissions
SQL Azure Database Permissions
Permissions Required for Explain Plans

Each monitored database requires permissions for the AppDynamics for Databases user so that it
can gather important monitoring data. The database user is specified when you are adding a
collector. Before adding the collector, ensure a user for the collector is available with the required
permissions as stated below. The monitor user must be able to connect to the database remotely
from the AppDynamics for Databases machine. The permissions required are database
dependent.

IBM DB2 (LUW) Database Permissions


For complete AppDynamics for Databases functionality the following monitoring switches of the
DB2 server need to be enabled: "BUFFERPOOL", "LOCK", "SORT", "STATEMENT", "TABLE",
"TIMESTAMP", and "UOW".
You can enable these monitoring switches by the following commands:

update dbm cfg using dft_mon_uow on;


update dbm cfg using dft_mon_stmt on;
update dbm cfg using dft_mon_timestamp on;
update dbm cfg using dft_mon_lock on;
update dbm cfg using dft_mon_bufpool on;
update dbm cfg using dft_mon_table on;
update dbm cfg using dft_mon_sort on;

The monitoring user needs SYSMON authority and connect privileges to monitor. In general, this
user must be a part of the sysmon_group.

Additional Permissions Required for DB2 LUW 9.7 and later

grant execute on function SYSPROC.MON_GET_PKG_CACHE_STMT to user <appddb>

Additional Permissions Required for DB2 LUW 10.1 and later

Create new user account called appd4db. Ensure that it has SYSMON authority.

grant select on SYSIBMADM.mon_current_sql to user appd4db

Copyright © AppDynamics 2012-2015 Page 6


grant select on SYSIBMADM.SNAPSTMT to user appd4db
grant select on SYSIBMADM.SNAPAPPL_INFO to user appd4db
grant execute on function SYSPROC.MON_GET_PKG_CACHE_STMT to user appd4db

Microsoft SQL Server Database Permissions


The user account used for monitoring can be a Windows authenticated account (if AppDynamics
for Databases is running on Windows) or SQL Server authenticated (if AppDynamics for
Databases is running on Windows or Linux).

Windows Authentication

If you would like to use a Windows authenticated account to connect to the SQL Server database,
the following is required:
When creating the collector from the Collector Administration -> Add Collector window,
do not specify a username and password.
Configure the AppDynamics for Databases collector windows service to log on as the
desired windows account with SQL Server access.
1. Go to the Windows Services GUI from Control Panel.
2. Select the AppDynamics for Databases collector service, DBTuna Agent - SQL
Server, and right click to display the properties.
3. Click on Log On and then enter the credentials for the user.
Configure the AppDynamics for Databases GUI windows service, DBTuna GUI, to log on
as the desired windows account with SQL Server access.
1. Go to the Windows Services GUI from Control Panel.
2. Select the AppDynamics for Databases GUI service, DBTuna GUI, and right click to
display the properties.
3. Click Log On and then enter the credentials for the user.
If you are running your AppDynamics for Databases software on Linux, then you must use SQL
Server authentication.

Minimum Permissions Required

You can use the procedure below to create a user with the minimum permissions required.
If you are using Windows Authentication, leave the username/password blank when you add the
collector. You then have to change the Logon account for the Windows AppDynamics for
Databases collector service. See Using Windows Authentication to Monitor SQL Server.
Use the following to create a logon user that provides the minimal level of permissions required in
order to gain full AppDynamics for Databases/SQL Server functionality.
a. Using SQL Server Management Studio, create a new login for AppDynamics for
Databases.

Copyright © AppDynamics 2012-2015 Page 7


b. From the User Mapping tab, map the new user to the master and msdb databases.

Viewing Object Information


To view object information on the AppDynamics for Databases Objects tab, map the
monitoring user to the databases of interest.

1. Once you have created the login, give the following privileges to the user, substituting

Copyright © AppDynamics 2012-2015 Page 8


1.

<userName> with the name you specified on the Login - New window:
Note: You can execute the following as a batch from a query window in Management Studio.
The example shows grants to appdynamics_user, remember to change this if you have set up
a different login.

use master
GRANT VIEW ANY DATABASE TO appdynamics_user;
GRANT VIEW ANY definition to appdynamics_user;
GRANT VIEW server state to appdynamics_user;
GRANT SELECT ON [sys].[sysaltfiles] TO [appdynamics_user]
GRANT execute on sp_helplogins to appdynamics_user
GRANT execute on sp_readErrorLog to appdynamics_user

use msdb
GRANT SELECT on dbo.sysjobsteps TO [appdynamics_user]
GRANT SELECT on dbo.sysjobs TO [appdynamics_user]
GRANT SELECT on dbo.sysjobhistory TO [appdynamics_user]

Mongo Database Permissions


For MongoDB versions prior to 2.6.X, the readAnyDatabase and ClusterAdmin built-in roles are
required in order to monitor using AppDynamics for Databases.
For MongoDB 2.6 and later, the new ClusterMonitor built-in role has all the required privileges.

MySQL Database Permissions


The MySQL user AppDynamics for Databases uses to monitor the MySQL database, must have
"SELECT", "PROCESS", and "SHOW DATABASES" privileges on all databases.
If you do not have a suitable existing user, you can use a command such as the following to create
a new user; where “host” is the hostname or IP address of the machine running AppDynamics for
Databases, and “password” is a suitably secure password:

GRANT SELECT,PROCESS,SHOW DATABASES on *.* to 'appd4db'@'host' identified by


'password';
FLUSH privileges;

Oracle Database Permissions


For versions of Oracle prior to 10g

The permissions required for the Oracle user are:


CONNECT

Copyright © AppDynamics 2012-2015 Page 9


SELECT ANY DICTIONARY
To create a user with these permissions, you can run the following SQL. In this SQL, change
"password" to a safe and secure password, and change the tablespace names, "users" and "temp"
to those available in your Oracle instance.

CREATE user appd4db IDENTIFIED BY password


default tablespace users
temporary tablespace temp;

GRANT CONNECT, SELECT ANY DICTIONARY, resource to appd4db;

For versions of Oracle 10g and later

The permissions required for the Oracle user are :


CREATE SESSION
SELECT_CATALOG_ROLE
To create a user with these permissions, you can run the following SQL. In this SQL, change
"password" to a safe and secure password, and change the tablespace names, "users" and "temp"
to those available in your Oracle instance.

CREATE USER appd4db IDENTIFIED BY password


default tablespace users
temporary tablespace temp;

GRANT CREATE SESSION, SELECT_CATALOG_ROLE TO appd4db;

PostgreSQL Database Permissions


The monitoring user must be superuser and must be able to connect remotely to the PostgreSQL
instance from the AppDynamics for Databases machine. For information on how to allow users to
authenticate from a remote client machine, see http://www.postgresql.org/docs/8.3/static/auth-pg-h
ba-conf.html.
For complete AppDynamics for Databases functionality, the "track_activities" parameter must be
enabled on the PostgreSQL server.

Sybase ASE Database Permissions


For complete AppDynamics for Databases functionality, the monitoring user requires the sa_role
and mon_role privilege.
To create a new dedicated user for AppDynamics for Database, you can use following sample
user creation script. Before running the script, change "password" to a more secure value.

Copyright © AppDynamics 2012-2015 Page 10


exec sp_addlogin 'appd4db', 'password', @defdb='master',
@deflanguage='us_english', @fullname='appd4db monitoring account', @auth_mech =
'ANY'
go
exec sp_locklogin 'appd4db', 'unlock'
go
exec sp_role 'grant', 'sa_role', 'appd4db'
go
exec sp_role 'grant', 'mon_role', 'appd4db'
go

Also, the following configuration parameters must be set to 1 (true) in order to monitor the Sybase
ASE database with AppDynamics for Databases: "enable monitoring", "wait event timing", "SQL
batch capture", and "object lockwait timing". You should also set "max SQL text monitored" to at
least 8192 (8kB).
Here is an example of the commands required to configure these settings:

sp_configure "enable monitoring", 1


go
sp_configure "wait event timing", 1
go
sp_configure "SQL batch capture", 1
go
sp_configure "object lockwait timing", 1
go
sp_configure "max SQL text monitored", 8192
go

If the value for "max SQL text monitored" was previously less than 4096, then increasing this
setting will require that you restart the Sybase ASE instance.

SQL Azure Database Permissions


The monitoring user requires “VIEW DATABASE STATE” permission.

Permissions Required for Explain Plans


AppDynamics for Databases can generate explain plans within its SQL drilldown window. To
enable this functionality, you must have a plan table accessible to the AppDynamics for
Databases schema user. You can create this plan table with the following command from sqlplus
when logged on as the AppDynamics for Databases monitoring user:
Windows:

@?\rdbms\admin\utlxplan.sql

Copyright © AppDynamics 2012-2015 Page 11


Linux:

@?/rdbms/admin/utlxplan.sql

Install AppDynamics for Databases

On this page:
Prerequisites
Install on Windows
Install on Linux
Related pages:
Enable AppDynamics for Databases Security

Prerequisites
Before installing, ensure your environment meets the requirements stated in Supported
Environments and Versions for AppDynamics for Databases.
If you're installing in an AppDynamics Pro environment, see Integrate and Use
AppDynamics for Databases with AppDynamics Pro

Install on Windows
Unzip and double-click the executable package, AppD-Database-x.x.x.x-Setup.exe to start the
setup process.
The Windows processes for AppDynamics for Databases start at the end of the installation.

Install on Linux
Note: Do not install AppDynamics for Databases as the root user.
1. Use the following command to decompress the executable package:

gunzip <download_file>.tar.gz

2. Run the ./start.sh script from the installation directory to start the processes for
AppDynamics for Databases.
Note: You should edit /etc/init.d to include running the AppDynamics for Databases startup
script so the AppDynamics for Databases processes will start automatically on reboot.

Copyright © AppDynamics 2012-2015 Page 12


See also Enable AppDynamics for Databases Security.

Install AppDynamics for Databases and AppDynamics Controller on the


Same Host
On this page:
Requirements for Demo and Small Profile Environments
Prevent and Resolve Port Number Conflicts

Requirements for Demo and Small Profile Environments

AppDynamics for Databases is an on-premise solution and can be installed on the same server as
the AppDynamics Pro Controller, or on a different server. In either case it requires 1 CPU and
2GB of RAM to monitor a single database instance. If you install it on the Controller server, these
resources are in addition to the Controller resources. Also, change the default port number so it
doesn't conflict with the Controller.

Prevent and Resolve Port Number Conflicts

When installing AppDynamics for Databases on the same host as the AppDynamics Pro
Controller, there is a port conflict. Both products use port 8090 for the UI by default. That means
that the AppDynamics for Databases UI server will fail to start after the install. You must change
the port number and then restart the server.
Change the Port Number of the AppDynamics for Databases UI Server
1. Open the following file in a text editor:
<AppD4DB install directory>/apache-tomcat/conf/server.xml.
2. Find the only line containing 8090 and change the number to the number of the desired
port.
Note: We recommend that you use port 9090. Do not use 8091 because this port is used for
the MySQL connection between AppDynamics for Databases and the MySQL server
database where it stores the captured data, and do not use port 8092 either because that is
the default shutdown port specified in the Tomcat server.xml file.
3. Restart the AppDynamics for Databases process as follows:
Windows: Restart the Windows services named: DBTuna_GUI and DBTuna_DB.
Linux: From the AppDynamics for Databases home directory, run ./start.sh

Tuning the AppDynamics for Databases mySQL Database


The AppDynamics for Databases server stores the information returned by the database or host
collectors, in a mySQL database. For large installations, greater than 50 collectors, you may need
to tune this database to improve performance. Consider changing the values of the mySQL server

Copyright © AppDynamics 2012-2015 Page 13


innodb_buffer_pool_size and max_connections variables to obtain optimal performance.
The values to use are environment dependent and you may need to experiment with several
different values before the mySQL database operations are optimized.

Enable AppDynamics for Databases Security


On this page:
Setup Basic Security
Implement authentication
Setup LDAP/Active Directory Integration
Enable Authentication Tracking
Monitor Access Attempts

If you run AppDynamics for Databases on a publicly accessible server, or if you'd like to lock down
its usage internally, then the simplest solution is to username/password protect access to the
UI. You have the option to setup basic security, best for an environment where very few users will
have access to the AppDynamics for Databases GUI, or you can integrate AppDynamics for
Databases with your LDAP server to grant many users and groups access.

Setup Basic Security


AppDynamics for Databases has three predefined users:
admin: The administrator is has the permissions of all three security role resources:
Administration Access, Read-Only Access, and masterUser Access. The default password
for the admin user is "admin".
readonly: The readonly user has the permissions of only the Read-Only Access Role. The
default password for the readonly user is "readonly".
master: The master user has the permissions of the appd4db-admin role. The default
password for the master user is "welcome".
AppDynamics for Databases has three predefined security roles resources:
Administration Access: Provides total control over AppDynamics for Databases. Users
created with this role can perform all functions. The default role name for the Administration
Access security role resource is "admin".
Read-Only Access: Provides read-only access to AppDynamics for Databases. Users
created with this role cannot add collectors, licenses or create alerts. This user has access
to all the database, server, and NetApp activity pages and reports. The default role name for
the Read-Only Access Access security role resource is "readonly".
masterUser Access: Provides access only to the Security Setup page, where the master
user can modify passwords for basic authentication, modify security role names, and can
change the LDAP/Active Directory configuration. The default role name or the Read-Only
Access Access security role resource is "readonly".
Note: The role name in the Security Roles section has to match an LDAP Group that the LDAP
user belongs to. For example, if I log into AppDynamics for Databases with user = "Bob" and
"Bob" belongs to the LDAP group "AppD4DB-readonly" then the name "AppD4DB-readonly" has to

Copyright © AppDynamics 2012-2015 Page 14


be a role name within one of the Security Roles.
These users and roles are initially configured in <AppD4DB install
dir>\apache-tomcat\conf\tomcat-users.xml and <AppDInstallDir>\apache-tomcat\conf\web.xml,
respectively. Passwords are encrypted. You can change the passwords and rolenames on the
AppDynamics for Databases Security window.

tomcat-users.xml
<tomcat-users>
<role rolename="admin"/>
<role rolename="readonly"/>
<role rolename="appd4db-admin"/>
<user
password="8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918"
roles="admin,readonly,appd4db-admin" username="admin"/>
<user
password="8171bacf32668a8f44b90087ad107ed63170f57154763ba7e44047bf9e5a7be3"
roles="readonly" username="readonly"/>
<user
password="280d44ab1e9f79b5cce2dd4f58f5fe91f0fbacdac9f7447dffc318ceb79f2d02"
roles="appd4db-admin" username="master"/>
</tomcat-users>

Note: Do not change the contents of tomcat-users.xml.

Implement authentication
1. At the bottom of <AppD4DB install directory>\apache-tomcat\conf\web.xml, look for the
following code:

Note: Do not change the contents of web.xml except as instructed below.


2.

Copyright © AppDynamics 2012-2015 Page 15


2. Insert a closing XML comment tag after "Password protect AppDynamics for Database
pages". The closing XML comment tag is "–>".
3. Remove the closing XML comment tag before "</web-app>". The closing XML comment tag
is "–>".
4. Save the file and then restart the AppDynamics for Databases UI service.
Windows: Go to the Windows services manager and restart "DBTuna GUI".
Linux: From the AppDynamics for Databases install directory, run the stop.sh script
followed by the start.sh script.
5. In a browser, go to the security page. For example, http://<hostname>:8090/security.
The following dialog appears where you can setup basic security or enable LDAP/Active
Directory Service integration for AppDynamics for Databases:

6. Enter the passwords for the admin and readonly users and then click Modify Password.
To change the password of a user, enter the password twice in the boxes provided and then
click Modify Password.
7. You can change the role name of any of the security roles resources by entering the new
Role Name and then clicking Modify Role Name.
When you have security enabled, users must enter the security credentials to access the
AppDynamics for Database GUI. The appearance of the logon dialog differs depending on
the browser used to access the AppDynamics for Databases GUI. The following is the logon
dialog as it appears in Windows Internet Explorer9.

Copyright © AppDynamics 2012-2015 Page 16


If you enter the wrong username/password combination, the uncompleted logon dialog
reappears so you can re-enter your credentials.
If you try to access a page not accessible to the role to which your username has been
assigned, you will receive a security violation error.

Setup LDAP/Active Directory Integration


When LDAP/Active Directory is integrated, your LDAP and Active Directory users matching the
filters defined in this section, will be granted AppDynamics for Databases permissions.
Prerequisite: Setup Basic Security
1. Open <AppD4DB install directory>\apache-tomcat\conf\server.xml, locate the line beginning

Copyright © AppDynamics 2012-2015 Page 17


1.
with <!--Realm adCompat... and remove the comment tags from the beginning and end of
that line.
2. Save the file and then restart the AppDynamics for Databases UI service.
Windows: Go to the Windows services manager and restart "DBTuna GUI".
Linux: From the AppDynamics for Databases install directory, run the stop.sh script
followed by the start.sh script.
3. In a browser, go to the security page. For example, http://<hostname>:8090/security.
4. Scroll down the Security Setup window, you will see the following sections that you must
complete and then click Save Config to integrate your LDAP or Active Directory Service
server with AppDynamics for Databases.

To complete the fields in the LDAP/Active Directory Authentication section

Your LDAP/Active Directory server administrator should provide you with the values you need to
complete this section.
The following helps you understand the requirements of each property name field of the
LDAP/Active Directory Authentication section:
masterUsername: The AppDynamics for Databases user name of the master user or of an
administrator.
masterPassword: The password for the master user.

Copyright © AppDynamics 2012-2015 Page 18


connectionName: The user name AppDynamics for Databases uses to log on to the LDAP
or Active Directory server.
connectionPassword: The password for the user AppDynamics for Databases uses to log on
to the LDAP or Active Directory server.
connectionURL: The URL of the LDAP or Active Directory server
userBase: The starting point for the search for users in the LDAP directory tree. This is
referred to as the distinguished name. You can specify the search base using the following
comma-separated objects, which are not case-sensitive:
CN: common name
OU: organizational unit
O: organization
C: country
DC: domain
userSubtree: Set this value to "true" to search through the entire user subtree.
roleSearch: The filter to use for searching groups.
roleName: The name of the role.
roleSubtree: Set this value to "true" to search through the entire role subtree.
roleBase: The starting point for the search for roles.

Enable Authentication Tracking


To log failed and successful logon attempts, add the following code to the end of <AppD4DB
install directory>\conf\logging.properties.

logging.properties
org.apache.catalina.realm.level = ALL
org.apache.catalina.realm.useParentHandlers = true
org.apache.catalina.authenticator.level = ALL
org.apache.catalina.authentical.useParentHandlers = true

Monitor Access Attempts


You can check to see who has been successful and unsuccessful attempts to log on to the
AppDynamics for Databases UI in the catalina.<date>.log file located in <AppD4DB Install
directory>\apache-tomcat\logs. The contents of this file can help you determine whether you have
correctly configured the LDAP/Active Directory settings; if the user cannot log on, their logon
attempts will show in this file.

SSL Communications
On this page:
Enable SSL Communications

When passwords are passed between the browser and the AppDynamics for Databases server,

Copyright © AppDynamics 2012-2015 Page 19


you may want to enable SSL communications to protect those passwords. Use this procedure to
enable SSL communications.

Enable SSL Communications

1. Stop the UI service via the ./stop.sh script (if on Linux) or via the DBTuna GUI windows
service (if on Windows
2. Generate and apply the keystore with the following procedure.
a. Navigate to <AppD4DB_install_directory>/jdk/bin and run the following command and
proceed with the prompted steps.

keytool -genkey -alias tomcat -keyalg RSA -keystore appd4db.keystore

b. Copy the generated keyfile to the apache-tomcat/webapps directory.


3. Edit the <AppD4DB_install_directory>/apache-tomcat/conf/server.xml file as follows:
a. Locate the string "SSL HTTP/1.1 Connector on port 8443" in the file.
b. Uncomment <connector > or change it with the following tag, where

keystoreFile is the location of the keystore file generated in the following section
keystorePass=<password which will generate as part of keystore gen

==============
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="200" scheme="https" secure="true" clientAuth="false"
sslProtocol="TLS"
keystoreFile="webapps/appd4db.keystore" keystorePass="password"/>
==============

For example,

Note: The default port is 8443 but you can change it to another unused port number if
you like, such as 8181.
4. To re-direct HTTP traffic to HTTS traffic an additional security constraint is required in
web.xml. Within the Read-Only Access web-resource, an additional user-data-constraint
should be added the following:
<user-data-constraint>

Copyright © AppDynamics 2012-2015 Page 20


<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>

5. Restart the UI service via the ./start.sh script (if on Linux) or via the “DBTuna GUI” windows
service.
6. You can now access the AppDynamics for Databases UI and confirm that it is enabled via
HTTPS.

Start AppDynamics for Databases


On this page:
Start up on Windows
Start up on Linux

Start up on Windows
Once installation is complete, the Main Menu automatically loads in the default browser.
Alternatively, on the machine where you installed AppDynamics for Databases, browse to

http://localhost:portNumber

where "portNumber" is the port number specified during installation for use by AppDynamics for
Databases.
You can also connect to the AppDynamics for Databases GUI from another networked machine
(internet or intranet) by browsing to

http://serverName:portNumber

Copyright © AppDynamics 2012-2015 Page 21


where "serverName" is the hostname or IP address of the machine on which AppDynamics for
Databases is installed and "portNumber" is the port number specified during installation for use by
AppDynamics for Databases. The default port is 8090.
Initially, there are no collectors reporting. Next you must add the license and collectors .
Licenses
Collectors
When AppDynamics for Databases starts initially, in the Windows Services (Control Panel ->
Sevices), you will see new entries, DBTuna GUI ad DBTuna_DB. Once you have added
collectors, you will see an additional service for each collector, DBTuna Agent - "CollectorName".

Automating Startup on a Windows Machine

When AppDynamics for Databases starts initially, in Windows -> Control Panel -> Services, you
will see new entries, DBTuna GUI ad DBTuna_DB. Once you have added collectors, you will see
an additional service for each collector, DBTuna Agent - "CollectorName". Ensure the Startup
Type column for each service is set to Automatic.

Start up on Linux
1. Run the ./start.sh script from the directory where you extracted the AppDynamics for
Databases installation package (also referred to as:<AppD4DB install directory>).
2. Then open a URL to:

http://serverName:portNumber

where "serverName" is the hostname or IP address of the server running AppDynamics for
Databases and "portNumber" is the port number specified in the /apache-tomcat/conf/serv
er.xml configuration file for use by AppDynamics for Databases. The default port is 8090.
The Main Menu opens. Initially, there are no collectors reporting. Next you must add the license
and collectors.
Licenses
Collectors

Automating Startup on a Linux Machine

When AppDynamics for Databases starts initially, in the processes list (cmdshell: ps), you will see
new entries, DBTuna GUI ad DBTuna_DB. Once you have added collectors, you will see an
additional service for each collector, DBTuna Agent - "CollectorName".
The start.sh script only starts the AppDynamics for Databases controller, that is the Tomcat GUI
and the MySQL repository.
To automatically start the collectors you need to include in the startup script an additional call for
each collector.
For example,

Copyright © AppDynamics 2012-2015 Page 22


<AppD4DB install directory>/agent/start<DBType>Agent.sh <CollectorName>
Where
" DBType" is the database type, such as ORACLE and MYSQL
and
"CollectorName" = the name you gave the collector on the AppDynamics for Databases Setup
window.
For example, if you had a MySQL collector called prod-mysql and an Oracle collector called
dev-oracle you could create a startAllCollectors.sh script in the agent directory which included the
following lines:

startAllCollectors.sh
./startMYSQLAgent.sh prod-mysql
./startORACLEAgent.sh dev-oracle

You can the call the startAllCollectors.sh script and the AppDynamics for Databases start.sh script
from another script to starts all the AppDynamic for Databases processes.

Licenses
On this page:
Licenses for AppDynamics for Databases 2.9 and
Higher
Licenses for Versions Prior to 2.9

Licenses for AppDynamics for Databases 2.9 and Higher


AppDynamics for Databases now supports the same concurrent licensing supported by other
AppDynamics products. You can add and use collectors up to the number of concurrent licenses
you purchased. Each collector you configure consumes one license. If you configure more
collectors than you are licensed to use, none of your existing collectors will work until you delete
one of the collectors or add more licenses.
When you purchase, upgrade or apply for a trial of AppDynamics for Database, the email from
AppDynamics will have an attachment, license.lic that is your license file. This license file will
have an attribute, property_no-of-db-agent-license-units that indicates the number of concurrent
licenses you have.

Register a New License with the AppDynamics for Databases Server

Copy the license.lic file to the <AppD4DB install directory>/apache-tomcat directory. AppDynamics
for Databases automatically recognizes the license.

Copyright © AppDynamics 2012-2015 Page 23


The Setup page shows how many concurrent licenses you have and how many you have
consumed. Each collector you configure consumes one license.
Until you apply a license, either through the License page, as described in For Versions Prior to
2.9 or by adding the license.lic file to the apache-tomcat directory as described above, the
Licenses area in AppDynamics for Databases 2.9 and higher indicates that no licenses have been
added.
However, if you have already added licenses purchased before upgrading to the 2.9 release or
higher, when you go to the Licenses tab, you will see your license keys.

Licenses for Versions Prior to 2.9


Once you have purchased or applied for a trial of AppDynamics for Databases, you will receive an
email from AppDynamics Support with your license key. Your license key is tied to the number of
Collectors you have configured, one Collector per database instance or per NetApp controller. At
the end of the installation, when the AppDynamics for Databases UI runs for the first time, you are
prompted to enter your license key. To apply your key:
1. Click Setup -> Add License.
2. Copy your license key from the email AppDynamics Support sent you, paste it in the License
Key box, and then click Add License.
The License Management window displays the added license.

Collectors
On this page:
Add a Collector
Database Specific Collector Configuration

You can create collectors that run on the AppDynamics for Databases server to monitor any of the
following systems:
Databases: DB2, GreenPlum, Microsoft SQL Server, Microsoft SQL Azure Database, Mong
oDB, MySQL, Oracle, Oracle RAC, PostgreSQL, Sybase ASE, and Sybase IQ
Servers: Linux Server, Solaris Server, and Windows Server
Storage: NetApp and NetApp E-Series

Add a Collector
1. Click Main Menu->Setup->Add Collector.

Copyright © AppDynamics 2012-2015 Page 24


2. Complete each field of the Add New Collector window and then click Add Collector.

Copyright © AppDynamics 2012-2015 Page 25


3. After you add a collector, the new collector appears on the Collector Administration window.

You will also now see your collectors on the Main Menu.

Copyright © AppDynamics 2012-2015 Page 26


To change any of the collector attributes, click its name in the Name column of the Collector
Administration window. The Edit Collector Configuration window appears where you can
change the collector attributes except the Type and Name attributes.
The license is based on the number of concurrent databases monitored. If you configure more
collectors than you are licensed to use, all your collectors will stop and you will need to delete
collectors until you no longer exceed the maximum number of licensed instances. A licenses
message similar to the following displays:

Use the following to help you complete the fields of the Add New Collector/Edit Collector
Configuration window. The fields that display depend on the type of collector you selected.

Complete the Metric Collector Section

Type: Select the collector type. There are three categories of collectors and collector types within
these categories:
Database Collectors: DB2, mongoDB, Microsoft SQL Server, Microsoft SQL Azure
Database, MySQL, Oracle, PostgreSQL, and Sybase ASE
Server Collectors: AIX Server, Linux Server, Solaris Server, or Windows Server
Storage Collectors: NetApp, NetApp E-Series
Once you select the Type, the fields displayed may change because the information required
differs between collector types. The type appears in the Type column of the Collector
Administration window.
Name: This name uniquely identifies the monitored instance as it appears in the Name column of

Copyright © AppDynamics 2012-2015 Page 27


the Collector Administration window.
For versions prior to 2.9: Enter the name exactly as it is appears on the license.
For versions 2.9 and higher: Enter a name of your choice.
For Microsoft SQL Azure, specify "SQLAzure" in the Name field.
Hostname or IP Address: Specify the hostname or IP address of the machine serving the
database. The hostname or IP address appears in the Hostname column of the Collector
Administration window.
Database: Specify the database name, named instance or SID of the database to monitor.
SID or SERVICE_NAME: (Oracle) Specify the services name or SID of the database to monitor.
Click either SID or SERVICE_NAME to indicate which database identifier you are using.
Failover Partner: (Microsoft SQL Server) If you use Database Mirroring, enter the hostname of the
IP address of the Failover Partner here.
EnterpriseDB?: (Postgre) Click if your Postrgre database installation is an EnterpriseDB distributio
n.
Connect as a sysdba: (Oracle) Click if you want to connect as user sys and enable password files.
Running the collector using a sysdba account allows the collector to monitor an Oracle instance in
standby mode, an instance that is used for failover which is being replicated from the main active
instance.
Database Listener Port: Specify the TCP/IP address of the port the database uses for
communicating with the AppDynamics for Database (App4DB) controller. The database list port
appears in the Listener Port column of the Collector Administration window.
Username: Specify the name of the user AppDynamics for Databases uses to connect to the
database. This user must have the Required Database Permissions
Password: Specify the password of the user AppDynamics for Databases uses to connect to the
database.
Aggregation Interval: Specify the time interval at which AppDynamics for Databases should write
out the performance data to the repository. Shorter aggregation intervals provide more granularity
and closer to real-time access to data; however, more disk space is required to store historical
data and there will be a small increase in overhead as the target system is queried more
frequently. For more information, see Configure the Aggregation Interval.
Logging Enabled: Click to enable verbose mode logging, which logs all communications between
the controller and the collector. Enable only during troubleshooting because logging can consume
a lot of disk space. If you have enabled logging, you can click the logging icon in the Log column of
the Collector Administration window to view the log file. The log files are located in the <App4DB
install directory>\agent directory and have the format CollectorName_out.log and CollectorNam_er
r.log.

Complete the Host Collector Section

Microsoft SQL Azure Database


Host metric collection is not supported for the Microsoft SQL Azure Database platform.

Copyright © AppDynamics 2012-2015 Page 28


Monitor OS?: Click if you want CPU consumption metrics collected from the monitored host. For
more information, see Infrastructure Monitoring (Monitor OS?).
OS Type: Specify the operating system of the monitored host: Linux, Solaris, or Windows.
Hostname: Specify the hostname or IP address of the monitored host.
SSH Port (Linux/Unix Only): Specify the Secure Shell (SSH) port number AppDynamics for
Databases should use for encrypted communications with the monitored host. The default port
number of 22 will be used if you do not specify a different port number here. AppDynamics for
Databases also supports certificate-based authentication via Privacy Enhanced Mail (PEM). To
implement certificate-based authentication, copy the PEM file to the <AppD4DB install
directory>\agent directory.
Username: Specify the name of the user AppDynamics for Databases uses to log on to the
monitored host. To collect OS metrics from a Windows host, the configured user (or Collector
Service user if using Windows Authentication) must be able to establish a WMI connection to the
target host and collect Windows Performance Counters.
Password: Specify the password of the user AppDynamics for Databases uses to log on to the
monitored host. The number of echo characters shown in the password text field should not be
interpreted to imply the number of characters stored for the (encrypted) user password.

Database Specific Collector Configuration


Configure a Collector for MongoDB

You only need to configure a MongoDB collector for any one node of the replicaset (either a
primary, or any secondary) as AppDynamics for Database will automatically discover all other
nodes. To configure the AppDynamics for Databases collector you will need the IP address and
the TCP port number of the mongod daemon.
For a Sharded environment, you only need a collector that connects to the mongo daemon.
AppDynamics for Databases will discover all of the replicasets in the cluster based on that one
connection, and shouldn’t have connections configured for each replicaset.

Configure a Collector for a Microsoft SQL Server Cluster

In a SQL Server cluster environment with two virtual nodes, primary and master, configure the
AppDynamics for Databases collector with the cluster IP address and the TCP port number of the
SQL Server instance. The DBA can provide you with the instance IP address and port address,
but if not you find this information in the Microsoft SQL Server Configuration Manager GUI.

Configure a Collector for Microsoft SQL Azure Database

Configure the collector for the Microsoft SQL Azure Database as you would the Microsoft SQL
Server, with the following exceptions:
Specify "SQLAzure" in the Name field.
Host monitoring is not supported.

Configure a Collector for Oracle RAC

Copyright © AppDynamics 2012-2015 Page 29


To monitor an Oracle Real Application Cluster (RAC), you must configure a collector for each
instance of the RAC cluster. On startup, the Oracle collector detects whether it is monitoring a
RAC or a single-instance database. If the collector detects a RAC, it finds the other instances in
the RAC and combines the metadata for both instances.
The collector setup is as normal, with the exception of the Oracle SID which is often confused in
an Oracle RAC set up. Whereas normal RAC clients connect to the cluster via the service name,
AppDynamics for Databases needs to connect to each node individually via the local instance
name. To find out the local instance name you need to connect via sqlpls (or equivalent) and run
the following command:

SQL> show parameter instance_name;

Setup Monitoring of Database Servers and NetApp Servers


On this page:
Monitor Linux, Solaris, and AIX Servers
Monitor Windows Servers
Configure Windows Authentication to Monitor SQL
Server
Required NetApp Permissions

AppDynamics for Databases can be configured to collect CPU consumption metrics from the
monitored host. Host monitoring is not supported for the Microsoft SQL Azure Database platform.
AppDynamics for Databases supports Windows, Linux, and Solaris and gathers granular data on
server performance, which displays on the following Server tabs:
Inventory tab: Server properties such as CPU architecture and speed, Physical Memory, OS
version etc.
Procs tab: Remotely view processes on your monitored servers
Activity tab: CPU and memory consumption, and disk queue length
Disk I/O tab: Read IOPS, Write IOPS, Read Throughput MB/sec, Write Throughput MB/sec,
Average Disk Queue Length
Network I/O tab: kB/sec Sent and Received, TCP send/receive errors
To see server metrics, in the Monitored Infrastructure section of the Main Menu, click Server.
Note: To enable the Host Collector for database servers only, on the Add Collector or Edit
Collector Configuration pages you must click the Monitor OS? checkbox and enter details of OS
Type and Hostname (or IP address.)

Copyright © AppDynamics 2012-2015 Page 30


Monitor Linux, Solaris, and AIX Servers

AppDynamics for Databases can monitor Linux, Solaris, and AIX systems from any of its
supported platforms.
To collect OS metrics from Linux or Solaris, the AppDynamics for Databases Host Collector makes
an ssh connection to the monitored host to gather information using standard commands. For the
AppDynamics for Databases collector to successfully collect information, the monitored host must
support ssh connections, and the AppDynamics for Databases Host Collector must have a
hostname, username and password defined.

Monitor Windows Servers

AppDynamics for Databases can only monitor Windows from a Windows platform.
The AppDynamics for Databases Host Collector will collect OS metrics from a Windows host via
Windows Management Instrumentation (WMI). To collect OS metrics from a remote Windows
machine, the AppDynamics for Databases Host Collector must be an authenticated user;
therefore, either the username and password should be defined explicitly in the OS Monitor
settings, or the AppDynamics for Databases Windows service should be modified to run as an
authenticated user, in the same way as outlined in Using Windows Authentication to Monitor SQL
Server.

Configure Windows Authentication to Monitor SQL Server

1. When creating a collector on the Collector Setup page, do not specify a username and
password.
2. Configure the AppDynamics for Databases windows service to log on as the desired
windows account with SQL Server access.
a. Go to the Windows Services UI from Control Panel. Select the AppDynamics for

Copyright © AppDynamics 2012-2015 Page 31


2.

a.
Databases collector service and right click to display the properties.
b. Click Log On and then enter the credentials for the user.
c. Click OK, and then try starting the collector either from the services panel or from the
Collector Administration page
3. Repeat the above process for the AppDynamics for Databases GUI Windows Services.
The AppDynamics for Databases GUI windows service also needs to be configured to log on as
the desired windows account with SQL Server access; this is because to display some windows
within AppDynamics for Databases, such as the Current window and the Objects window, the UI
process needs to make a direct connection to the monitored SQL Server to request information.
If you are running AppDynamics for Databases on Linux then you must use SQL Server
authentication.

Required NetApp Permissions

For complete AppDynamics for Databases functionality in a NetApp environment, the NetApp
Metric Collector needs access NetApp API access. Depending on your environment, clustered or
non-clustered, see the following topics:
NetApp OnTap 7mode Permissions
NetApp Clustered Data OnTap Permissions
AppDynamics for Databases can use either HTTP or HTTPS (i.e. SSL) to access the performance
data. If your filer uses SSL, then just check the SSL checkbox on the Add New Collector or Edit
Collector Configuration page.
See also Map NetApp Volumes to Databases.

NetApp OnTap 7mode Permissions

Here is an example user creation script if you would like to create a new dedicated user for
AppDynamics for Databases with relevant privileges:

useradmin role add Appd4db_Role -a


api-perf-*,api-system-get-info,api-system-get-version,api-aggr-list-info,api-vol
ume-list-info,api-disk-list-info,api-snapmirror-get-status,login-http-admin
useradmin group add Appd4db_Group -r Appd4db_Role
useradmin user add appd4db -g Appd4db_Group

Required NetApp Clustered Data OnTap Permissions

Here is an example user creation script if you would like to create a new dedicated user for
AppDynamics for Databases with relevant privileges:

security login create -username appd4db -application ontapi -authmethod password


-role readonly

Verify Collector Setup

Copyright © AppDynamics 2012-2015 Page 32


On this page:
Start the Collector
Resolve Collector Startup Problems

Start the Collector

Once you've specified and saved the details for the host collector, it is ready to start collecting
performance data! On the Setup window, click the Start button for each collector.

When successfully started, the collector Status column displays a green tick symbol.

Once the collector is up and running, in just a short time you can start viewing the historical activity
data. By default, AppDynamics for Databases logs data every one minute. You configure this
aggregation interval on the Add New Collector and Edit Collector Configuration windows. For more
information see, Collectors.
The Main Menu window now has an collector icon you can click to view the activity for the
collector.

Click the collector icon to open the Activity window and see what AppDynamics for Databases has
captured for you!
For information on using and interpreting the collector windows, see Use AppDynamics for
Databases.

Resolve Collector Startup Problems

If the collector does not start and the icon in the Status column displays a red cross, then you can
view the contents of the collector log file to investigate the problem. Click the Log file icon for the
collector on the Collector Administration window. The log files are located in the <App4DB install
directory>\agent directory and have the format CollectorName_out.log.

Integrate and Use AppDynamics for Databases with AppDynamics


Pro
Configuring AppDynamics Pro to interface with AppDynamics for Databases differs depending on
the version of AppDynamics Pro you are using. See the configuration topic that applies to your
installation.

Copyright © AppDynamics 2012-2015 Page 33


Integrate AppDynamics for Databases with AppDynamics Pro 3.7 and higher
Integrate AppDynamics for Databases with AppDynamics Pro 3.6
If you are installing AppDynamics for Databases on the same host as the AppDynamics Controller,
see also Install AppDynamics for Databases and AppDynamics Controller on the Same Host.
Accessing AppDynamics for Databases from AppDynamics Pro is easy, see Use AppDynamics
Pro with AppDynamics for Databases.
In some cases AppDynamics for Databases cannot automatically recognize a database and you
need to manually map the database to an AppDynamics for Databases collector.

Integrate AppDynamics for Databases with AppDynamics Pro 3.7 and


higher
Prerequisites for AppDynamics for Databases Integration
Configuring AppDynamics to Interface with AppDynamics for Databases
To Configure AppDynamics to Interface with AppDynamics for Databases
To Configure the App Agent for Java to Interface with the AppDynamics for Databases
Oracle Collector
This topic describes how you can you link to AppDynamics for Databases from a monitored
database, server, or storage system (NetApp) that is discovered by AppDynamics and supported
by AppDynamics for Databases This integration provides access to the deep database
performance metrics provided by AppDynamics for Databases .

Prerequisites for AppDynamics for Databases Integration


To use this integration you must have an AppDynamics for Databases license.
AppDynamics for Databases must be configured to monitor the databases that you want to
link to from AppDynamics.
You need the URL of the AppDynamics for Databases server. The URL of the server is
comprised of its IP address or hostname and the port number of the server separated with a
colon. The port number defaults to 8090 when you install the server, so if you haven't
changed it, that's what it will be.
For example the URL of an AppDynamics for Databases server could
be, http://win-s7cnim71mii:8090 or http://192.168.0.27:9090
You can find the IP address of the machine where you installed the AppDynamics for
Databases server as follows:
Windows: Open a cmd window, enter "ipconfig /all". You'll see the IP address of
the server there.
Linux: Open a terminal window and enter "ifconfig -a". This command will tell
you what your IP address is. Go to http://www.wikihow.com/Check-Ip-Address-i
n-Linux for other ways to find your IP address.
In addition, if you are installing AppDynamics for Databases and the AppDynamics
controller on the same host, you may need to change the port number AppDynamics for
Databases uses because the default port number for both products is 8090. We

Copyright © AppDynamics 2012-2015 Page 34


recommend that you use port 9090. For information about changing the port number on
AppDynamics for Databases , see Install AppDynamics for Databases and AppDynamics
Controller on the Same Host.
See Linking to AppDynamics for Databases, and Integrate and Use AppDynamics for Databases
with AppDynamics Pro for information on how to access AppDynamics for Databases from the
Controller UI.
See the AppDynamics for Databases documentation for information about using AppDynamics for
Databases.

Configuring AppDynamics to Interface with AppDynamics for Databases

To Configure AppDynamics to Interface with AppDynamics for Databases

1. In the upper right corner of the menu bar, click Settings.


2. From the dropdown menu, click Administration.
3. Click the Integration tab.
4. Click AppDynamics for Databases in the Integrations list.

5. Check the Enabled check box to enable the integration.


6. Enter the URL and port number of your AppDynamics for Databases installation as follows:
http://<IPAddress or Hostname>:<server port number>
7. Click Save.

To Configure the App Agent for Java to Interface with the AppDynamics for Databases Oracle Collector

From a Transaction Snapshot Flow Map where the exit call is to an Oracle database, you can link
to AppDynamics for Databases to see and analyze the exact SQL that was running at the time of
the transaction snapshot. To enable this functionality, for the node containing the Oracle database,
you must set the App Agent for Java node property jdbc-dbcam-integration-enabled=true.

Copyright © AppDynamics 2012-2015 Page 35


Integrate AppDynamics for Databases with AppDynamics Pro 3.6
On this page:
Prerequisite:
Configure AppDynamics Pro 3.6 to Interface with
AppDynamics for Databases

Prerequisite:

If you are installing AppDynamics for Databases and the AppDynamics controller on the same
host, you may need to change the port number AppDynamics for Databases uses because the
default port number for both products is 8090. For information about changing the port number
on AppDynamics for Databases, see Install AppDynamics for Databases and AppD Controller on
the Same Host.

Configure AppDynamics Pro 3.6 to Interface with AppDynamics for Databases

1. Go to http://server:port/controller/admin.html.
2. Log in as root and select Controller Settings. You can filter on dbtuna in the box at the top.
3. Set dbtuna.integration.enabled to "true" and dbtuna.integration.url to
"http://demo1.dbtuna.com/".

4. Login to the DBTuna UI Application Dashboard.


5. On the Flow View, right-click a database backend and select Link to DB Tuna. This can be
done anywhere you see a database on the Application Dashboard, Business Transaction
Dashboard, Tier Dashboard, Node Dashboard, and transaction snapshots.

6. AppDynamics for Database displays the activity for the database selected.

Copyright © AppDynamics 2012-2015 Page 36


Resolve Installation Problems
On this page:
Unable to Link to Database from AppDynamics Pro

Unable to Link to Database from AppDynamics Pro

If you're having difficulty monitoring your database using AppDynamics for Databases in an
AppDynamics Pro environment, you may need to upgrade to use the lastest appd.jsp file. Click her
e to get the latest version of appd.jsp. Copy this file to <AppD4DB install
directory>\apache-tomcat\webapps\ROOT\dbtuna. If you're still having trouble, you may need to m
anually map your database.

Manually Map a Database


On this page:
Manually Map a Database to an AppDynamics for
Databases Collector

In some instances AppDynamics may not recognize a database when you try to link to
AppDynamics for Databases from AppDynamics Pro. This may be the case when:
the database does not provide enough information to AppDynamics for Databases in order
for it to recognize the database,

Copyright © AppDynamics 2012-2015 Page 37


the database is connected to the application server via .NET and the App Agent for .NET
cannot collect all the information necessary to automatically map the database,
an unusual configuration in your site prevents AppDynamics for Databases from
automatically mapping the database to the AppDynamics for Databases collector,
an AppDynamics for Databases collector has not been setup to monitor the selected
database instance. To resolve this issue, you must setup a collector for that database
instance.
If AppDynamics for Databases cannot automatically map the database to the collector, and there
is a collector that is monitoring that database instance, when you try to link to it from AppDynamics
Pro, you will see the following window where you can add the database to the appropriate
AppDynamics for Databases collector.

Copyright © AppDynamics 2012-2015 Page 38


If you see the above dialog when you right-click a database in AppDynamics Pro and select "Link
to AppDynamics for Databases" and you have ensured that you have the latest appd.jsp file, then
follow this procedure to manually map the database to the appropriate AppDynamics for
Databases collector.

Manually Map a Database to an AppDynamics for Databases Collector

1. At the bottom of the Custom Settings text box, enter the following:
.Net: For databases accessed by the application server via .Net and where the App
Agent for .Net is employed:

DataSource=CollectorName

Java: For databases accessed by the application server via Java and where the App
Agent for Java is employed:

HostName:Port=CollectorName

where:
DataSource is the name of the database as specified at the top of the window in a
message similar to "demoServer\database not found!". In the image above, the data
source would be 'WIN-DEMO2\SQLEXPRESS' and must be specified as
'WIN-DEMO2
SQLEXPRESS'. The backward slash in the data source name () must be escaped by
entering another slash.
HostName:Port is the name of the system hosting the database, followed by the port
number the host uses for listening for database communications.
CollectorName is the name of a collector. The available collector types and names are
displayed under the text, "Would you like to link to one of these databases instead?"
In the image above, the collector names are DB2Agent, cart, and Oracle-demo-db.

2. At the bottom of the window, click Save Mappings...


3. Return to the AppDynamics Pro window, right-click the database and select Link to
Appdynamics for Databases.
The AppDynamics for Databases database platform page for the selected database appears.

Use AppDynamics Pro with AppDynamics for Databases


On this page:
Drill Down from AppDynamics Pro
AppDynamics for Databases Platform Window
Related pages:
Use AppDynamics for Databases

Copyright © AppDynamics 2012-2015 Page 39


The following topics introduce you to linking to and using AppDynamics for Databases from within
AppDynamics Pro.

Drill Down from AppDynamics Pro

Once you have completed the AppDynamics and AppDynamics for Databases integration, from
within AppDynamics Pro you can follow the path from a transaction monitored by the App Agent
for Java, App Agent for .Net, and App Agent for PHP, through the database call and then down to
AppDynamics for Databases to see the Activity page for the SQL that was running.
Note: If you have not already configured the AppDynamics for Databases collector for that specific
database, you can provide the connection details in AppDynamics Pro, launch AppDynamics for
Databases, and then setup and license the new database collector from within AppDynamics for
Databases.
On the database flow map, right-click or CTRL-click a flow map database icon.
AppDynamics for Databases opens and recent activity for that database appears, displaying
recent activity.

On the databases dashboard, right-click a database for which you have setup an
AppDynamics for Databases collector and click Link to AppDynamics for Databases. The
Activity page for that database appears, displaying recent activity.

Copyright © AppDynamics 2012-2015 Page 40


From the Exit Calls and Async Activities window of a transaction that calls the database, you
can right-click the SQL statement to link to AppDynamics for Databases. The Activity page
for that database appears, displaying recent activity.

When using the App Agent for Java 3.8, from a Transaction Snapshot Flow Map in
AppDynamics Pro 3.8, you can follow the path of a transaction that includes a SQL call to an
Oracle database, and link to AppDynamics for Databases to view details of the specific SQL
that was running during that snapshot.
Example
1. In the AppDynamics Pro Controller UI, click Troubleshoot -> Slow Response Times.

Copyright © AppDynamics 2012-2015 Page 41


1.

2. Double-click a snapshot to investigate.

The Transaction Flow Map appears.


3. If the transaction involves an Oracle database, you can right-click the database to link to
AppDynamics for databases. The Transaction GUID at the top of the Transaction Snapshot
Flow Map is used to identify the SQL that was running during the snapshot.

Copyright © AppDynamics 2012-2015 Page 42


4. The AppDynamics for Databases Activity page appears, displaying all queries executed in
the SQL session that are associated with the transaction snapshot.

AppDynamics for Databases Platform Window

Copyright © AppDynamics 2012-2015 Page 43


When you link to AppDynamics for Databases, the AppDynamics for Databases main menu
appears. From this menu, you can select the database you want to troubleshoot. The platform
window for the selected database appears. If you are monitoring more than one database, click
Host in the top right of the window, and choose the database host to analyze.

The AppDynamics for Databases build number is at the bottom of the window. You may
need this if you need to contact technical support.

Copyright © AppDynamics 2012-2015 Page 44

You might also like