DBX Agent Setting
This document has been created based on the Oracle Monitoring V2. For the Oracle monitoring V1 document, see the following.
Write the settings for the DBX agent in the whatap.conf file. For the options that can be set, see the following.
Default options
-
license String
To install the agent, set the project access key granted from the server. The project access key includes the agent's project and the encryption key for secured communication.
-
whatap.server.host String
Default
127.0.0.1,127.0.0.1
Specify the IP address of the collection server to transfer the data collected by the agent. If there are multiple IP addresses for collection server redundancy, use comma (,) as the delimiter. The collection server proxy daemon must be serviced in the listening state for the set IP address.
-
whatap.server.port String
Default
6600
Set the port of the collection server. Because only one port can be set, use the same port set in the "whatap_server_host" option.
-
dbms String
oracle
CautionIf other option values are entered, data collection for monitoring may not work.
-
db_ip String
Set the IP address of the database server to be monitored.
-
db_port String
Set the port used for DB communication.
Collecting data
-
replication_name String
If you set the replication name, it is considered that there is a Master/Slave relationship between DBs with the same
replication_name
.As an option to define the replication set, if you set the
replication_name
option that has the same value for both master and slave nodes, the Monitoring a Database Instance displays a tree structure. It also provides a widget to monitor the replication status in Flex Board based on the option value.
-
skip_whatap_session Int
Default
0
If you set
1
, the session in which the query to collect from WhaTap operates, does not appear in the active session list. (Default value: 0)
-
ora_ratio Boolean
DBX agent v1.6.11 or later
Default
false
Various ratio metrics can be additionally collected. The collected metrics are:
buffer cache hit ratio
soft parse ratio
hard parse ratio
library cache hit ratio
library cache pin hit ratio
library cache get hit ratio
latch hit ratio
shared pool free mem ratio
-
interval_sec Boolean
DBX agent v1.7.3 or later
Default
true
This option is used to convert the data collected from the agent every 5 seconds in seconds (
delta
value for 1 second) and report it. -
segments Boolean
Default
true
It collects the segment size information. In Stat/Report > Tablespace Size, you can see the size by selecting the database or tablespace.
-
segments_hour Int
Default
5
Set the time to collect the segment size information. The default value is
5
and collection starts at 5 am. -
segments_min_size Int
Default
10
The minimum unit for collecting segment size information, the default value is 10 MB. When collecting segment sizes, the segment sizes less than the set value are not collected.
-
segments_exclude_sys Int
Default
1
The sizes are collected except for accounts corresponding to sys.
-
segments_sys String
Default 'SYS', 'OUTLN', 'SYSTEM', 'AUDSYS', 'DBSNMP', 'GSMADMIN_INTERNAL', 'XDB', 'WMSYS', 'OJVMSYS', 'CTXSYS', 'ORDSYS', 'ORDDATA', 'MDSYS', 'LBACSYS', 'DVSYS', 'DBSFWUSER', 'APPQOSSYS', 'OLAPSYS'
It is the list of accounts corresponding to sys. To add to the above accounts, you can add with
segments_sys+='xxx'
. -
segments_max_count Int
Default
50
Only 50 large segments are collected and stored for each tablespace.
-
xview_min_sec Int
Default
0
When collecting xview, collection is performed only when the query execution time is longer than the set time. The default setting is to collect all queries whose execution time is longer than 0 seconds.
Application of AWS RDS CloudWatch
It is the description of the agent configuration using the AWS CloudWatch. If collection is started, the data is input in metrics and can be seen in the db_oracle_counter
category under Management > Metrics Chart as well as the other metrics.
-
aws_region String
Set the AWS region.
-
aws_arn String
You can use the ARN of an IAM ROLE with appropriate roles for AWS authentication.
Required role
For the roles, the following policies are required.
Role Role details rds:DescribeDBInstances Collection of the instance class data rds:DescribeDBClusters Collection of cluster data when using the autoscale rds:DescribeDBLogFiles Collection of CloudWatch logs rds:DownloadDBLogFilePortion Collection of CloudWatch logs ec2:DescribeInstanceTypes Collection of CPU counts for each instance class elasticache:DescribeCacheClusters Collection of instance class data when using the elasticache cloudwatch:ListMetrics Collection of the list of CloudWatch metrics cloudwatch:GetMetricStatistics Collection of the values of the CloudWatch metrics logs:DescribeLogStreams Collection of CloudWatch logs (in case of using the posted logs) logs:GetLogEvents Collection of CloudWatch logs (in case of using the posted logs) -
cloud_watch String
Set whether or not to use the CloudWatch Monitoring. The value is
on
oroff
. -
cloud_watch_instance String
Set the instance name of the CloudWatch.
-
cloud_watch_interval Second
Set the interval to get monitoring values by CloudWatch (unit: second).
-
cloud_watch_metrics String
Set the monitoring metric name to be imported into the CloudWatch. You can set it as follows:
cloud_watch_metrics=CPUUtilization,FreeableMemory,FreeStorageSpace,NetworkTransmitThroughput,NetworkReceiveThroughput
Example of configuration for RDS CloudWatch collection
You must create the following default settings to monitor the RDS CloudWatch and collect the related data.
cloud_watch=on
aws_region=ap-northeast-2
# Create roles in AWS IAM and then copy and paste the role ARN value.
aws_arn=arn:aws:iam::999999999999:role/UpdateApp
cloud_watch_metrics=CPUUtilization,FreeableMemory,FreeStorageSpace,NetworkTransmitThroughput,NetworkReceiveThroughput
#Example of the instance name
cloud_watch_instance=pg-rds
-
For more information about the role ARN, see the following link.
-
For information on how to collect data after granting the RDS CloudWatch metric collection role to EC2 without using the IAM ROLE's ARN value, see the following.
Applying the AES 256 encryption
The WhaTap DBX agent transfers the collected data to the server after encryption. You can change this depending on the importance of the data or setting. Basically, the XOR operation and encryption through the AES algorithm are used, and encryption and decryption are performed by dividing the plain text into 128-bit units. It can be expanded up to 256 bits depending on the setting.
Add the following options to the whatap.conf file in the path where the WhaTap DBX agent has been installed.
cypher_level=256
Add the settings and then restart the agent.
Identifying the agent name
Details
Agent Name Setting
In the WhaTap monitoring service, the term, "object" is used for comprehensive meaning of a monitoring target, and it is sometimes used interchangeably with the agent. To distinguish the objects to be monitored, the different names must be used. WhaTap identifies the target through the object name and object ID.- The object (agent) names must be unique on a project basis.
- Object ID = CRC32 (object name). If the object ID or name has been changed, the previous data is not connected.
WhaTap basically uses the data collected from database servers to identify each server while collecting monitoring data. Basic information uses the database server as a unique identifier by a combination of database server type, IP address, service port, and such. If necessary, use the name set by the user or change the pattern to a unique value. The agent name must be unique.
The reason why the data extracted from the application server is used, is like the following. When a communication loss of the collection server and agent caused by the stop of the database server, network disconnection, or agent problem is restored, the continuity of the data from the reconnected agent is maintained.
-
object_name String
Default
{type}
-{ip2}
-{ip3}
-{port}
It is an agent naming (ONAME) scheme to identify database servers. An OID is created based on the ONAME.
Configuration Description {type}
Use the value set in whatap.app_name
.{ip0}
The first byte of the IPv4 address is used. (e.g. 10 in 10.11.12.13) {ip1}
The second byte of the IPv4 address is used. (e.g. 11 in 10.11.12.13) {ip2}
The third byte of the IPv4 address is used. (e.g. 12 in 10.11.12.13) {ip3}
The fourth byte of the IPv4 address is used. (e.g. 13 in 10.11.12.13) {port}
Database server port {hostname}
Host name -
auto_oname_enabled Boolean
Default
false
The function to automatically obtain the agent name (oname) from the server is activated. Upon application, the options for
-Dwhatap.name
and-Dwhatap.oname
are ignored. It obtainsoname
through communication with the collection server and then starts the agent's normal operation. -
auto_oname_prefix String
Default
agent
When an agent name is automatically granted from the server, the prefix of the agent name (business name as usual) is used. The prefix + serial number (from 1) is assigned.
-
auto_oname_reset Int
Default
0
Modify it to obtain a new agent name from the server. If the agent name is automatically granted, the system environment variable,
whatap.oname
is set. Once set, the system environment variables are not changed until the Java instance is restarted. For a reset, modify the value ofauto_oname_reset
. If you change it to a value different from the current setting, it is to be applied.