When the amount of diagnostic data collected is too large, the Agent may exceed its memory limit and keep restarting. In this case, the only solution is to modify the configuration file parameters and re-push the configuration through a command-line interface (CLI). However, this non-standard approach may lead to issues such as Agent upgrade failures due to incompatible configurations or configurations being reset.
To address this, OCP provides a web-based parameter configuration management interface. You can refer to this section to view and manage OCP-related collection and operation parameters on the O&M Configuration page.
Parameter list
OCP supports four types of parameters for data collection and O&M: SQL Diagnostics Collection, Transaction Diagnostics Collection, ASH Collection, and Performance Monitoring Parameters. These parameters correspond to the SQL diagnostic, transaction diagnostic, active session history, and performance monitoring features of OCP.
SQL diagnostic collection
SQL Diagnostics Collection provides basic data for the SQL diagnostic module in tenants and autonomous services.
Parameter |
Parameter Type |
Default Value |
Value Range |
Description |
|---|---|---|---|---|
| monagent.pipeline.sql.audit.status | String | active | - | The switch for sql_audit diagnostic collection. Valid values: active and inactive. |
| monagent.limit.memory.fuse.percent | Double | 0.8 | [0.1, 1.0] | The threshold for memory fusing during diagnostic collection. The value is calculated as the current memory of the ocp_monagent process divided by the memory limit of the ocp_monagent process. If the threshold is exceeded, diagnostic data will no longer be collected. You can increase the threshold when the collection pressure is high. |
| monagent.ob.sql.audit.collect.batch.size | Int | 4000 | [500, 20000] | The number of internal views queried in a single sql_audit collection. You can increase this value to improve efficiency when the collection pressure is high. |
| monagent.ob.slow.sql.threshold | String | 100ms | - | The threshold for reporting slow SQL. SQL statements exceeding this threshold will be reported as slow SQL to MonitorDB. You can adjust the threshold to reduce the number of reported slow SQL statements when there are too many slow SQL statements. |
| monagent.ob.sql.transaction.timeus.threshold | Int | 500000 | [10000, 300000000] | The threshold for large transactions, in microseconds. SQL statements of transactions with durations below this threshold will not be reported. You can adjust the threshold to reduce the number of reported large transaction statements when there are too many large transaction statements. |
| monagent.ob.sql.transaction.log.size.byte | Int | 524288 | [1024, 1073741824] | The threshold for large transaction logs, in bytes. SQL statements of transactions with log sizes below this threshold will not be reported. You can adjust the threshold to reduce the number of reported large transaction statements when there are too many large transaction statements. |
| monagent.pipeline.plan.monitor.status | String | active | - | The switch for parallel SQL collection. Valid values: active and inactive. |
| monagent.pipeline.slow.sql.status | String | active | - | The switch for slow SQL collection. Valid values: active and inactive. |
| monagent.ob.sql.diagnose.collect.query.timeout | String | 10s | - | The timeout period for querying SQL during diagnostic collection. This includes queries for sql_audit, sql_plan, and sql_plan_monitor. |
| monagent.pipeline.sql.plan.status | String | active | - | The switch for execution plan collection. Valid values: active and inactive. |
| monagent.ob.sql.plan.collect.batch.size | Int | 4000 | [500, 20000] | The number of internal views queried in a single execution plan collection. You can increase this value to improve efficiency when the collection pressure is high. |
| monagent.ob.sql.plan.monitor.collect.batch.size | Int | 4000 | [500, 20000] | The number of internal views queried in a single parallel SQL collection. You can increase this value to improve efficiency when the collection pressure is high. |
| monagent.pipeline.monitor.user.collect | Bool | false | - | Specifies whether to collect SQL information of sys tenant queries from the agent itself. By default, this parameter is set to false. You can set it to true for troubleshooting. |
| monagent.pipeline.empty.query.sql.collect | Bool | false | - | Specifies whether to collect sql_audit records with empty query_sql. By default, this parameter is set to false. You can set it to true for troubleshooting. |
Transaction diagnostic collection
Transaction Diagnostics Collection provides basic data for the transaction diagnostics module in tenants and autonomous services.
Parameter |
Parameter Type |
Default Value |
Value Range |
Description |
|---|---|---|---|---|
| monagent.pipeline.transaction.status | String | active | - | The switch for transaction collection. Valid values: active and inactive. |
| monagent.ob.sql.transaction.collect.batch.size | Int | 4000 | [500, 20000] | The number of internal views queried in a single transaction collection. You can increase this value to improve efficiency when the collection pressure is high. |
| monagent.ob.sql.transaction.collect.join.global.transaction | Bool | true | - | Specifies whether to join the global transaction table when collecting transaction information. This is used to collect information about XA transactions. |
| monagent.ob.sql.transaction.collect.query.timeout | String | 5s | - | The timeout period for querying SQL during transaction collection. |
Active session history collection
ASH Collection provides basic data for the session management module in tenants and autonomous services.
Parameter |
Parameter Type |
Default Value |
Value Range |
Description |
|---|---|---|---|---|
| monagent.pipeline.session.status | String | active | - | The switch for active session collection. Valid values: active and inactive. |
| monagent.ob.session.event.collect.batch.size | Int | 4000 | [500, 20000] | The number of internal views queried in a single active session collection. You can increase this value to improve efficiency when the collection pressure is high. |
| monagent.ob.session.event.collect.query.timeout | String | 10s | - | The timeout period for querying SQL during active session collection. |
Performance monitoring
Performance monitoring collection provides basic data for the performance monitoring modules of clusters, tenants, and OBProxy.
Parameter |
Parameter type |
Default value |
Value range |
Description |
|---|---|---|---|---|
| monagent.pipeline.ob.status | String | active | - | The performance monitoring collection switch. Valid values: active and inactive. |
| monagent.pipeline.tenant.disk.collect.disabled | Bool | false | - | Specifies whether to collect disk data of tenants and below. We recommend that you disable this parameter when SQL performance issues occur. |
| monagent.collector.ob.extra.interval | String | 60s | - | The frequency of minute-level performance monitoring collection. |
| monagent.second.metric.cache.update.interval | String | 5s | - | The frequency of second-level performance monitoring collection. |
Parameter management
On the O&M Configuration page, you can perform the following basic management operations on a cluster:
- Manage parameters: You can enable or disable O&M configuration parameters, modify parameter values, search for parameters, and view modified parameters.
- View parameter modification history: View the historical modification records of all O&M configuration parameters initiated by the current cluster.
- Configure OCP Agent resources: Configure resources for all OCP Agents in the cluster.
