Multiple Instance Monitoring
Home > Select Project > Dashboard > Monitoring Multiple Instances
While you can monitor only one instance in Monitoring a Database Instance, Monitoring Multiple Instances allows you to see and compare the metrics for multiple instances on a screen. You can quickly see the status of instances through grouped values of instance metrics such as running agent count, total number of active sessions, and transaction information. Graph charts make it easy to see how instances' metric values are trending and which instances have higher metric values. It provides information of the longest lasting active session.
If you select an agent to compare in Dashboard > Instance List, and then select Multi view, the Monitoring Multiple Instances menu appears.
Viewing the past data
The dashboard basically provides real-time monitoring features in which you can view the past data.
Real-time mode | Non-real-time mode |
---|---|
-
Select in the time selector at the upper left of the screen.
-
Click the date and time to set the desired time zone.
-
Select Apply.
It updates the data in widgets placed on the dashboard based on the set time. To switch to the Realtime mode, select .
Checking the agent
Checking the agent connection status
On the upper left of the screen, the right area of the time selector provides information that allows you to check the status of agents connected to the project. This allows you to immediately check whether the target application server is running.
-
Total: Number of all agents connected to the project
-
Active: Number of active agents
-
Inactive: Number of inactive agents
-
: Can display or hide inactive agents.
Agent-based monitoring
By default, the dashboard displays the metrics collected from all agents in charts and you can also view the data by agent. Select one or more agents under the time selector. The data of the widgets on the dashboard is updated with the metrics of the selected agent(s).
To select all agents again while one or more agents is selected, deselect them or select Total.
If there are numerous agents connected to the project, it is efficient to set the agent names to be short. For more information about the agent name setting, see the following.
Editing a dashboard widget
The widgets on the dashboard can be adjusted to the desired size and placed in the desired positions. You can also delete unnecessary widgets or add them again.
Resizing a widget
Click and hold the mouse on the element at the lower right of the widget, and then drag it to the desired size. Grids with a uniform horizontal-to-vertical ratio appear and the size of the widget can be adjusted in each grid.
Moving a widget
When you move the mouse cursor to the top of the widget, the cursor shape changes to . At this time, you can move the widget by dragging with your left mouse button and move to the desired position.
Deleting a widget
Right-click on a widget to delete. If you select Delete, the widget is deleted from the dashboard.
Adding a widget
Move the mouse cursor to an empty space on the dashboard and then right-click on it. Select a widget to add from the pop-up menu. Place the widget to the desired position and then resize it.
-
For more information about the widgets that can be placed on the dashboard, see the following.
-
The widgets that can be added are fixed, but we plan to increase supports through future updates.
Using the widget options
The icons displayed on the widget function as follows:
-
: You can see the features and information for major widgets. (multilingual support planned)
-
or : You can enlarge or reduce the range of the vertical axis.
-
: You can view the widget's data on a wider screen.
-
: A detail window appears where you can search the data of the widgets separately by agent.
The provided options may differ depending on the widget.
Preset
You can save and load the settings and layouts for widgets on the dashboard. The default preset (Default) cannot be changed, but you can create a new preset by resizing and placing widgets in the desired format.
-
Default: This preset consists of XOS metrics, AWS RDS CloudWatch metrics, and major DB metrics.
-
Default(xos): This preset consists of XOS metrics and major DB metrics.
-
Default(rds): This preset consists of AWS RDS CloudWatch metrics and major DB metrics.
Creating a new preset
-
Place the widgets in the desired format on the dashboard. You can also resize and place only the widgets to be frequently checked.
-
On the upper right of the screen, select .
-
Enter a new preset name.
To save the selected agent data, select Include agent selection history.
-
Select Save.
You can see the newly saved preset from the preset list.
-
If any changes are made to the newly created preset, save the preset again. Select and then save the preset with the same name. Any changes are overwritten in the existing preset.
-
If you go to another menu without saving changes on the dashboard, the changes are not saved.
-
Presets are saved in your user account and cannot be shared with other users. We plan to update it for better features.
Deleting presets
If you have unused presets, you can delete them from the preset list. Select on the right of the item to delete from the preset list.
Learning about the main widgets
The types of widgets that can be placed on the dashboard are as follows.
XOS widgets
-
[XOS] CPU
You can see the CPU usages for each agent in real time.
-
[XOS] Memory
You can see the memory usages for each agent in real time.
-
[XOS] Disk Usage
Displays the disk utilizations, free sizes, and total sizes for each agent.
-
: The Disk usage details pop-up window appears. You can check the chart that displays the disk usage by time zone. You can check the data by instance. By selecting Size, Free, or Used, you can see the total size, remaining size, and size in use.
-
: You can expand the table on the widget to a wider screen.
TipIf there is no data displayed, add the following settings to the xos.conf file.
xos.conf# Off if the disk usage is 0; unit: second
disk_usage_interval=60 -
AWS RDS CloudWatch widgets
-
[RDS] CPUUtilization
You can see the CPU usages for each RDS DB instance in real time.
-
[RDS] FreeableMemory
You can see the memory usages for each RDS DB instance in real time.
-
[RDS] FreeStorageSpace
You can see the free storage space in the RDS database in real time.
For information on how to configure the agent for inquiry of AWS CloudWatch metrics, see the following.
Database widgets
-
Active Sessions
Displays a real-time chart for the number of sessions running queries.
-
DML Tuples
Displays a real-time chart for the number of statements run for DML (Data Manipulation Language).
-
Slow Query
Displays a real-time chart for slow queries for each time zone. If you drag a specific part of the chart, the Slow Query List appears. You can enlarge or reduce the range of the vertical axis by selecting or .
-
Logical I/O
The
blks_hit
metric provides a real-time chart of the total number of cases where disk blocks were found in the buffer cache and does not require reading.
-
Long Active Session Count
It provides information about active sessions running on the database for long time. A chart appears for information aggregated by time zone with grouped by the session execution time. It can identify long-running sessions with performance issues or resource leaks in the database, or classify the sessions based on the execution time to visually display which sessions stay active for long time.
It appears in blue for less than 3 seconds, green for 3 seconds or more that is less than 10, orange for 10 seconds or more that is less than 15, and red for 15 seconds or more.
-
Long Waiting Session Count
It provides information about the long-term latency of the sessions holding or waiting for locks in the database. By combining lock information and active session information, you can trace long-term latencies for queued sessions. It monitors the sessions that are holding locks or waiting for long time. You can visually see which sessions are holding locks or waiting for long time.
It appears in blue for less than 5 seconds, green for 5 seconds or more that is less than 10, orange for 10 seconds or more that is less than 60, and red for 60 seconds or more.
-
SQL Elapse Map
Displays a real-time chart for the elapsed times of running queries. If you drag a specific part of the chart, the Query List appears. You can enlarge or reduce the range of the vertical axis by selecting or .
NoteThe execution times of queries are calculated after collecting active sessions. Therefore, depending on the active session collection cycle, there may be a margin of error. See the following figure. The execution times of SQL queries that have ended within the collection cycle are not calculated. A shorter collection cycle may decrease the margin of error, but considering the database load, it is typically set to 5 seconds. It is useful for monitoring long-running queries. The same is true for the data in SQL statistics.
-
Lock Wait Sessions
Displays a real-time chart for queued counts to acquire the row lock.
-
Commit Count
Displays a real-time chart for the counts of committed transactions.
-
Replication Delay
Displays a real-time chart for the delayed times that are reflected in the replication DB in case of the replication structure.
-
Physical I/O
Displays a real-time chart for the data read counts in the physical disks.
-
Wait Event
If the backend process is currently queued, you can check the queued event names and counts. Hover your mouse over the chart to see the information through a tooltip.
Session Table widget
You can view real-time active sessions and lock trees in the Session Table widget at the bottom of the screen.
-
Active sessions: You can view active sessions and queries.
-
If you select a session running, the Session detail window appears. You can see the details for the selected session. For more information, see the following.
-
If you select an item in the rightmost query column in the table, the SQL details window appears. You can see the full text and plan information for the selected query. For more information, see the following.
-
-
Lock tree
You can see the lock session information, and holder and waiter information in real time. For more information about the table columns, see the following.
In the table list, the text colors are changed black → orange → Red, which means that the performance of the session is getting slower.
Checking the session information details
If you select a session in the Active sessions tab, the Session detail window appears. You can see the information details about the selected session.
-
The session information is viewed in real time by default. If you select in the time selector, you can stop a real-time view and see the data based on the paused time. To refresh data while pausing a real-time view, select .
-
Kill Session: You can stop the selected session. If the Session kill window appears, enter the password (Parameter Key) and then select Apply.
NoteThis feature is only available in real-time viewing mode.
-
Session history: You can go to the Session History menu to see the records of the selected session.
NoteFor more information about Session History, see the following.
-
Session Info: You can see the information details of the selected session.
-
Wait Info: If the backend process is waiting, you can see the wait event name (
wait_event
) and wait event type (wait_event_type
). -
Process_Info: You can see the process information details of the selected session.
-
SQL Text / Plan: You can see the SQL query statements and plans of the selected session. For more information, see the following.
See query details
To check the SQL query information of the current running session, select the query column in the Active sessions section. The SQL details window appears. You can check the SQL query statements and plan information.
-
View SQL Statistics: You can go to the SQL statistics menu where you can check statistical information related to the SQL query statement.
-
Default Bind: You can bind the part set as a variable in the query sentence to the default value.
-
Reset Bind: You can release the bound default value and check the variable.
-
Formatting: You can improve readability by applying indentation and formatting to a SQL query statement.
-
Plan: To check plan information, enter DB Name, User Name, and Password, and then select .
-
Text: You can check plan information in text format.
-
JSON: By viewing the plan information in Json format, you can quickly find the points where bottlenecks occur.
NoteThe function to view plan information in JSON format is supported only in DBX agent 1.6.12 or later.
-
If you select a table or index while viewing the plan information in JSON format, the Object detail window appears where you can see the configurations for columns and index items in the table.
This function is supported in DBX agent 1.6.15 or later. For more information about the database roles and related settings, see the following.
Filtering the table data
-
Select on the upper right of the table.
-
Select a column header and a condition in the table.
-
Enter a desired value in the Enter conditions field.
-
Select Save.
Configuring the table columns
You can hide the table header columns or add any of them. You can also change the column order. Select .
-
After configuration, select OK to apply the settings in the table.
-
In the search bar, enter text to search the desired columns. Only the columns that meet the entered text are displayed.
Adding columns
From the list, select the items to add as table header columns. To select all items, select Select All.
Deleting columns
From the list, unselect the columns to delete. Alternatively, select on the right of the item to delete from the list.
Changing the column order
Drag an item to reposition from the list, and then move it to the desired position.
Initializing the configuration
To cancel all changes and reset them, select Reset.
Column information guide
- Active session
- Lock tree
- Process information
Item | Description |
---|---|
pid | Process ID |
db | Database name |
user | SQL execution account |
application | Client application name |
client_host | Host name of the connected client (reported by reverse DNS lookup of client_addr ) |
client_addr | Client IP address |
client_port | Client port number (in case of using the UNIX socket -1) |
query_hash | Hash value of query (internal WhaTap control value) |
query_start | Time when the active query started (if the state is not active, it is the last query started time) |
state | Current status of the backend process (active, idle, etc.) |
state_change | Last time when the state was changed |
xact_start | Time when the current transaction for the process started (null if no transaction is active) |
backend_start | Time when the backend process started |
backend_xmin | Minimum value of xid whose backend process is being processed |
backend_type | Type of the backend process (e.g. autovacuum worker , logical replication launcher , client backend , checkpointer ) |
backend_xid | xid whose backend is being processed |
wait_event_type | Type of the event whose backend process is in standby |
wait_event | Waiting event name where the backend process is in standby |
WhaTap basically stores the client-related information.
Item | Description |
---|---|
holder type | Type of the holder session (transaction ID, tuple, etc.) |
lock mode | holder_mode (exclusive lock, shared lock, etc.) |
waiter type | Type of the waiter session (transaction ID, tuple, etc.) |
lock request | waiter_mode (exclusive lock, shared lock, etc.) |
The following items are the metrics collected if the XOS agent has been installed.
Item | Description |
---|---|
cputime | CPU usage time |
cpuusage | CPU Utilization |
elapse | Elapsed time of CPU usage |
vsize | Virtual memory size (Kb) |
rss | Resident Set Size (RSS) that is the number of physical pages associated with the process. |
state | Process status |
ioread | Actual time spent reading the block (milliseconds) |
iowrite | Actual time spent writing the block (milliseconds) |
pss | Process specific memory usage + Percentage of shared memory occupied by one process |
uid | user id |
cmd | Executing command |
longcmd | Full path of cmd |
Downloading the view list
You can download the current Session Table list in CSV format. Select on the upper right of the Session Table section.
The naming format of the downloaded file is as follows:
-
Active sessions: activeSession_HH_MM_SS.csv
-
Lock tree: lockTree_HH_MM_SS.csv
Viewing in a new window
You can see the Session Table list on a new wider screen. Select on the upper right of the Session Table section.