Covers key monitoring metrics for all core components of OceanBase Database, including its clusters, tenants, and hosts.
Query metrics
You can execute an SQL statement in the sys tenant to query the definitions of all monitoring metrics. Example:
obclient> SELECT STAT_ID, CLASS, NAME FROM V$STATNAME;
Many monitoring metrics are related to internal implementations and may be subject to changes or deletions. The specific status shall be subject to the actual situation. For details about the categories of monitoring metrics, see Monitoring metrics.
Monitoring item categories
OceanBase Database V4.x supports monitoring over 600 metrics across 15 categories, covering all key performance indicators such as network, request queue, transaction, SQL, cache, storage, resource quota, and logs. The specific categories are as follows:
Metric Category ID |
Monitoring Item Category |
Monitoring Item Category Description |
|---|---|---|
| 1 | NETWORK | Network |
| 2 | QUEUE | request queue |
| 4 | TRANS | Transaction |
| 8 | SQL | SQL |
| 16 | CACHE | cache |
| 32 | STORAGE | Storage |
| 64 | RESOURCE | Resource |
| 128 | DEBUG | log |
| 256 | CLOG | CLOG |
| 512 | ELECT | election |
| 1024 | OBSERVER | system |
| 2048 | RS | Root Service |
| 3072 | Time Model | Time Model |
| 4096 | TABLEAPI | TableAPI |
| 8192 | WR | WR |
Network
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 10000 | 1 | rpc packet in | The cumulative number of RPC packets received by the tenant. The count increments by 1 whenever a tenant receives an RPC request or receives a response packet after sending an RPC request. |
| 10001 | 1 | rpc packet in bytes | The cumulative number of bytes received by the tenant in RPC packets, in bytes. This value is calculated by adding the byte size of each RPC request received by the tenant or the byte size of each response packet received after sending an RPC request. |
| 10002 | 1 | rpc packet out | The cumulative number of RPC packets sent by the tenant. The count increments by 1 each time a tenant sends an RPC request or responds to an RPC request it receives. |
| 10003 | 1 | rpc packet out bytes | The total number of bytes of RPC packets sent by the tenant, in bytes. This value is calculated by adding the byte count of each RPC request sent by the tenant and the byte count of each response packet sent in response to an RPC request received by the tenant. |
| 10004 | 1 | rpc deliver fail | Total number of failures in forwarding RPC requests to the tenant work queue. The count increments by 1 when an RPC request fails to be forwarded to the tenant queue during RPC IO forwarding. |
| 10005 | 1 | rpc net delay | The cumulative network transmission delay of RPC requests received by a tenant, in microseconds. After an RPC IO thread parses an RPC request, it obtains the current timestamp, subtracts the sending timestamp obtained from the packet header to get the difference, and adds this value to RPC_NET_DELAY. |
| 10006 | 1 | rpc net frame delay | The cumulative network framework processing time for RPC requests received by a tenant, in microseconds. When an RPC IO forwards an RPC request to the tenant queue, it obtains the current timestamp, subtracts the timestamp recorded when the RPC packet was parsed, and adds the difference to RPC_NET_FRAME_DELAY. |
| 10007 | 1 | mysql packet in | The cumulative number of SQL request packets received by the tenant. This value is incremented by 1 each time a network thread decodes a complete SQL request packet. |
| 10008 | 1 | mysql packet in bytes | The cumulative size of SQL request packets received by the tenant, in bytes. The size of the original data packets received by the network thread is obtained according to protocol rules. |
| 10009 | 1 | mysql packet out | The cumulative number of response packets returned by the tenant for an SQL request. When a network thread returns a packet, the counter increments by 1 for each fully encoded packet. |
| 10010 | 1 | mysql packet out bytes | The cumulative value of the bytes returned in response to SQL requests for a tenant, in bytes. The encoding size is accumulated during the encoding of the response result set. |
| 10011 | 1 | mysql deliver fail | The cumulative number of times a tenant's SQL login request fails to be placed into the login queue and other requests fail to be placed into the worker thread queue. For login requests, this value increments by 1 if the login request thread queue is full. For other requests, this value increments by 1 if the tenant's worker thread queue is full. |
| 10012 | 1 | rpc compress original packet cnt | The cumulative number of RPC requests sent by the tenant that specify compression. This count increments by 1 whenever an RPC request is sent with the compressor_type parameter set. |
| 10013 | 1 | rpc compress compressed packet cnt | The cumulative number of compressed RPC requests sent by tenants. When an RPC is sent, if the compressor_type parameter is set and the compression succeeds (the compressed byte count is less than the original byte count), the counter increments by 1. |
| 10014 | 1 | rpc compress original size | The RPC request sent by the tenant specifies the original byte size of the request to be compressed, in bytes. When an RPC is sent, if the compressor_type is set for this RPC, the original byte size of the uncompressed RPC packet is accumulated in the RPC_COMPRESS_ORIGINAL_SIZE metric. |
| 10015 | 1 | rpc compress compressed size | The cumulative size of compressed RPC requests sent by the tenant, in bytes. When an RPC is sent, if the compressor_type is set and the compression is successful, the compressed byte count is accumulated in the RPC_COMPRESS_COMPRESSED_SIZE metric. |
| 10016 | 1 | rpc stream compress original packet cnt | The V4.x version has been deprecated and is only retained in the code. The unit is times. |
| 10017 | 1 | rpc stream compress compressed packet cnt | The V4.x version has been deprecated and is only retained in the code. The unit is times. |
| 10018 | 1 | rpc stream compress original size | The V4.x version has been deprecated and is only retained in the code. The unit is bytes. |
| 10019 | 1 | rpc stream compress compressed size | The V4.x version has been deprecated and is only retained in the code. The unit is bytes. |
| 110000 | 1 | standby fetch log bytes | The cumulative amount of data received via RPCs during network standby database synchronization on the OBServer node, in bytes. When data is received via RPCs during network standby database synchronization, the number of bytes received is accumulated in the STANDBY FETCH_LOG_BYTES metric. |
| 110001 | 1 | standby fetch log bandwidth limit | The bandwidth cap allocated to an OBServer node when network throttling is enabled for standby database synchronization. The unit is bytes. After network throttling is enabled for standby databases, the RS node distributes bandwidth to nodes in the cluster according to the configured strategy. After receiving the bandwidth cap allocated by the RS node, the OBServer node records it in the STANDBY FETCH_LOG_BANDWIDTH_LIMIT metric. |
Request queue
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 20000 | 2 | request enqueue count | Indicates the total number of requests in the queue for a tenant. The count increments by 1 each time a request is placed into the worker thread queue. |
| 20001 | 2 | request dequeue count | Indicates the total number of requests that have exited the queue for a tenant. The count increments by 1 each time a request exits the worker thread queue. |
| 20002 | 2 | request queue time | The total time spent by all request queues of a tenant, in microseconds. When a tenant worker thread receives a request, it calculates the queue time by subtracting the time when the request entered the queue from the current time, and accumulates this value in the REQUEST_QUEUE_TIME metric. |
Transactions
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 30000 | 4 | trans commit log sync time | The cumulative time consumed by a transaction's clogs being successfully committed to a majority of replicas on this server, in microseconds. When the majority of replicas have successfully processed the clogs and the callback to the transaction layer is triggered, the current time is subtracted from the time when the clogs were successfully committed to calculate the time spent by the majority. This time is then accumulated to this statistic. |
| 30001 | 4 | trans commit log sync count | The number of majorities of clogs submitted successfully by the tenant on this server. Each time a majority of clogs is successfully committed, a callback is sent to the transaction layer, which increments the count upon receiving it. |
| 30002 | 4 | trans commit log submit count | The number of clogs submitted by the tenant on this server. The count increases by 1 after each successful clog submission (not guaranteed to be a majority success). |
| 30005 | 4 | trans start count | The number of transactions started by this tenant on the server. This statistic increases each time a transaction is successfully started on the OBServer node where the session is created. |
| 30006 | 4 | trans total used time | The cumulative transaction time of the tenant on this server, in microseconds. After each transaction is completed on the OBServer node where the session is created, the cumulative transaction time is added to this statistic. |
| 30007 | 4 | trans commit count | The number of successfully committed transactions for this tenant on the server. This count increases by 1 each time a transaction is successfully committed on the OBServer node where the session is connected. |
| 30008 | 4 | trans commit time | The cumulative transaction commit time of the tenant on this server, in microseconds. After each successful transaction commit on the OBServer node where the session is created, the cumulative commit time is added to this statistic. |
| 30009 | 4 | trans rollback count | The number of transactions successfully rolled back for the tenant on this server. This statistic is incremented each time a transaction is successfully rolled back on the OBServer node where the session was created. |
| 30010 | 4 | trans rollback time | The transaction rollback time of the tenant on this server, in microseconds. After each successful rollback on the OBServer node where the session is created, the cumulative rollback time is added to this statistic. |
| 30011 | 4 | trans timeout count | The number of transactions that time out for this tenant on the server. This statistic is incremented each time a transaction times out on the OBServer node where the session was created. |
| 30012 | 4 | trans local trans count | The number of single-phase transactions terminated on this server for the tenant (including both commits and rollbacks). Each time a transaction is terminated on the OBServer node where the session was created, the number of participants is checked. If the number of participants equals 1, this counter is incremented. |
| 30013 | 4 | trans distribute trans count | The number of distributed transactions terminated on this server for the tenant (including both committed and rolled back transactions). This count is incremented whenever the number of participants exceeds one after a transaction is terminated on the OBServer node where the session was created. |
| 30017 | 4 | trans without participant count | The number of read-only transactions ended on this server for the tenant (including both committed and rolled back transactions). This count is incremented whenever the number of participants equals zero after a transaction is ended on the OBServer node where the session was created. |
| 30018 | 4 | redo log replay count | The number of redo logs replayed for a transaction within a tenant. The count increments by 1 each time the redo logs of that transaction are replayed. |
| 30019 | 4 | redo log replay time | The cumulative time consumed for replaying redo logs of transactions within a tenant, in microseconds. Each time redo logs are replayed, the time consumed for that replay is recorded and added to this statistic. |
| 30020 | 4 | prepare log replay count | The number of prepared logs rolled back within the tenant. The count increments by 1 each time a prepared log is rolled back. |
| 30021 | 4 | prepare log replay time | The cumulative time consumed in replaying prepare logs for transactions within a tenant, in microseconds. Each time prepare logs are replayed, the time spent on that replay is recorded and added to this statistic. |
| 30022 | 4 | commit log replay count | The number of times a transaction's commit log has been rolled back within the tenant. The count increases by 1 each time the transaction's commit log is rolled back. |
| 30023 | 4 | commit log replay time | The cumulative time consumed in replaying commit logs for transactions within a tenant. Each time commit logs are replayed, the time spent on that replay is recorded and added to this statistic. |
| 30024 | 4 | abort log replay count | The number of aborted logs rolled back within a tenant. The count increments by 1 each time an aborted log is successfully rolled back. |
| 30025 | 4 | abort log replay time | The cumulative time consumed in replaying abort logs of transactions within a tenant, in microseconds. Each time an abort log is replayed, the time consumed for that replay is recorded and added to this statistic. |
| 30026 | 4 | clear log replay count | The number of cleared logs for transactions rolled back within the tenant. This count increases by 1 each time a transaction's cleared logs are rolled back. |
| 30027 | 4 | clear log replay time | The cumulative time consumed for replaying clear logs of transactions within a tenant, in microseconds. Each time clear logs are replayed, the time consumed for that replay is recorded and added to this statistic. |
| 30053 | 4 | gts request total count | The total number of GTS requests processed by the GTS server. The count increments by 1 when the GTS server finishes processing a GTS request. |
| 30054 | 4 | gts acquire total time | For async GTS retrieval scenarios, this metric indicates the total wait time for obtaining GTS, in microseconds. The wait time is incremented when GTS is acquired. This feature is not yet implemented, so this metric is currently meaningless. |
| 30056 | 4 | gts acquire total wait count | For GTS async scenarios, indicates the total number of GTS fetches. The count increments by 1 when a GTS is fetched. |
| 30063 | 4 | gts wait elapse total time | For GTS async scenarios, the total wait time for GTS to be pushed, in microseconds. The wait time increases when GTS is pushed. |
| 30065 | 4 | gts wait elapse total wait count | Total number of times waiting for GTS to push data in async scenarios. Unit: microseconds. The count increments by 1 when GTS pushes data. |
| 30077 | 4 | trans early lock release enable count | Deprecated since V4.4.1. Unit: times. |
| 30078 | 4 | trans early lock release unable count | Deprecated since V4.4.1. Unit: times. |
| 30079 | 4 | read elr row count | Total number of rows whose row locks were released early during write operations to the MemTable. During the write process to the MemTable, this is the number of data rows for which the lock was successfully released early. |
| 30080 | 4 | local trans total used time | The cumulative duration of single-phase transactions ended on this server for the tenant, in microseconds. This statistic is accumulated on the OBServer node where the session is created, each time a transaction is ended. The transaction duration is added to this statistic when the number of participants equals 1. |
| 30081 | 4 | distributed trans total used time | The cumulative duration of distributed transactions terminated on this server for the tenant, including both commit and rollback terminations. The unit is microseconds. After each transaction termination on the OBServer node where the session is created, the number of participants is checked. If the number of participants is greater than 1, the transaction duration is accumulated to this statistic. |
| 30082 | 4 | tx data hit mini cache count | The number of times a transaction data table is hit in the MINI Cache. The MINI Cache is the highest-speed cache for TxData, and a higher hit rate indicates better performance. (The MINI Cache is a request-level cache, with one per Access Context.) The counter increments by 1 each time a TxData record is read from the MINI Cache. |
| 30083 | 4 | tx data hit kv cache count | The number of times a read transaction data hit the KVCache. The performance of the KVCache is slightly weaker than that of the MINI Cache. Most read requests are expected to hit the KV or MINI Cache. The counter increments by 1 each time a TxData record is read from the KVCache. |
| 30084 | 4 | tx data read tx ctx count | The number of times the transaction context table is hit when reading transaction data. The counter increments by 1 each time a TxData record is read from the transaction context table. |
| 30085 | 4 | tx data read tx data memtable count | The number of times that a read from the transaction data table's MemTable is required when the cache does not hit during transaction data reads. The counter increments by 1 each time a TxData record is read from the transaction data table's MemTable. |
| 30086 | 4 | tx data read tx data sstable count | The number of times TxData is read from the SSTable of a transaction data table during transaction data reading. (Reading TxData from an SSTable is the least efficient operation, so this metric is not expected to be high.) The counter increments by 1 each time one TxData record is read from the SSTable of a transaction data table. |
| 30200 | 4 | xa start total count | For XA transactions, the total number of XA_START statements, including both successful and failed ones. The count increments by 1 after the transaction-side logic of XA_START is executed. |
| 30201 | 4 | xa start total used time | For XA transactions, the total execution time of the XA_START statement, including both successful and failed cases, in microseconds. After the transaction side completes the XA_START logic, the local processing time is added. |
| 30202 | 4 | xa start with rpc total count | The total number of XA_START statements executed remotely for XA transactions, including only successful ones. The count increments by 1 if an XA_START statement is executed remotely and successfully after the transaction-side logic completes. |
| 30203 | 4 | failed xa start total count | The total number of failures in executing the XA_START statement for XA transactions. This count increments by 1 when the XA_START logic fails to execute on the transaction side. |
| 30204 | 4 | xa end total count | The total number of XA_END statements executed for XA transactions, including both successful and failed ones. The count increments by 1 after the transaction-side logic of XA_END is executed. |
| 30205 | 4 | xa end total used count | For an XA transaction, the total execution time of the XA_END statement, in microseconds. After the transaction side completes the XA_END logic, the local processing time is added. |
| 30206 | 4 | xa end with rpc total count | The total number of successfully executed XA_END statements on the remote side for XA transactions. The count increments when the XA_END logic is successfully executed remotely. |
| 30207 | 4 | failed xa end total count | The total number of failed executions of the XA_END statement for XA transactions. The count increments by 1 when an error occurs during the execution of the XA_END statement on the transaction side. |
| 30208 | 4 | xa prepare total count | For XA transactions, the total number of XA_PREPARE statements, including both successful and failed ones. The count increments after the transaction-side logic completes the XA_PREPARE statement. |
| 30209 | 4 | xa prepare total used time | For XA transactions, the total execution time of XA_PREPARE statements, including both successful and failed ones, in microseconds. After the transaction side completes the XA_PREPARE logic, the local processing time is added. |
| 30210 | 4 | xa prepare with rpc total count | For XA transactions, the total number of remotely executed XA_PREPARE statements, including only successful ones. The count increments by 1 if an XA_PREPARE statement is remotely executed and succeeds after the transaction has completed its XA_START logic. |
| 30211 | 4 | failed xa prepare total count | The total number of XA_PREPARE statements that failed to execute for XA transactions. This count is incremented when the XA_PREPARE logic fails to execute on the transaction side. |
| 30212 | 4 | xa commit total count | For XA transactions, the total number of XA_COMMIT statements executed, including both successful and failed ones. The count increments by 1 after the transaction-side completes its XA_COMMIT logic. |
| 30213 | 4 | xa commit total used time | For an XA transaction, the total execution time of the XA_COMMIT statement, in microseconds. After the transaction side completes the XA_COMMIT logic, this value is increased by the consumption time for local processing. |
| 30214 | 4 | xa commit with rpc total count | For XA transactions, the total number of successfully executed XA_COMMIT statements on remote nodes. The count increments by 1 when the XA COMMIT logic is successfully executed remotely. |
| 30215 | 4 | failed xa commit total count | The total number of failures in executing the XA_COMMIT statement for XA transactions. The count is incremented when an error occurs during the execution of the XA_COMMIT statement on the transaction side. |
| 30216 | 4 | xa rollback total count | For XA transactions, the total number of XA_ROLLBACK statements, including both successful and failed ones. The count increments by 1 after the transaction-side logic of XA_ROLLBACK is executed. |
| 30217 | 4 | xa rollback total used time | For XA transactions, the total execution time of the XA_ROLLBACK statement, including both successful and failed cases, in microseconds. After the transaction side completes the XA_ROLLBACK logic, the local processing time is added. |
| 30218 | 4 | xa rollback with rpc total count | The total number of XA_ROLLBACK statements executed remotely for XA transactions, including only successful ones. This count is incremented if an XA_ROLLBACK statement is executed remotely and succeeds after the transaction-side logic of XA_START has been completed. |
| 30219 | 4 | failed xa rollback total count | The total number of failed executions of the XA_ROLLBACK statement for XA transactions. This count increments by 1 when the XA_ROLLBACK logic fails to execute on the transaction side. |
| 30220 | 4 | started xa trans count | For XA transactions, the total number of successfully started XA transactions. The count increments by 1 after an XA transaction is successfully started on the transaction side. |
| 30221 | 4 | read only xa trans total count | Total number of read-only XA transactions. This count is incremented when a transaction side commits an XA transaction that is marked as read-only. |
| 30222 | 4 | xa trans with one phase commit total count | For XA transactions, the total number of XA transactions with one-phase commit. The count increments by 1 when an XA transaction is committed using one-phase commit on the transaction side. |
| 30223 | 4 | inner sql total count in xa statement | For an XA transaction, this is the total number of inner SQL statements executed during the XA logic execution. When the transaction side executes the XA logic, the count increments by 1 after each inner SQL statement is executed. |
| 30224 | 4 | total count of inner sql (latency >= 10ms) in xa statement | For XA transactions, the total number of INNERSQL statements whose execution time exceeds 10 ms during the execution of XA logic. When the transaction side executes XA logic, if the execution time of an INNER SQL statement exceeds 10 ms, the count is incremented by 1. |
| 30225 | 4 | total count of inner sql (latency >= 20ms) in xa statement | For XA transactions, the total number of INNER SQL statements whose execution time exceeds 20 ms during the execution of XA logic. When the transaction side executes XA logic, if the execution time of an INNER SQL statement exceeds 20 ms, the count is incremented by 1. |
| 30226 | 4 | inner sql total used time in xa statement | For an XA transaction, this is the total time consumed by inner SQL statements during the execution of XA logic, in microseconds. When executing XA logic on the transaction side, the time consumed by inner SQL statements is added after they are executed. |
| 30227 | 4 | inner rpc total count in xa statement | For an XA transaction, this is the total number of RPCs in the execution of the XA logic. The count increments by 1 each time an RPC is called when executing the XA logic on the transaction side. |
| 30228 | 4 | total count of inner rpc (latency >= 10ms) in xa statement | For XA transactions, the total number of RPCs whose execution time exceeds 10 ms during the execution of XA logic. When the transaction side executes XA logic, if an RPC takes more than 10 ms to execute, the count is incremented by 1. |
| 30229 | 4 | total count of inner rpc (latency >= 20ms) in xa statement | For XA transactions, the total number of RPCs whose execution time exceeds 20 ms during XA logic execution. When the transaction side executes XA logic, if an RPC takes more than 20 ms to execute, the count is incremented by 1. |
| 30230 | 4 | inner rpc total used time in xa statement | For XA transactions, this is the total time consumed by RPCs during the execution of XA logic, in microseconds. When executing XA logic on the transaction side, the RPC consumption time increases after each RPC call. |
| 30231 | 4 | dblink trans total count | Total number of DBlink transactions. The count increments by 1 when a DBlink transaction is started. |
| 30232 | 4 | failed dblink trans total count | The total number of failed DBlink transactions. The count increments when a DBlink transaction is initiated and fails. |
| 30233 | 4 | dblink trans promotion total count | The total number of times a regular transaction is upgraded to a DBlink transaction. The count increments by 1 when a regular transaction is upgraded to a DBlink transaction. |
| 30234 | 4 | dblink trans callback total count | Total number of transaction calls for reverse link recovery. The count increments by 1 when a transaction is recovered via reverse link. |
| 30235 | 4 | dblink trans commit total count | Total number of DBlink transactions committed. The count increments by 1 when a DBlink transaction executes a COMMIT statement. |
| 30236 | 4 | dblink trans commit total used time | For DBlink transactions, this is the total time consumed by a DBlink transaction commit, in microseconds. It increases when the DBlink transaction executes a commit statement. |
| 30237 | 4 | failed dblink trans commit total count | Total number of failed commits for DBlink transactions. The count increments when a commit statement is executed by a DBlink transaction and fails. |
| 30238 | 4 | dblink trans rollback total count | Total number of rollbacks for DBlink transactions. The count increments by 1 when a DBlink transaction executes a Rollback statement. |
| 30239 | 4 | dblink trans rollback total used time | For DBlink transactions, the total time consumed for rolling back a DBlink transaction, in microseconds. This value is incremented when a DBlink transaction executes a Rollback statement. |
| 30240 | 4 | failed dblink trans rollback total count | The total number of failed DBlink transaction rollbacks. The count increments when a DBlink transaction executes a Rollback statement and fails. |
SQL
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 40000 | 8 | sql select count | Number of SQL SELECT executions. |
| 40001 | 8 | sql select time | Total SQL SELECT execution time, in microseconds. |
| 40002 | 8 | sql insert count | Total number of INSERT statements issued by users. |
| 40003 | 8 | sql insert time | Total time consumed by user-issued INSERT statements. |
| 40004 | 8 | sql replace count | Total number of REPLACE statements issued by users. |
| 40005 | 8 | sql replace time | Total time consumed by the REPLACE statements issued by the user. |
| 40006 | 8 | sql update count | The total number of UPDATE statements issued by users. |
| 40007 | 8 | sql update time | Total time consumed by user-initiated UPDATE statements, in microseconds. |
| 40008 | 8 | sql delete count | Total number of DELETE statements issued by users. |
| 40009 | 8 | sql delete time | Total time consumed by user-initiated DELETE statements, in microseconds. |
| 40010 | 8 | sql local count | Number of SQL LOCAL executions. |
| 40011 | 8 | sql remote count | Number of SQL REMOTE executions. |
| 40012 | 8 | sql distributed count | The number of distributed executions of the SQL statement. |
| 40013 | 8 | active sessions | The number of active sessions. The number of active sessions is calculated by adding one to the number of new connections and subtracting one from the number of disconnected connections. |
| 40014 | 8 | single query count | Total number of statements sent over a non-multiple query protocol. |
| 40015 | 8 | multiple query count | The total number of statements sent over the multiple query protocol. |
| 40016 | 8 | multiple query with one stmt count | The number of statements sent using the multiple query protocol but actually containing only one SQL statement. The number of statements sent using the multiple query protocol but actually containing only one SQL statement. |
| 40018 | 8 | sql other count | The number of executions of SQL statements other than SELECT, INSERT, REPLACE, UPDATE, DELETE, COMMIT, and ROLLBACK. |
| 40019 | 8 | sql other time | Total execution time of SQL statements other than SELECT, INSERT, REPLACE, UPDATE, DELETE, COMMIT, and ROLLBACK, in microseconds. |
| 40020 | 8 | ps prepare count | Number of PREPARE statements executed by PREPARE STATEMENT. |
| 40021 | 8 | ps prepare time | The total time taken to execute the PREPARE statement, in microseconds. |
| 40022 | 8 | ps execute count | Number of times PREPARE STATEMENT executes the EXECUTE statement. |
| 40023 | 8 | ps close count | Number of CLOSE operations performed by PREPARE STATEMENT. |
| 40024 | 8 | ps close time | Total time spent on executing CLOSE for PREPARE STATEMENT, in microseconds. |
| 40025 | 8 | sql commit count | The number of COMMIT operations performed during SQL statement execution. |
| 40026 | 8 | sql commit time | Total time spent on executing COMMIT operations, in microseconds. Cumulative COMMIT execution time. |
| 40027 | 8 | sql rollback count | Number of Rollback executions. |
| 40028 | 8 | sql rollback time | Total rollback time, in microseconds. |
| 40030 | 8 | opened cursors current | The number of currently open cursors. The number of currently open cursors increases by 1 when a cursor is opened and decreases by 1 when a cursor is closed. |
| 40031 | 8 | opened cursors cumulative | The cumulative number of open cursors. Each time a cursor is opened, the count increases by 1. |
| 40102 | 8 | sql inner insert count | The total number of INSERT statements issued by the INNER SQL statement is 1. |
| 40103 | 8 | sql inner insert time | Total time consumed by INSERT statements issued by INNER SQL, in microseconds1. |
| 40104 | 8 | sql inner replace count | The total number of REPLACE statements issued by the INNER SQL statement1. |
| 40105 | 8 | sql inner replace time | Total time consumed by the REPLACE statements issued by INNER SQL, in microseconds1. |
| 40106 | 8 | sql inner update count | The total number of UPDATE statements issued by the INNER SQL 1. |
| 40107 | 8 | sql inner update time | The total time consumed by the update statements issued by INNER SQL, in microseconds1. |
| 40108 | 8 | sql inner delete count | The total number of DELETE statements issued by the INNER SQL 1. |
| 40109 | 8 | sql inner delete time | The total time consumed by the DELETE statements issued by INNER SQL, in microseconds1. |
| 40112 | 8 | user logons cumulative | The cumulative number of logins of the user. |
| 40113 | 8 | user logouts cumulative | The cumulative number of times a user has logged out. This count increments by 1 each time the user disconnects from the session. |
| 40114 | 8 | user logons failed cumulative | The cumulative number of failed login attempts of the user. It indicates the number of failures in the process of connecting to an OBServer node and establishing a session. |
| 40115 | 8 | user logons time cumulative | Cumulative login duration of the user, in microseconds. This is the cumulative time spent on logging in and creating a session. |
| 40117 | 8 | sql remote execute time | Total SQL REMOTE execution time, in microseconds. Total SQL REMOTE execution time. |
| 40118 | 8 | sql distributed execute time | Total time for distributed execution of SQL statements, in microseconds. The total time for distributed execution is the cumulative time spent on distributed execution. |
| 40119 | 8 | sql fail count | The number of SQL execution failures. |
| 40120 | 8 | inner sql local count | Number of times INNER SQL LOCAL is executed. |
| 40121 | 8 | inner sql remote count | Number of times INNER SQL statements are executed remotely. |
| 40122 | 8 | inner sql distributed count | The number of times an INNER SQL statement is executed in distributed mode. |
Note
Note 1: INNER SQL refers to SQL statements that are not sent by users, but are internally generated by OceanBase Database, typically used to query or modify internal tables.
Cache
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 50000 | 16 | row cache hit | The table get operator counts the number of times a data row is hit in the cache during prefetching. In the lookup_in_cache function, this field is incremented if the data row is found in the cache. |
| 50001 | 16 | row cache miss | The number of times the table get operator prefetches data rows without hitting the cache. In the lookup_in_cache function, this field is incremented if the data row is not in the cache. |
| 50004 | 16 | bloom filter cache hit | The macroblock Bloom filter cache hit count indicates that the SQL statement uses a pre-built macroblock Bloom filter2. |
| 50005 | 16 | bloom filter cache miss | The number of cache misses for the macroblock Bloom filter indicates that the corresponding macroblock Bloom filter has not been constructed.2 |
| 50006 | 16 | bloom filter filts | The number of effective filter hits for the macroblock Bloom filter, where rows corresponding to each other do not exist2. |
| 50007 | 16 | bloom filter passes | Number of unfiltered macroblock Bloom filters, indicating that the corresponding row may contain 2. |
| 50008 | 16 | block cache hit | The number of times a microblock hit the block cache when fetched. When fetching a microblock, it is determined whether the microblock is in the cache. If the cache is hit, this counter increments by 1. |
| 50009 | 16 | block cache miss | The number of times that a microblock is fetched without hitting the block cache. When fetching a microblock, it is checked whether the microblock is in the cache. If the cache is not hit, this counter increments by 1. |
| 50010 | 16 | location cache hit | Number of location cache hits. This includes the number of hits in the ls_location_cache and tablet_ls_cache caches. When querying the mapping between tablets and logstreams or the location information of a logstream, if valid data is successfully retrieved from the local cache, the statistic value is incremented by 1. This event is triggered in the get method of ObTabletLSService and ObLSLocationService. |
| 50011 | 16 | location cache miss | The number of location cache misses. This metric counts the number of misses in the ls_location_cache and tablet_ls_cache caches. It increments when valid data cannot be retrieved from the local cache (e.g., the cache does not exist, has expired, or is invalid) while querying the mapping between tablets and logstreams or the location information of a logstream. It also increments in the get methods of ObTabletLSService and ObLSLocationService when is_cache_hit is false. |
| 50012 | 16 | location cache wait | The number of times a thread is blocked and waits when the concurrency for obtaining locations in OceanBase Location Cache reaches the upper limit. When Location Cache concurrently obtains location information, if the current concurrency has reached the maximum limit (max_count), the thread must wait on the semaphore. The count increments by 1 each time a thread enters a waiting state in the ObLocationSem::acquire method. This trigger is activated when has_wait is true, used to control the concurrency of location information acquisition and prevent excessive concurrent requests from putting pressure on the system. |
| 50013 | 16 | location cache get hit from proxy virtual table | From__all_virtual_proxy_schemaGets the number of hits in the location cache. When querying tablet location information through a proxy virtual table (ObAllVirtualProxySchema), if the mapping between tablets and logstreams and the logstream location information can be successfully retrieved from the cache, this statistic value is incremented by 1. |
| 50014 | 16 | location cache get miss from proxy virtual table | From__all_virtual_proxy_schemaGets the number of location cache misses. When querying tablet location information through a proxy virtual table (ObAllVirtualProxySchema), if the mapping between a tablet and a logstream or the logstream location information cannot be retrieved from the cache, this statistic increments by 1. |
| 50017 | 16 | location nonblock get hit | Indicates the number of hits for non-blocking reads in the ls_location_cache and tablet_ls_cache. When using the nonblock_get method to query the mapping between a tablet and its logstreams or the location information of a logstream, if valid data is successfully retrieved from the local cache, the statistic value is incremented by 1. InObTabletLSService::nonblock_getandObLSLocationService::nonblock_getIn the method, it is triggered when OB_SUCC(ret) is true. Unlike the regular get method, nonblock_get does not wait for the cache to update and returns the result immediately. |
| 50028 | 16 | kvcache sync wash time | The time consumed by flushing the cache memory when memory is insufficient, in microseconds. This value is added to the corresponding time when try_flush_washable_mb is called and cache flushing is performed. |
| 50029 | 16 | kvcache sync wash count | The number of times the cache is flushed to memory when insufficient memory is available. This value increments by 1 each time the try_flush_washable_mb function is called and a cache flush is performed. |
| 50033 | 16 | fuse row cache hit | The table get operator counts the number of times a non-MEMTable row is read from the cache. In the get_fuse_row_cache function, this field is incremented if the row corresponding to the rowkey is found in the cache. |
| 50034 | 16 | fuse row cache miss | The number of times the table get operator fails to hit the cache when reading non-MEMTABLE rows. In the get_fuse_row_cache function, this counter increments if the row corresponding to the rowkey is not in the cache. |
| 50035 | 16 | schema cache hit | The number of times a schema is successfully retrieved from the schema cache. When querying a schema, if the corresponding schema information is successfully obtained from the local cache, the statistic value is incremented by 1. InObSchemaCache::get_schemaIn the method, whencache_.get()Triggered when the call is successful. |
| 50036 | 16 | schema cache miss | The number of times that the schema could not be obtained from the schema cache. When querying a schema, if the corresponding schema information cannot be retrieved from the local cache (the cache does not exist, has expired, or is invalid), this statistic increments by 1. InObSchemaCache::get_schemaIn the method, whencache_.get()Triggered when the call fails. |
| 50037 | 16 | tablet ls cache hit | The number of times a cache hit occurs when reading a tablet. In the get_from_cache_ function, this field is incremented if the tablet is found in the cache. |
| 50038 | 16 | tablet ls cache miss | The number of times that a tablet is not found in the cache during read operations. In the get_from_cache function, this field increments when the tablet is not in the cache. |
| 50045 | 16 | opt table stat cache hit | The hit rate of the table/partition-level statistics cache. If a hit occurs, the statistics are directly read from memory. The unit is percentage. KVCache records the hit rate of the table/partition-level statistics cache. |
| 50046 | 16 | opt table stat cache miss | The miss rate of the table/partition-level statistics cache. If a cache miss occurs, statistics must be loaded from the internal table into memory. The unit is percentage. KVCache records the miss rate of the table/partition-level statistics cache. |
| 50047 | 16 | opt column stat cache hit | The hit rate of the column-level statistics cache. If a hit occurs, the statistics are directly read from memory. The unit is percentage. KVCache records the hit rate of the column-level statistics cache. |
| 50048 | 16 | opt column stat cache miss | The miss rate of the column-level statistics cache. If a cache miss occurs, statistics must be loaded from the internal table into memory. The unit is percentage. KVCache records the miss rate of the column-level statistics cache. |
| 50049 | 16 | tmp page cache hit | The number of cache hits for temporary files during page reads. Before reading data, the system first queries the KVCache. If a hit occurs, the data is read from the KVCache and the hit count is incremented by 1. |
| 50050 | 16 | tmp page cache miss | The number of misses in the temporary file page cache when reading temporary files. Before reading data, the system first queries the KVCache. If a miss occurs, an I/O operation is performed and the miss count is incremented by 1. |
| 50051 | 16 | tmp block cache hit | The number of hits for the 2 MB block cache when reading temporary files. Before reading data from disk, temporary files are queried in the KVCache to see if the data is cached. If a hit occurs, the data is read directly from the cache and the hit count is incremented by 1. |
| 50052 | 16 | tmp block cache miss | The number of misses in the temporary file block cache when reading temporary files. |
| 50055 | 16 | opt ds stat cache hit | The cache hit rate of statistics collected by dynamic sampling. If a cache hit occurs, the result in memory is directly read. The unit is percentage. KVCache statistics cache hit rate of dynamic sampling statistics. |
| 50056 | 16 | opt ds stat cache miss | The cache miss rate of statistics collected by dynamic sampling. If a cache miss occurs, a sampling SQL query is initiated to collect statistics. The unit is percentage. KVCache records the cache hit rate of statistics collected by dynamic sampling. |
| 50057 | 16 | storage meta cache hit | The number of hits in the secondary and tertiary metadata cache. Some larger metadata (over 1 KB), such as table schemas and multiple SSTables, is stored on data tablets. These metadata can be accessed on demand and do not need to reside in memory all the time. Therefore, we manage the memory lifecycle of these structures using a KVCache approach. These two metrics are the hit statistics for the metadata KVCache. |
| 50058 | 16 | storage meta cache miss | The number of misses in the secondary and tertiary metadata cache. Some larger metadata (greater than 1 KB), such as table schemas and multiple SSTables, is stored on data tablets. These metadata can be accessed on demand and do not need to reside in memory all the time. Therefore, we use a KVCache mechanism to manage the memory lifecycle of these data structures. These two metrics are the hit statistics for the metadata KVCache. |
| 50059 | 16 | tablet cache hit | The number of cache hits for storing tablet shards. A tablet, also known as a data shard, is a common structure used in many processes. When a tenant supports a large number of partitions, limited memory cannot guarantee that all tablets are resident in memory. Therefore, we use KVCache to manage the memory lifecycle of tablets. These metrics are related to the cache hit rate of tablets. |
| 50060 | 16 | tablet cache miss | The number of cache misses for storing tablet shards. A tablet, or data shard, is a common structure used in many processes. When a tenant supports a large number of partitions, limited memory cannot ensure that all tablets are resident in memory. Therefore, we use KVCache to manage the memory lifecycle of tablets. These metrics are related to the cache hit rate of tablets. |
| 50061 | 16 | schema history cache hit | Number of schema history cache hits. The schema history cache storesschema_type, tenant_id, schema_id, schema_versionThe mapping relationship from the current version number to the precise schema version number, avoiding repeated queries to system tables for the exact version number. If the corresponding precise schema version number is successfully retrieved from the history cache, the statistic value is incremented by 1. |
| 50062 | 16 | schema history cache miss | Number of schema history cache misses. The schema history cache storesschema_type, tenant_id, schema_id, schema_versionThe mapping relationship from the current version to the precise schema version, avoiding repeated queries to system tables for the exact version number. If the corresponding precise schema version cannot be obtained from the history cache (the cache does not exist, has expired, or is invalid), the statistic value is incremented by 1. |
| 50063 | 16 | opt system stat cache hit | The cache hit rate of the cost model system parameters. If a hit occurs, the cached result in memory is directly read. The unit is percentage. KVCache statistics for the cost model parameter cache hit rate. |
| 50064 | 16 | opt system stat cache miss | The cache hit rate of the cost model system parameters. If a cache miss occurs, parameters related to the cost model need to be loaded from an internal table. The unit is percentage. KVCache records the cache miss rate of cost model parameters. |
| 50065 | 16 | log kv cache hit | The number of hits in the cold cache. When reading logs from PALF, if the hot cache does not provide a hit, it attempts to read from the cold cache. If the requested log is found in the cold cache, this statistic increments by 1. |
| 50066 | 16 | log kv cache miss | The number of misses in the cold cache. When reading logs from PALF, if the hot cache does not provide a hit, it attempts to read from the cold cache. If the requested log is not in the cold cache, this statistic increments by 1. |
| 50067 | 16 | data block cache miss | The number of times that a data microblock was not found in the block cache when fetched. When fetching a data microblock, it is checked whether the microblock is in the cache. If the cache miss occurs, this counter increments by 1. |
| 50068 | 16 | index block cache miss | The number of times that the block cache was not hit when retrieving intermediate index microblocks. When retrieving intermediate index microblocks, it is determined whether the data microblock is in the cache. If the cache is not hit, this counter increments by 1. |
| 50069 | 16 | multi version fuse row cache hit | The number of times the table get operator hit the cache when reading rows from a materialized view.get_fuse_row_cacheIn the function, if the table is a materialized view, it checks whether the row corresponding to the rowkey is in the cache. If a hit is found, the count for that item is incremented by 1. |
| 50070 | 16 | multi version fuse row cache miss | The number of times the table GET operator failed to hit the cache when reading rows from a materialized view.get_fuse_row_cacheIn the function, if the table is a materialized view, it checks whether the row corresponding to the rowkey is in the cache. If the cache does not hit, this counter is incremented by 1. |
| 50071 | 16 | backup index cache hit | Number of backup index cache hits. Backups are cached for faster restore by first reading from the cache during recovery; if the cache is exhausted, the backup media is read. |
| 50072 | 16 | backup index cache miss | Number of backup index cache misses. Backup indexes are placed in the cache. During restore, the cache is read first; if not found, the backup media is read. |
| 50073 | 16 | backup meta cache hit | Number of cache hits for backup metadata. Backup metadata is placed in the cache. During restore, the cache is read first; if not found, the backup medium is read. |
| 50074 | 16 | backup meta cache miss | Number of cache hits for backup metadata. Backup metadata is placed in the cache. During restore, the cache is read first; if not found, the backup medium is read. |
| 50075 | 16 | truncate info cache hit | The number of times the cache is hit when reading truncate info. In the get_truncate_info_array function, this field indicates whether the truncate info is in the cache. If the cache is hit, this value is incremented by 1. |
| 50076 | 16 | truncate info cache miss | The number of times that the cache was not hit when reading truncate info. In the get_truncate_info_array function, this field is incremented if the truncate info is not in the cache. |
| 120001 | 16 | tablet ls cache size | The cache size of a tablet, in bytes.get_from_cacheIn the function, the cache of the tablet is used. |
| 120002 | 16 | table stat cache size | The memory space occupied by table/partition-level statistics cache, in bytes. This statistic is collected by the KVCache module. |
| 120003 | 16 | table col stat cache size | The memory space occupied by the column-level statistics cache, in bytes. The KVCache module collects statistics on the memory space used by the column-level statistics cache. |
| 120004 | 16 | index block cache size | The cache size used by the microblock of the intermediate-layer index, in bytes. In the get_micro_block_handle function, the microblock of the intermediate-layer index is used.index_block_cache_. |
| 120006 | 16 | user block cache size | The cache size used by the data microblock, in bytes. In the get_micro_block_handle function, this parameter is used to index the microblock.index_block_cache_. |
| 120008 | 16 | user row cache size | The cache size in bytes used by the table get operator when prefetching data rows. This cache is utilized by the lookup_in_cache function. |
| 120009 | 16 | bloom filter cache size | The total size of the macroblock Bloom filter cache, in bytes. User INSERT statements require checking for primary key conflicts. When the data to be checked resides on disk, a common performance optimization technique to avoid I/O is to build a Bloom filter for the relevant data range. This series of metrics are related to the Bloom filter cache. |
| 120010 | 16 | log kv cache size | The size of logs read from the cold cache, in bytes. When reading logs from PALF, if the hot cache does not provide a hit, it attempts to read from the cold cache. If the requested log is in the cold cache, the size of the successfully read log from the cold cache is accumulated. |
| 245054 | 16 | external table disk cache hit count | The number of hits in the external table data disk cache. Each time an external table is queried, if the disk caching feature (enabled by default) is enabled, this value increments by 1 for each macroblock hit. After enabling external table disk caching, external table data is split into chunks based on macroblocks and stored on disk. |
| 245055 | 16 | external table disk cache miss count | The number of misses in the external table data disk cache. Each time an external table is queried, if the disk caching feature is enabled (which is the default), this value increments by 1 for each macroblock that is not hit. |
| 245056 | 16 | external table disk cache hit bytes | Total hit size of external table data in disk cache, in bytes. Each time an external table is queried, if the disk caching feature is enabled (which is the default), this value increases by the size of each macroblock hit. |
| 245057 | 16 | external table disk cache miss bytes | The total size of misses in the external table data disk cache, in bytes. Each time an external table is queried, if the disk caching feature is enabled (which is the default), this value increases by the size read for each macroblock that is missed. |
Note
- Note 2: User insertion statements require checking for primary key conflicts. When the data to be checked resides on disk, a common performance optimization technique to avoid I/O overhead is to build a Bloom filter for the relevant data range. The series of metrics here are related to Bloom filter caching.
- Note 3: Macroblock cache can be categorized by cache type into META, TMP_FILE, MACRO, and HOT_MACRO. The META type includes all Meta-type macroblocks, TMP_FILE includes temporary file-type macroblocks; if a user designates a tablet as a hotspot tablet, all its corresponding macroblocks are of the HOT_MACRO type. Macroblocks that are not of these three types belong to the MACRO cache type. Different types of caches within the macroblock cache can coexist on the same storage space. Therefore, this value equals the disk size allocated for the tenant's macroblock cache minus a reserved portion.
Storage
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 60000 | 32 | io read count | Indicates the total IOPS for read I/O operations. After each read I/O operation is completed, the IO_READ_COUNT counter is incremented by 1. |
| 60001 | 32 | io read delay | Represents the total latency of read I/O operations, in microseconds. The IO_READ_DELAY metric accumulates the hardware service latency for each read I/O operation. This latency is measured from the point in time when the request is dispatched to the disk until the disk completes processing and returns the result. |
| 60002 | 32 | io read bytes | Indicates the total bandwidth for read I/O operations. This statistic counts the total amount of data read, in bytes. You can calculate the average read I/O per second by analyzing the change over a period of time. After each read I/O operation is completed, its read bandwidth is measured and accumulated into the IO_READ_BYTES metric. |
| 60003 | 32 | io write count | Represents the total IOPS for write I/O operations. After each write I/O operation is completed, IO_WRITE_COUNT is incremented by 1. |
| 60004 | 32 | io write delay | Represents the total latency of write I/O operations, in microseconds. The IO_READ_DELAY metric accumulates the hardware service latency for each write I/O operation. This latency is measured from the time the request is dispatched to the disk until the disk completes processing and returns a response. |
| 60005 | 32 | io write bytes | Represents the total bandwidth for write I/O operations. This statistic counts the total amount of data written, in bytes. You can calculate the average based on the change over a period of time. After each write I/O operation is completed, its write bandwidth is measured and cumulatively added to the IO_WRITE_BYTES metric. |
| 60006 | 32 | memstore scan count | The number of range queries on the MemTable. This value increments by 1 when a range query starts on the MemTable. |
| 60007 | 32 | memstore scan succ count | The number of successful range queries on the MemTable. This value increments by 1 after a successful range query on the MemTable. |
| 60008 | 32 | memstore scan fail count | The number of failed range queries on the MemTable. This value increments by 1 whenever a range query fails on the MemTable for any reason. |
| 60009 | 32 | memstore get count | The number of point queries in the MemTable. This value is incremented when a point query starts in the MemTable. |
| 60010 | 32 | memstore get succ count | The number of successful point queries in the MemTable. This value increments by 1 after a successful point query in the MemTable. |
| 60011 | 32 | memstore get fail count | The number of point queries that fail in the MemTable. This value increments by 1 whenever a point query fails in the MemTable for any reason. |
| 60012 | 32 | memstore apply count | The number of times the MemTable has been flushed to disk. This value increments by 1 when a flush to disk starts. |
| 60013 | 32 | memstore apply succ count | The number of successful MemTable writes. This value increments by 1 after a successful MemTable write. |
| 60014 | 32 | memstore apply fail count | The number of MemTable write failures. This value increments by 1 whenever a MemTable write fails for any reason. |
| 60016 | 32 | memstore get time | The time consumed in a point query of the MemTable, in microseconds. Regardless of whether the point query succeeds or fails, this value is increased by the time spent on the query. |
| 60017 | 32 | memstore scan time | The time consumed in a MemTable range query, in microseconds. This value increases regardless of whether the query succeeds or fails. |
| 60018 | 32 | memstore apply time | The time consumed in writing to the MemTable, in microseconds. Regardless of whether the write to the MemTable succeeds or fails, this value records the time spent on the write operation. |
| 60019 | 32 | memstore read lock succ count | The number of rows successfully read from the MemTable. This value increments by 1 after each row is successfully read from the MemTable. |
| 60020 | 32 | memstore read lock fail count | The number of rows that failed to be read from the MemTable due to a read lock conflict timeout. During a read from the MemTable, if the data being read is in the process of being committed but its commit status and version number are uncertain (for example, it is in a state where the commit log is pending or the distributed transaction is pending, which lasts for a very short time), the read lock will be held. If the read fails due to this conflict timeout, this value is incremented by 1. |
| 60021 | 32 | memstore write lock succ count | The number of rows successfully written to the MemTable. During the write process to the MemTable, lock conflicts, lost updates, and primary key conflicts are verified. If no such conflicts occur, this value is incremented by 1.
NoteRows that pass verification in the MemTable may still fail verification when written to the SSTable. |
| 60022 | 32 | memstore write lock fail count | The number of rows that failed to be written to the MemTable due to conflicts. During the write process to the MemTable, lock conflicts, lost updates, and primary key conflicts are verified. If any of these conflicts occur, this value is incremented by 1.
NoteThis does not include verifications on SSTables. |
| 60023 | 32 | memstore wait write lock time | The wait time in microseconds for a request awakened after a lock conflict during MemTable write. During a MemTable write, if a lock conflict occurs, the request is placed into the lock conflict queue. This value includes the time from when the request was placed in the queue until it is awakened. |
| 60024 | 32 | memstore wait read lock time | The wait time for a read lock conflict in the MemTable, in microseconds. During a read from the MemTable, if the data being read is committed but its commit status and version number are uncertain (for example, it is in a state where the log is pending commit or the distributed transaction is pending commit, which lasts for a very short time), the read operation will wait on the lock. This value includes the wait time. |
| 60027 | 32 | io prefetch micro block count | Total number of I/O operations for microblock cache. Query path optimization loads the microblocks required from disk into memory via prefetching, which is known as microblock caching. This metric records the total number of times the system loads disk microblocks. Combined with the microblock cache hit rate on internal tables, it can measure the effectiveness of query performance optimization in the system. |
| 60028 | 32 | io prefetch micro block bytes | The total number of bytes of I/O operations in the microblock cache, in bytes. Query path optimization loads microblocks from disk into memory via prefetching, which is stored in the microblock cache. This metric indicates the total number of bytes of disk microblocks loaded by the system. Combined with the microblock cache hit rate on internal tables, it can measure the effectiveness of query performance optimization in the system. |
| 60031 | 32 | storage read row count | The number of times the rows after the fuse are processed in the non-pushdown path of the table scan operator, in rows.process_fuse_rowThis counter is incremented by 1 each time the function is called. |
| 60032 | 32 | storage delete row count | The DML statement affected row sub-item refers to the actual number of valid rows deleted. The statistic increments by 1 each time a row is deleted in the storage engine. |
| 60033 | 32 | storage insert row count | The affected row sub-item of DML statements refers to the actual number of valid rows inserted. The statistic increments by 1 each time a row is inserted into the storage engine. |
| 60034 | 32 | storage update row count | The number of rows updated by the UPDATE operation. When the update_rows function is called, this value is incremented by the number of rows updated. |
| 60037 | 32 | memstore row purge count | This feature is deprecated starting from V4.4.1. |
| 60038 | 32 | memstore row compaction count | The number of times sparse multi-version compactions on a MemTable row are merged into a compact version. A sparse multi-version is stored in a MemTable row, recording only the changed columns. When the number of versions increases, MemTable generates a compact single version to improve read performance. This value increments by 1 each time a compact single version is generated. |
| 60056 | 32 | memstore read row count | The number of rows read from the MemTable before filtering. This value increments by 1 each time a row is read from the MemTable. |
| 60057 | 32 | ssstore read row count | The number of major SSTables, minor SSTables, and mini SSTables read from the pushdown path and non-pushdown path. The number on the pushdown path includes filtered rows, which is equivalent to the total number of rows within the specified range in the SSTables that follow the pushdown path. Rowstore includes rows skipped by skip index pre-fetching, while columnstore does not. The number on the non-pushdown path includes filtered rows, but excludes uncommitted rows, rolled-back rows, and multi-version rows within microblocks. |
| 60058 | 32 | memstore write bytes | The amount of data successfully written to the MemTable, in bytes. After data is successfully written to the MemTable, the size of the primary key and the data volume are tallied and incremented. |
| 60068 | 32 | memstore write lock wakenup count in lock_wait_mgr | The number of times a request is awakened after a lock conflict occurs during a write to the MemTable. During a write to the MemTable, if a lock conflict arises, the request is placed in the lock conflict queue. If the request is awakened, this value is incremented by 1. |
| 60077 | 32 | get row effect read | The table get operator retrieves the number of valid rows from a microblock.ObMicroBlockRowGetter::get_block_rowIn the function, if the row flag of the read row is not DF_NOT_EXIST, this counter is incremented by 1. |
| 60078 | 32 | get row empty read | table The number of invalid rows read from the microblock by the GET operator, in rows.ObMicroBlockRowGetter::get_block_rowIn the function, if the row flag of the read row is DF_NOT_EXIST, this counter is incremented by 1. |
| 60083 | 32 | memstore write lock wait timeout count | The number of times a lock conflict during MemTable write did not wake up the request and timed out. During the writing process to a MemTable, if a lock conflict occurs, the request is placed into the lock conflict queue. If the request times out before being awakened, this value is incremented by 1. |
| 60084 | 32 | accessed data micro block count by io | The number of microblocks that require I/O operations because they are not cached. This value increments by 1 when a data microblock is fetched via I/O instead of from the cache. |
| 60085 | 32 | data micro block cache hit | The number of data microblocks that hit the block cache when fetched. When fetching data microblocks, it checks whether the microblock is in the cache. If a hit occurs, this counter increments by 1. |
| 60086 | 32 | accessed index micro block count by io | The number of microblocks that require I/O operations when retrieving intermediate-layer index microblocks and no cache hit is detected. This metric increments by 1 when intermediate-layer index microblocks are not retrieved from the cache but instead require an I/O operation. |
| 60087 | 32 | index micro block cache hit | The number of times a block cache hit occurs when fetching an intermediate index microblock. When fetching an intermediate index microblock, it is determined whether the microblock is in the cache. If a cache hit occurs, this item is incremented by 1. |
| 60088 | 32 | blockscaned data micro block count | The number of microblocks opened via the pushdown path, including both rowstore and columnstore microblocks that skip pre-fetch via the index. For columnstore tables with multiple CGs, the microblock counts are cumulative. Unit: microblocks. Rowstore: When opening a microblock, check if the pushdown path is available; if so, increment this count by 1. Columnstore: When opening a microblock via the pushdown path, increment this count by 1. |
| 60089 | 32 | blockscaned row count | The total number of rows within the specified range that are opened in microblocks under the pushdown path. This includes filtered rows (no uncommitted rows, rolled-back rows, or multi-version rows within a microblock exist for pushdown; no inter-microblock multi-version rows exist for rowstore, which means no rowkey intersection, while columnstore may have inter-microblock multi-version rows). For rowstore, this includes rows skipped by skip index; for columnstore, it does not. The number of rows across multiple CGs in a columnstore table is not cumulative. Unit: number of rows.
|
| 60090 | 32 | storage filtered row count | Total rows filtered by pushdown or non-pushdown filters. During filtering, this value is incremented by the number of rows filtered out. For rowstore, this includes rows skipped via skip index pre-fetching; for columnstore, it does not include such rows. |
| 60091 | 32 | minor ssstore read row count | The number of minor SSTables and mini SSTables read from the pushed-down path or non-pushed-down path, in rows. The pushed-down path includes filtered rows, which is equivalent to the total number of rows within the range for the minor/mini SSTables that follow the pushed-down path. The non-pushed-down path includes filtered rows but excludes uncommitted rows, rolled-back rows, and multi-version rows within microblocks. |
| 60092 | 32 | major ssstore read row count | The number of rows in the major SSTable read from the pushdown and non-pushdown paths. The number for the pushdown path includes filtered rows, which is equivalent to the total number of rows within the range in the major SSTable that follows the pushdown path. Rowstore includes skipped rows by skip index, while columnstore does not. The number for the non-pushdown path includes filtered rows but excludes uncommitted rows, rolled-back rows, and multi-version rows within microblocks. |
| 60093 | 32 | storage waiting throttle time | To dynamically match the system's minor compaction rate, when the minor compaction speed cannot keep up with memory write speed, memory allocation for certain modules is throttled. This parameter records the total duration of these memory allocation throttles, in microseconds. When the memory usage of modules such as MemTable (TxData, Mds) exceeds a certain threshold, the thread sleeps for a period after each memory allocation. The total duration of these sleeps is accumulated into this statistic. |
| 69000 | 32 | backup io read count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69001 | 32 | backup io read bytes | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69002 | 32 | backup io write count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69003 | 32 | backup io write bytes | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69010 | 32 | backup delete count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69012 | 32 | backup io read delay | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69013 | 32 | backup io write delay | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69017 | 32 | backup delete delay | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69019 | 32 | backup io list count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69020 | 32 | backup io read failed count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69021 | 32 | backup io write failed count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69022 | 32 | backup io delete failed count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69023 | 32 | backup io list failed count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69024 | 32 | backup io tagging count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 69025 | 32 | backup io tagging failed count | This metric is deprecated starting from V4.4.1. Please check this metric in the I/O Manager. |
| 130000 | 32 | active memstore used | The size of the active memstore on a node, in bytes. Memstores are used for replay and write operations on a node. When the usage of a memstore reaches a certain threshold, a freeze is triggered. All unfrozen memstores are called active memstores. |
| 130001 | 32 | total memstore used | The total memory used by the tenant's memstores on the node, in bytes. This memory usage includes both active and frozen memstores, that is, the total memory used by all memstores of the tenant on this node. |
| 130002 | 32 | major freeze trigger | The size of the memstore that triggers a freeze, in bytes. In the get_tenant_memstore_cond function, it is calculated by adding memstore_freeze_trigger to max_cached_memstore_size. |
| 130004 | 32 | memstore limit | The maximum memory that the tenant's memstore can use on the node, in bytes. You specify the memory limit for the user tenant by using thememstore_limit_percentageand_memstore_limit_percentageConfigure the maximum upper limit for the size of the memstore. Specifically,memstore_limit_percentageis at the cluster level,_memstore_limit_percentageIt is at the tenant level._memstore_limit_percentagehas a higher priority thanmemstore_limit_percentageIf neither parameter is set, the available MemStore ratio for tenants smaller than 8 GB is 40%, and for tenants larger than 8 GB, it is 50%. |
| 240022 | 32 | object storage io head count | The number of HEAD operations on object storage. This count increments by 1 each time a HEAD request is made to object storage. |
| 240023 | 32 | object storage io head fail count | The number of HEAD operations that failed in object storage. This count increases by 1 when a HEAD request to object storage fails. |
Resources
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 140001 | 64 | min memory size | The memory specification of a tenant determines its maximum memory. The OmtNodeBalancer background thread periodically checks the memory usage of tenants and adjusts the memory allocation for tenants that exceed their configured memory limits.DBA_OB_UNIT_CONFIGSThe table retrieves the tenant's latest min_memory value and updates it to the Limit field of the ObTenantMemoryMgr object. |
| 140002 | 64 | max memory size | The memory specification of a tenant determines its maximum memory size, in bytes. The OmtNodeBalancer background thread periodically collects memory usage data from the tenants and adjusts the memory quota of each tenant based on the specified memory policy.DBA_OB_UNIT_CONFIGSThe table retrieves the tenant's latest min_memory and updates it to the Limit of the ObTenantMemoryMgr. |
| 140003 | 64 | memory usage | The memory occupied by the tenant, in bytes. ObTenantMemoryMgr maintains a real-time memory value that records the actual memory usage of the tenant. |
| 140004 | 64 | min cpus | Represents the CPU specifications of a tenant. It determines the number of worker threads that reside in the tenant and the number of threads for some background modules. The OmtNodeBalancer background thread periodically collects data from theDBA_OB_UNIT_CONFIGSThe table obtains the latest max_cpu and synchronizes it to the multi-tenancy environment. The OmtNodeBalancer background thread periodically adjusts the number of worker threads based on the synchronized max_cpu. |
| 140005 | 64 | max cpus | Represents the CPU specifications of a tenant. It determines the number of worker threads that reside in the tenant and the number of threads for some background modules. When cgroup is enabled, it also determines the upper limit of CPU usage for tenant threads. The OmtNodeBalancer background thread periodically checks fromDBA_OB_UNIT_CONFIGSThe table obtains the latest max_cpu and synchronizes it to the multi-tenancy environment. The OmtNodeBalancer background thread periodically adjusts the number of worker threads based on the synchronized max_cpu. |
| 140006 | 64 | cpu usage | Indicates the thread utilization of tenant worker threads, reflecting how busy the tenant worker threads are, in percentage. The OmtNodeBalancer background thread calculates the proportion of time spent processing requests by tenant worker threads to the total time every 10 seconds, normalizes this value, and then multiplies it by the tenant's min_cpu to obtain the cpu_usage statistic. |
| 140008 | 64 | observer memory used size | The actual memory used by the OBServer node, in bytes. AChunkMgr maintains a real-time memory value that records the actual memory usage of the OBServer node (less than or equal to the actual memory occupied). |
| 140009 | 64 | observer memory free size | The chunk cache of an OBServer node. AChunkMgr maintains a real-time memory value that records the cache size of the OBServer node. The cache represents the amount of memory allocated but not yet in use by the OBServer node. |
| 140010 | 64 | is mini mode | Whether the OBServer node process is in mini mode. An OBServer node is considered to be in mini mode if its memory is less than 12 GB. |
| 140011 | 64 | observer memory hold size | The memory occupied by the OBServer node, including cache and all user data, in bytes. AChunkMgr maintains a real-time memory value that records the memory usage of the OBServer node. |
| 140012 | 64 | worker time | Total time spent by tenant worker threads in a busy state, in microseconds. The OmtNodeBalancer background thread collects statistics on the total request-handling time of tenant worker threads every 10 seconds and accumulates it in the worker_time value. |
| 140013 | 64 | cpu time | The total CPU time consumed by tenant worker threads and background threads, in microseconds.
|
| 140014 | 64 | effective observer memory limit | The maximum memory for an OBServer node, in bytes. This value is node-level and can only be queried by the sys tenant.
|
| 140015 | 64 | effective system memory | Reserved memory and hidden sys memory for 500 tenants, in bytes. By default, an appropriate value is automatically determined based on the memory_limit parameter; you can also explicitly specify it using the system_memory parameter. |
| 140016 | 64 | effective hidden sys memory | The memory cap for the sys tenant, in bytes. Each OBServer node allocates a portion of its memory for the sys tenant. By default, this value is dynamically determined based on the memory parameter system_memory; users can also explicitly specify it using the parameter _hidden_sys_tenant_memory. |
| 140017 | 64 | max session num | The maximum number of sessions allowed for a tenant. The maximum number of sessions allowed for a tenant is calculated based on the tenant's memory size. |
| 140018 | 64 | kvcache hold | The memory size occupied by the KVCache, in bytes. The memory manager collects statistics on the memory usage of the KVCache. |
| 140019 | 64 | unmanaged memory size | The memory size directly read from the mmap by database functions, in bytes. It is a global memory value that records in real time the memory requested by database function calls to mmap/unmap. Specifically, it refers to the memory requested by third-party library functions called on the OBServer node via mmap. |
Logs
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 70000 | 128 | refresh schema count | Number of successful schema refreshes. This value increments each time a schema refresh operation is successfully completed when OceanBase Database requires a schema refresh. InObServerSchemaService::refresh_schemaThe method. This operation includes a complete refresh.refresh_full_schemaand incremental refreshrefresh_increment_schemaTwo modes are used to maintain consistency between the local metadata cache and system tables. |
| 70001 | 128 | refresh schema time | The total time consumed for schema refresh is accumulated, in microseconds. When OceanBase Database refreshes a schema, it calculates the total time spent on the entire refresh process. InObServerSchemaService::refresh_schemaIn the method, when OB_SUCC(ret) is True, the time difference from the start to the end of the method is accumulated. This includes full refreshes.refresh_full_schemaand incremental refreshrefresh_increment_schemaAll costs in both modes. |
| 70002 | 128 | inner sql connection execute count | Number of inner SQL executions. The count increments by 1 for each executed inner SQL statement. |
| 70003 | 128 | inner sql connection execute time | Total time spent on inner SQL execution, in microseconds. The total time is the cumulative sum of inner SQL execution times. |
| 70006 | 128 | log stream table operator get count | From__all_ls_meta_tableThe number of times the table successfully reads the loaded LS information. When using theObLSTableOperatorFrom__all_ls_meta_tableWhen the table retrieves log stream information, each successful retrieval will have als_infoThe count value is incremented by 1. InObLSTableOperator::getThe method. The operator can obtain log stream information from memory, RPC, or persistent tables for location caching and metadata management. |
| 70007 | 128 | log stream table operator get time | From__all_ls_meta_tableThe cumulative time consumed by the table for reading and loading LS information, in microseconds. When passing throughObLSTableOperatorFrom__all_ls_meta_tableWhen a table fetches log stream information, it calculates the total time consumed for the entire process. InObLSTableOperator::getIn this method, the time difference from the start to the end of the method is accumulated. This includes all overhead for obtaining log stream information from memory, RPC, or persistent tables. |
| 160001 | 128 | oblogger log bytes | The cumulative total size of printed logs, in bytes. This refers to the output and printing process of system logs such as observer.log. |
| 160002 | 128 | election log bytes | Cumulative size of printed election logs, in bytes. This refers to the cumulative size of the election.log files that have been printed. |
| 160004 | 128 | oblogger total log count | The cumulative number of log prints. This refers to the output process of system logs such as observer.log. |
| 160019 | 128 | async error log dropped count | The number of times an ERROR log failed to be printed (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160020 | 128 | async warn log dropped count | The number of WARN logs that failed to be printed. This refers to the output process of system logs such as observer.log. |
| 160021 | 128 | async info log dropped count | The number of INFO log printing failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160022 | 128 | async trace log dropped count | The number of failed TRACE log prints. This refers to the output process of system logs such as observer.log. |
| 160023 | 128 | async debug log dropped count | The number of DEBUG log print failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160024 | 128 | async log flush speed | Average number of logs written per second. This refers to the output and printing process of system logs such as observer.log. |
| 160025 | 128 | async generic log write count | The default number of successful log prints. This refers to the output process of system logs such as observer.log. |
| 160026 | 128 | async user request log write count | Deprecated and only retained in code. Refers to the output printing process for system logs such as observer.log. |
| 160027 | 128 | async data maintain log write count | The number of successful minor compaction log prints. This refers to the output process of system logs such as observer.log. |
| 160028 | 128 | async root service log write count | The number of successful RS log prints. This refers to the output process of system logs such as observer.log. |
| 160029 | 128 | async schema log write count | The number of Schema log printing failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160030 | 128 | async force allow log write count | The number of successful forced log prints. This refers to the output process of system logs such as observer.log. |
| 160031 | 128 | async generic log dropped count | The default number of times that log printing fails (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160032 | 128 | async user request log dropped count | Deprecated and only retained in code. Refers to the output printing process for system logs such as observer.log. |
| 160033 | 128 | async data maintain log dropped count | The number of times minor compaction logs failed to be printed (due to throttling or other reasons). This refers to the process of outputting system logs such as observer.log. |
| 160034 | 128 | async root service log dropped count | The number of RS log printing failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160035 | 128 | async schema log dropped count | The number of Schema log printing failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
| 160036 | 128 | async force allow log dropped count | The number of forced log printing failures (due to throttling or other reasons). This refers to the output process of system logs such as observer.log. |
CLOG
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 80001 | 256 | palf write io count to disk | The number of times a clog is written to disk. This statistic increments when a clog is successfully written to disk. |
| 80002 | 256 | palf write size to disk | The size of data written to disk by clogs, in bytes. When a clog is successfully written to disk, the size of the successfully written data is accumulated. |
| 80003 | 256 | palf write total time to disk | The time consumed in writing a clog to disk, in microseconds. When a clog is successfully written to disk, the time consumed for this write is accumulated. |
| 80004 | 256 | palf read count from hot cache | The number of hits for reading from the hot cache. When reading logs from PALF, it first attempts to read from the hot cache. If the requested log is found in the hot cache, this statistic increments by 1. |
| 80005 | 256 | palf read size from hot cache | The size of logs read from the hot cache, in bytes. When reading logs from PALF, the system first attempts to retrieve them from the hot cache. If the requested log is found in the hot cache, the size of that log is added to the total size of logs read from the hot cache. |
| 80006 | 256 | palf read total time from hot cache | The time consumed in reading a clog from the hot cache, in microseconds. When reading logs from PALF, it first attempts to retrieve them from the hot cache. If the requested log is found in the hot cache, the time spent reading it from the hot cache is accumulated. |
| 80007 | 256 | palf read io count from disk | The number of disk I/Os for reading clogs. This statistic value increments by 1 each time a clog is successfully read from disk. |
| 80008 | 256 | palf read size from disk | The size of the clogs read from disk, in bytes. When a clog is successfully read from disk, the size of the clog is accumulated. |
| 80009 | 256 | palf read total time from disk | The time consumed by reading a clog from disk, in microseconds. When a clog is successfully read from disk, the time consumed for this read is accumulated. |
| 80010 | 256 | palf handle rpc request count | The number of RPCs processed by the PALF layer. PALF increments this statistic by 1 after each RPC is processed. |
| 80011 | 256 | archive read log size | Total amount of Clogs read from log archive, in bytes. This metric periodically measures the total amount of logs read by the log pull module per unit time and then accumulates the data. The statistical period is 10 seconds, and the unit is bytes. |
| 80012 | 256 | archive write log size | Total amount of clogs written to the archive medium for log archiving, in bytes. This metric periodically measures the total volume of logs written to the archive medium by the log archiving module per unit time and then accumulates the data. The statistical period is 10 seconds, and the unit is bytes. |
| 80013 | 256 | restore read log size | Total amount of clogs read by the log restore module, in bytes. Each time the log restore module triggers reading remote logs, it accumulates the amount of logs read. The unit is bytes. |
| 80014 | 256 | restore write log size | Total number of clogs committed by the log restore module, in bytes. Each time the log restore module triggers log commit, it accumulates the volume of logs to be committed. The unit is bytes. |
| 80057 | 256 | clog trans log total size | The amount of data committed to PALF in bytes. Transactions commit logs to PALF, and this value increases by the size of the committed logs after the log commit is complete. |
| 80058 | 256 | log storage compress original size | The cumulative original size of logs before compression submitted by the upper layer to the PALF layer, in bytes. When log compression is enabled, the size of logs is compressed each time the upper layer calls the APPEND interface of the PALF layer to submit logs, and the compressed log size is accumulated. |
| 80059 | 256 | log storage compress compressed size | The cumulative size of compressed logs submitted by the upper layer to the PALF layer, in bytes. When log compression is enabled, the size of each log record is compressed whenever the upper layer calls the APPEND interface of the PALF layer to submit a log record. The compressed log size is accumulated. |
| 81001 | 256 | external log service fetch log size | The size of logs pulled by the log synchronization link (such as OBCDC or network standby databases) from this node, in bytes. Each time an RPC sent by a downstream synchronization link is processed, the size of the logs returned by this RPC is counted and added to the [G]V$SYSSTAT statistics. |
| 81002 | 256 | external log service fetch log count | The number of logs pulled by log synchronization links (such as OBCDC and network standby databases) from this node. Each time an RPC sent by a downstream synchronization link is processed, the number of logs returned by this RPC is counted and added to the [G]V$SYSSTAT statistic. |
| 81003 | 256 | external log service fetch rpc count | The number of RPCs sent by log synchronization links (such as OBCDC and network standby databases) to pull logs from this node. Each time an RPC sent by a downstream synchronization link is processed, the count for this statistic increments by 1. |
Root Service
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 110015 | 2048 | success rpc process | The number of RPC requests successfully processed by the Root Service. This statistic increments by 1 each time the Root Service successfully processes an RPC request. It includes all RPC requests sent to the Root Service and executed successfully. |
| 110016 | 2048 | failed rpc process | The number of times the Root Service fails to process an RPC request. This statistic increments by 1 each time the Root Service fails to process an RPC request. It includes all RPC requests sent to the Root Service but that fail to execute. |
| 110017 | 2048 | balancer succ execute count | The number of successful RS unit load balancing operations. This statistic increments by 1 each time the Root Service load balancer successfully performs a unit balancing operation. |
| 110018 | 2048 | balancer failed execute count | The number of failed RS unit load balancing operations. This statistic increments by 1 each time the root service load balancer fails to perform a unit load balancing operation. |
ASH
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 200001 | 3072 | DB time | The total time spent by the foreground process on database operations, including the cumulative values of CPU time and non-idle wait time, in microseconds. OceanBase Database periodically updates the Time Model-related statistics. When a thread is active, it is either in the ON_CPU state or waiting for an event. The Time Model-related statistics are accumulated based on the duration of each state. |
| 200002 | 3072 | DB CPU | The CPU time consumed by the foreground process, in microseconds. OceanBase Database periodically updates the Time Model-related statistics internally. When a thread is active, it must be in the ON_CPU state or waiting for an event. The Time Model-related statistics are accumulated based on the duration of each state the thread spends. |
| 200005 | 3072 | background elapsed time | The total execution time of background processes, in microseconds. OceanBase Database periodically updates the Time Model-related statistics internally. When a thread is active, it must be in the ON_CPU state or waiting for an event. The Time Model-related statistics are accumulated based on the duration of each state it spends. |
| 200006 | 3072 | background cpu time | The CPU time consumed by the background process, in microseconds. OceanBase Database periodically updates the Time Model statistics. When a thread is active, it must be in the ON_CPU state or waiting for an event. The Time Model statistics are accumulated based on the duration of each state. |
| 200010 | 3072 | non idle wait time | The time that the foreground process is waiting non-idle, which is the total time that a session is in a waiting state but not idly waiting, in microseconds. OceanBase Database periodically updates Time Model-related statistics internally. When a thread is active, it must be in the ON_CPU state or a waiting-for-event state. The Time Model-related statistics are accumulated based on the duration of each state it spends. |
| 200011 | 3072 | idle wait time | The idle wait time of the foreground process, that is, the total time the session is in an idle wait state, in microseconds. OceanBase Database periodically updates Time Model-related statistics internally. When a thread is active, it must be in the ON_CPU state or waiting for an event. The Time Model-related statistics are accumulated based on the duration of each state it remains in. |
| 200012 | 3072 | background database time | The total time spent by background processes on database operations, in microseconds. OceanBase Database periodically updates the Time Model statistics internally. When a thread is active, it must be in the ON_CPU state or waiting for an event. The Time Model statistics are accumulated based on the duration of each state. |
| 200013 | 3072 | background database non-idle wait time | The time spent by a background process on database operations in non-idle wait states, in microseconds. OceanBase Database periodically updates the Time Model-related statistics internally. When a thread is active, it must be in the ON_CPU state or a wait-for-event state. The Time Model-related statistics are accumulated based on the duration of each state. |
| 200014 | 3072 | background database idle wait time | The time spent by a background process in an idle wait state performing database operations, in microseconds. OceanBase Database periodically updates the Time Model-related statistics internally. When a thread is active, it is either in the ON_CPU state or waiting for an event. The Time Model-related statistics are accumulated based on the duration of each state. |
| 200015 | 3072 | diagnostic info object allocated count | Total number of diagnostic objects allocated. Diagnostic objects on OBServer nodes store diagnostic statistics for database foreground and background tasks (including SQL and RPC). They are typically allocated at the start of a task and reclaimed at the end of the task. |
| 200016 | 3072 | diagnostic info object allocate failure count | Total number of failed diagnostic object allocations, in units. Diagnostic objects on OBServer nodes are used to store diagnostic statistics for database foreground and background tasks (including SQL and RPC). They are typically allocated at the start of a task and reclaimed at the end of the task. |
| 200017 | 3072 | diagnostic info object returned count | Total number of reclaimed diagnostic objects, in units. Diagnostic objects on an OBServer node are used to store diagnostic statistics for database foreground and background tasks (including SQL and RPC). They are typically allocated at the start of a task and reclaimed at the end of the task. |
| 200018 | 3072 | diagnostic info object return failure count | Total number of failed diagnostic object reclaims. Diagnostic objects on OBServer nodes store diagnostic statistics for database foreground and background tasks (including SQL and RPC). They are typically allocated at the start of a task and reclaimed at the end of the task. |
| 220001 | 3072 | concurrency wait total time | The total wait time caused by wait events of the Concurrency category, such as wait time due to resource locking. The unit is microseconds. It is obtained by accumulating and summarizing the corresponding wait events in OceanBase Database. |
| 220002 | 3072 | user io wait total time | The total time spent by a user process waiting for I/O operations (such as reading or writing data to disk) to complete, in microseconds. This value is derived from the cumulative summary of wait events analogously calculated by OceanBase Database. |
| 220003 | 3072 | application wait total time | The total wait time generated by user application code, such as lock waits caused by row-level locks or explicit lock commands, in microseconds. This value is derived from the cumulative summary of corresponding wait events in OceanBase Database. |
| 220004 | 3072 | schedule wait total time | Total time consumed by wait events of the SCHEDULER category, in microseconds. This value is obtained by accumulating and summarizing the corresponding wait events in OceanBase Database. |
| 220005 | 3072 | network wait total time | The total time consumed by network-related wait events, in microseconds. This value is obtained by accumulating and summarizing the corresponding wait events in OceanBase Database. |
TableAPI
For more information about TableAPI monitoring metrics, see OBKV-Table monitoring metrics in the OBKV documentation.
WR
Metric ID |
Type of the metric |
Metric name |
Description |
|---|---|---|---|
| 210001 | 8192 | wr snapshot task elapse time | The total time consumed in collecting WR (Workload Repository) snapshots, in microseconds. WR periodically collects data from internal OceanBase Database views to record the system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210002 | 8192 | wr snapshot task cpu time | Collects the total CPU time consumed by WR (Workload Repository) snapshots, in microseconds. WR periodically collects data from internal OceanBase Database views to record system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210003 | 8192 | wr purge task elapse time | WR (Workload Repository) The total time consumed by deleting a WR snapshot task, in microseconds. WR periodically collects data from internal OceanBase Database views to record the system status, and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210004 | 8192 | wr purge task cpu time | WR (Workload Repository) The total CPU time consumed by the WR snapshot deletion task, in microseconds. WR periodically collects data from internal OceanBase Database views to record system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210005 | 8192 | wr schedular elapse time | The total time consumed by WR (Workload Repository) scheduling tasks, in microseconds. WR periodically collects data from internal OceanBase Database views to record system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210006 | 8192 | wr schedular cpu time | The total CPU time consumed by a WR (Workload Repository) import task, in microseconds. WR periodically collects data from internal OceanBase Database views to record system status, and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210007 | 8192 | wr user submit snapshot elapse time | The total time consumed in collecting WR (Workload Repository) snapshots, in microseconds. WR periodically collects internal views of OceanBase Database to record the system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210008 | 8192 | wr user submit snapshot cpu time | The total CPU time consumed in collecting the workload repository (WR) snapshot, in microseconds. WR periodically collects internal views of OceanBase Database to record the system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210009 | 8192 | wr collected active session history row count | Total number of rows in ASH (ob_active_session_history) collected by WR, in rows. WR periodically collects data from internal OceanBase views to record system status and provides related views for user display and management operations through the DBMS_WORKLOAD_REPOSITORY package. |
| 210010 | 8192 | ash schedular elapse time | Total time spent by ASH sampling threads, in microseconds. ASH is a diagnostic mechanism based on sampling records from all active sessions within OceanBase Database. It uses background threads to sample the operational status of active sessions every second. |
| 210011 | 8192 | ash schedular cpu time | The total CPU time consumed by ASH sampling threads, in microseconds. ASH is a diagnostic mechanism based on sampling records from all active sessions within OceanBase Database. It uses background threads to sample the runtime status of active sessions every second. |
References
For an overview of specific monitoring metrics, see Overview of system monitoring metrics.
