obproxy_error.log records OceanBase Database Proxy (ODP) error logs, including logs for ODP errors and OceanBase Database errors that occur during SQL execution.
Log format
Log printing time,Logical tenant name,TraceId,RpcId,Logical database name,Physical database information (cluster:tenant:database),Database type (OB/RDS),Logical table name,Physical table name,SQL command,SQL type (CRUD),Execution result (success/failed),Error code (empty for success),SQL statement,Total execution time (μs),ODP processing time,Connection establishment time,OBServer node execution time,Current thread name,System penetration data,Penetration data,OBServer node address,Error details
where
The
SQL commandcan beCOM_QUERYorCOM_STMT_PREPARE.The
total execution timeincludes the internal SQL execution time.The
current thread nameindicates the internal thread ID in ODP.The
system penetration dataindicates the disaster recovery information of the system.
Examples
Run the select obproxy_error from dual; command. Since the obproxy_error field is not enclosed in quotation marks, it will be treated as a column, resulting in an execution failure. The client returns the following error:
MySQL [test]> select obproxy_error from dual;
ERROR 1054 (42S22): Unknown column 'obproxy_error' in 'field list'
obproxy_error.log records the following log for the error:
2022-07-11 10:26:09.358231,undefined,,,,obcluster:sys:test,OB_MYSQL,,,COM_QUERY,SELECT,failed,1054,select obproxy_error from dual,42423us,454us,0us,41222us,Y0-7F4B1EF653A0,,,,0,11.xxx.xxx.53:33041,Unknown column 'obproxy_error' in 'field list'
# Log analysis
1,2022-07-11 10:26:09.358231 # The log printing time.
2,undefined # The logical tenant name. You can ignore this field.
3, # The trace ID. You can ignore this field.
4, # The RPC ID. You can ignore this field.
5, # The logical database name. You can ignore this field.
6,obcluster:sys:test # The information about the physical database, in the format of cluster name:tenant name:database name.
7,OB_MYSQL # The database type.
8, # The name of the logical table.
9, # The name of the physical table.
10,COM_QUERY # The SQL command, for example, COM_QUERY or COM_STMT_PREPARE.
11,SELECT # The SQL type.
12,failed # The execution result, which is success or failed.
13,1054 # The error code, which is empty when the execution result is success.
14,select obproxy_error from dual # The SQL statement.
15,42423us # The total execution time, including the internal SQL execution time.
16,454us # The ODP processing time.
17,0us # The connection establishment time.
18,41222us # The OBServer node execution time.
19,Y0-7F4B1EF653A0 # The internal trace ID of the log in ODP.
20, # It is for internal use. You can ignore it.
21, # It is for internal use. You can ignore it.
22, # It is for internal use. You can ignore it.
23,0 # It is for internal use. You can ignore it.
24,11.xxx.xxx.53:33041 # The address of the routing destination OBServer node.
25,Unknown column 'obproxy_error' in 'field list' # The error message.
Line 12 records the execution failure and line 24 records the address of the OBServer node that executes the SQL query. Since line 25 records an error message, the execution failure occurs in the database.