Agent Installation
This document has been created based on the Oracle Monitoring V2. For the Oracle monitoring V1 document, see the following.
The following guides you to the basic installation method for using the WhaTap database monitoring service.
To use the WhaTap monitoring service, after Sign in, create a project and install the agent to the target server. For more information about registration as a member, see the following.
Creating a project
Create a project before installing the agent.
-
Log in WhaTap monitoring service.
-
To create a project, on the left of the screen, select All Projects > + Project.
-
Select a product in Select product for installation.
-
Configure the settings for Project name, Data server region, and Time zone.
-
In Notification language setting, select the language for alert messages.
-
After all settings are finished, select Creating a project.
-
A Data server region refers to a region (a bundle of data centers installed to provide cloud services). Selecting a specific region stores your data in the datacenter that belongs to that region.
-
Time zone is the reference time for generating alerts and reports.
-
To group multiple projects for management, select a group from Project groups or add a group. For more information about grouping, see the following.
-
To add a project with an organization selected, Groups of organization must be set.
Checking the configuration diagram
The DBX agent can be installed on a separate server or on the DB server. Select a method how to install the agent and check its configuration and firewall.
Install on a separate server | Install on the DB server |
---|---|
Account creation
Create an account with roles required for database monitoring. Log in with the root account and then create accounts.
-
In general cases
SQLcreate user {DB_User} identified by {DB_Password};
grant create session to {DB_User};
grant select any dictionary to {DB_User}; -
In case of using a multi-tenant DB in 12c or later: Add the prefix
c##
.SQLcreate user c##{DB_User} identified by "{DB_Password}";
grant create session to c##{DB_User};
grant select any dictionary to c##{DB_User};
alter user c##{DB_User} set container_data = ALL container = CURRENT; -
in case of using the kill session
SQLgrant alter system to {DB_User}
-
In case of viewing the hidden parameters
SQLcreate view sys.whatap_vw_ksppi as select * from sys.x$ksppi;
grant select on sys.whatap_vw_ksppi to {DB_User};
create synonym {DB_User}.whatap_vw_ksppi for sys.whatap_vw_ksppi;
create view sys.whatap_vw_ksppcv as select * from sys.x$ksppcv;
grant select on sys.whatap_vw_ksppcv to {DB_User};
create synonym {DB_User}.whatap_vw_ksppcv for sys.whatap_vw_ksppcv;
-
In case of using the connection analysis feature
SQLgrant select on sys.v_$session to {Appication_service_account};
Support features for each role
The roles other than the Default role do not need to be assigned depending on the environment. However, some functions may not work.
Role | command (Single DB) | command (Multitenant DB) | Menu and feature | Details |
---|---|---|---|---|
Default role | grant create session to whatap; | grant create session to c##whatap; | Access | - |
grant select any dictionary to whatap; | grant select any dictionary to c##whatap; | Monitoring a Database Instance / Monitoring Multiple Instances / SQL Statistics | When granting individual roles, see the following table | |
- | alter user c##whatap set container_data = ALL container = CURRENT; | When using a multi-tenant DB (12C or higher), this is a required role to query the pdb. | ||
Session kill | grant alter system to whatap; | grant alter system to c##whatap; | Active sessions > Session kill | - |
Hidden parameter query | create view sys.whatap_vw_ksppi as select * from sys.x$ksppi; grant select on sys.whatap_vw_ksppi to DB_User; create synonym DB_User.whatap_vw_ksppi for sys.whatap_vw_ksppi; | Hidden parameters are included in the parameter query menu. | To query hidden parameters, separate view/synonym creation and role assignment are required. | |
create view sys.whatap_vw_ksppcv as select * from sys.x$ksppcv; grant select on sys.whatap_vw_ksppcv to DB_User; create synonym DB_User.whatap_vw_ksppcv for sys.whatap_vw_ksppcv; |
Instead of select any dictionary
, you can grant the following roles individually.
Role | command (Single DB) | command (Multitenant DB) |
---|---|---|
Active sessions / Lock tree / Metrics information | grant select on v_$sqlarea to whatap; | grant select on v_$sqlarea to c##whatap; |
grant select on v_$transaction to whatap; | grant select on v_$transaction to c##whatap; | |
grant select on v_$instance to whatap; | grant select on v_$instance to c##whatap; | |
grant select on v_$sysstat to whatap; | grant select on v_$sysstat to c##whatap; | |
grant select on v_$lock to whatap; | grant select on v_$lock to c##whatap; | |
grant select on v_$sesstat to whatap; | grant select on v_$sesstat to c##whatap; | |
grant select on v_$event_name to whatap; | grant select on v_$event_name to c##whatap; | |
grant select on v_$session to whatap; | grant select on v_$session to c##whatap; | |
grant select on v_$sql to whatap; | grant select on v_$sql to c##whatap; | |
grant select on v_$process to whatap; | grant select on v_$process to c##whatap; | |
grant select on v_$statname to whatap; | grant select on v_$statname to c##whatap; | |
grant select on v_$system_event to whatap; | grant select on v_$system_event to c##whatap; | |
grant select on v_$osstat to whatap; | grant select on v_$osstat to c##whatap; | |
grant select on v_$px_session to whatap; | grant select on v_$px_session to c##whatap; | |
grant select on v_$sga to whatap; | grant select on v_$sga to c##whatap; | |
- | grant select on v_$con_sysstat to c##whatap; | |
Parameter information | grant select on v_$parameter to whatap; | grant select on v_$parameter to c##whatap; |
Wait information / Event information | grant select on v_$event_name to whatap; | grant select on v_$event_name to c##whatap; |
grant select on v_$system_event to whatap | grant select on v_$con_system_event to c##whatap; | |
grant select on v_$system_wait_class to whatap; | grant select on v_$system_wait_class to c##whatap; | |
- | grant select on v_$con_system_wait_class to c##whatap; | |
Tablespace information | grant select on dba_data_files to whatap; | grant select on cdb_data_files to c##whatap; |
grant select on dba_free_space to whatap; | grant select on cdb_free_space to c##whatap; | |
grant select on dba_temp_files to whatap; | grant select on v_$sort_segment to c##whatap; | |
grant select on v_$temp_extent_pool to whatap; | grant select on v_$tempfile to c##whatap; | |
grant select on v_$containers to whatap; (12c 이상) | grant select on v_$containers to c##whatap; |
-
To use the previous accounts, go to Create DB User File. If you do not have any permission, you may not be able to proceed with normal monitoring.
-
In the example code,
whatap
is the DB user account name. Change it to your account name.
- Enter your password in
DB_Password
in the example code.
Checking the access key
The access key is the unique ID to enable the WhaTap service.
In the installation guide section, select Getting the access key. After the access key has been issued automatically, proceed to the next step.
After a project has been created, the Agent installation page appears automatically. If the Agent installation does not appear, select Management > Agent installation on the left of the screen.
Downloading the DBX agent
Download the DBX agent file. Use the following two methods.
-
You can download it by using the 'wget' command.
BASHwget -O whatap.agent.database.tar.gz "https://service.whatap.io/download/dbx_agent?type=oracle&format=tar.gz"
-
If you cannot download it with the command, select Download on the WhaTap monitoring service screen.
Download the DBX agent file and then unzip it.
tar -zxvf whatap.agent.database.tar.gz
For users who cannot download tar files due to security settings, ZIP files are also provided. On the installation screen, select the .zip Download button.
DBX Agent Setting
Follow the instructions on the agent installation screen to configure the agent. By entering the required items on the screen, the configuration and commands can be auto-completed.
whatap.conf configuration
Go to the unzipped folder and then check the whatap.conf file. In whatap.conf, enter the project access key, WhaTap server data, and DB connection data.
license={AccessKey}
whatap.server.host=13.124.11.223/13.209.172.35 # WhaTap server information
dbms=oracle
db={DB_Name(SID)}
db_ip={DB_Server_IP}
db_port={DB_Server_Port}
exclude_background=3
Downloading JDBC
Download the JDBC driver that matches the operating system and version of the database server to the DBX agent path where you unzipped the file. /unzipped folder/jdbc
Oracle 10g R2 or later: https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html
In /unzipped folder/jdbc/README.md, you can also see the JDBC driver installation paths for each database.
DB user file creation
Generate an encrypted UID for database connection. Enter the username and password and then run the shell script (or batch file).
- Linux
- Windows
./uid.sh {DB_USER} {DB_PASSWORD}
-
After setting it once, it collects data from the database server to be monitored through the encrypted UID.
-
To create a DB user file, enter the project access key in the whatap.conf file. Checking the access key
-
In the Azure database environment, enter
DB_USER
in the form of DB_USER@DB_name. -
If special characters are included in
DB_USER
orDB_PASSWORD
, enter the escape character (\) together before any special characters.Example./uid.sh whatap whatap\!pwd
# If there are multiple special characters, add the escape character(\) for each.
./uid.sh whatap whatap\!\@pwd
uid.bat "DB_USER" "DB_PASSWORD"
-
After setting it once, it collects data from the database server to be monitored through the encrypted UID.
-
To create a DB user file, enter the project access key in the whatap.conf file. Checking the access key
-
In the Azure database environment, enter
DB_USER
in the form of DB_USER@DB_name. -
On Windows, the escape character (
\
) is not required for special characters in a password. However, it is required when using double quotes ("
) within the password.
Viewing the default plan
When creating the default plan user file, you can configure the agent to automatically view the plan by using the predefined DB information.
- Linux
- Windows
-
Add the
plan_db
option to the agent configuration (whatap.conf) file and then enter the DB name.whatap.confplan_db=(dbname)
-
After configuring the DB, use the
planuid.sh
script to set the user and password../planuid.sh user pwd
NoteIf the user (
user
) and password (pwd
) include special characters, add backslashes (\
) before each special character.e.g.
user$example
→user\$example
-
Add the
plan_db
option to the agent configuration (whatap.conf) file and then enter the DB name.whatap.confplan_db=(dbname)
-
After configuring the DB, use the
planuid.bat
script to set the user and password.planuid.bat user pwd
Starting the monitoring
Execute a shell script (or batch file) from the path where you have installed the agent.
- Linux
- Windows
./start.sh
To use it like a daemon, execute the following command. However, it works only in the environment where nohup has been installed.
./startd.sh
start.bat
Check whether there are any errors in the execution log displayed on the screen, and check whether a chart appears normally on the dashboard screen (Instance List). If there is no problem, press Ctrl+C to terminate the execution, and then register it as a Windows service in the following order.
Registering a service
Execute the following command to register a service.
install_WindowsService.bat create WhatapDBXAgent
When a service is registered, you can check it in the service management tools as shown below. Find the service, right-click it, and then select the Start option to start the service.
In Control Panel > Windows Tools > Services (services.msc), you can start or stop the WhatapDBXAgent service. Depending on the Windows version, the service path may differ.
Deleting a service
Execute the following command to delete a service.
install_WindowsService.bat delete WhatapDBXAgent
You completed installing the agent for database monitoring. In the following, check the post-installation checklist.
Installing the additional agent (XOS) and applying other options
To additionally monitor the resources of the database server, run a separate XOS agent process on the database server to collect data.
-
It can be applied to only the OS environment running on the x86 architecture.
-
The additional agent installation process is optional.
- For more information about the XOS agent configuration options, see the following.
- To additionally collect and monitor monitoring metrics provided by cloud services on the dashboard of the database project, see the following.
Set the following options in the whatap.conf file in the path where the DBX agent has been installed. Move the xos folder ( Set the following options in the xos.conf file in the xos path moved to the database server. In Agent Installation, when you enter the DB data to DB Agent IP and DB Agent Port, the agent options are automatically generated. Run the XOS agent. To transmit monitored data to the DBX agent, the port set to To run the XOS agent in the background, run the ./startd.sh file. Run the agent with a batch file in the xos folder. After confirming that there are no errors in the execution log displayed on the screen and terminating the execution, register for the service in the following order. How to fix missing of msvcp120.dll and msvcr120.dll If you cannot run the xos agent because the msvcp120.dll and msvcr120.dll files are missing, it is because Microsoft Visual C++ 2013 Redistributable 2013 is not installed or is corrupted. You can resolve this issue by installing the Microsoft Visual C++ 2013 Redistributable Package. Download and install the package that matches the system environment from the following link. Service registration Register in the service by running the install_WindowsService.bat file in the xos folder as follows. If you do not enter a name after the Deletion of a service To transmit monitored data to the DBX agent, the port set to Configuring the whatap.conf file
xos=1
xos_port=3002/unzip folder/xos/
) to the database server.Configuring the xos.conf file
dbx_ip={DB_Agent_IP}
dbx_port=3002 # default 3002
cpu_limit=0
mem_limit=10240Running the XOS agent
./start.sh
dbx_port
(default 3002) must have been open. (UDP Outbound)start.bat
Microsoft Visual C++ 2013 Redistributable (x86 & x64)
create
option, the service is registered by default with the name of WhatapXOSAgent.install_WindowsService.bat create WhatapXOSAgent
install_WindowsService.bat delete WhatapXOSAgent
dbx_port
(default 3002) must have been open. (UDP Outbound)
Next steps
-
Checking the installation
If you have created a project, installed an agent, and applied all agent options, see the checklist in the following.
-
Installation troubleshooting
It provides various problems that may occur when installing the agent and specific instructions for resolving them. For more information, see the following.
-
Agent setting
It provides various features for monitoring by applying some options to the agent configuration file (whatap.conf). For more information, see the following.
To additionally monitor the database server resources, set more options in the additional agent (XOS). For more information, see the following.
-
Cloud Settings
To additionally collect and monitor monitoring metrics provided by cloud services on the dashboard of the database project, see the following.
-
Starting the monitoring
After configuring all settings, the agent starts collecting metrics data from the database server. First, check whether the monitoring data has been collected in Instance List. For more information about Instance List, see the following.