MySQL 8.3 Reference Manual  /  ...  /  TRACE Format

35.2.2 跟踪格式

跨度表示跟踪中的操作。有关更多信息,请参阅 OpenTelemetry 跨度。遥测组件发出以下跨度类型:

控制跨度

在遥测配置更改时发出,通知下游系统哪些信号收集已启用或禁用。

该跨度类型具有以下属性:

  • 名称:Control

  • trace_enabled:布尔值。

  • metrics_enabled:布尔值。

  • logs_enabled:布尔值

  • details

会话跨度

在客户端会话结束时发出,记录该会话从初始连接到会话关闭的相关数据。

该跨度类型具有以下属性:

  • 名称:Session

  • mysql.processlist_id

  • mysql.thread_id

  • mysql.user

  • mysql.host

  • mysql.group

该跨度还包含动态属性,以格式 mysql.session_attr.xxx 生成,其中 xxx 是会话连接属性名称。请参阅 session_connect_attrs

例如,在会话断开连接后:

mysql> select * from session_connect_attrs;
+----------------+-----------------+------------+------------------+
| PROCESSLIST_ID | ATTR_NAME       | ATTR_VALUE | ORDINAL_POSITION |
+----------------+-----------------+------------+------------------+
|             10 | _pid            | 14488      |                0 |
|             10 | _platform       | x86_64     |                1 |
|             10 | _os             | Linux      |                2 |
|             10 | _client_name    | libmysql   |                3 |
|             10 | os_user         | malff      |                4 |
|             10 | _client_version | 8.0.34-tr  |                5 |
|             10 | program_name    | mysql      |                6 |
+----------------+-----------------+------------+------------------+
7 rows in set (0.00 sec)

发出会话跨度为:

Span #
    Trace ID       : 4137db42febad2d00a4123286076ba18
    Parent ID      : 
    ID             : b7ff26660b9fcb35
    Name           : session
    Kind           : Internal
    Start time     : 2023-01-11 10:58:24.79557649 +0000 UTC
    End time       : 2023-01-11 11:00:50.46695685 +0000 UTC
    Status code    : Unset
    Status message : 
Attributes:
     -> mysql.processlist_id: Int(10)
     -> mysql.thread_id: Int(50)
     -> mysql.user: Str(root)
     -> mysql.host: Str(localhost)
     -> mysql.group: Str(USR_default)
     -> mysql.session_attr._pid: Str(14488)
     -> mysql.session_attr._platform: Str(x86_64)
     -> mysql.session_attr._os: Str(Linux)
     -> mysql.session_attr._client_name: Str(libmysql)
     -> mysql.session_attr.os_user: Str(malff)
     -> mysql.session_attr._client_version: Str(8.0.34-tr)
     -> mysql.session_attr.program_name: Str(mysql)

语句跨度

在语句执行结束时发出,记录语句执行的所有相关信息,从执行开始到完成。

该跨度类型具有以下属性:

  • 名称:stmt

  • mysql.event_name

  • mysql.lock_time

  • mysql.sql_text

  • mysql.digest_text

  • mysql.current_schema

  • mysql.object_type

  • mysql.object_schema

  • mysql.object_name

  • mysql.sql_errno

  • mysql.sqlstate

  • mysql.message_text

  • mysql.error_count

  • mysql.warning_count

  • mysql.rows_affected

  • mysql.rows_sent

  • mysql.rows_examined

  • mysql.created_tmp_disk_tables

  • mysql.created_tmp_tables

  • mysql.select_full_join

  • mysql.select_full_range_join

  • mysql.select_range

  • mysql.select_range_check

  • mysql.select_scan

  • mysql.sort_merge_passes

  • mysql.sort_range

  • mysql.sort_rows

  • mysql.sort_scan

  • mysql.no_index_used

  • mysql.no_good_index_used

  • mysql.max_controlled_memory

  • mysql.max_total_memory

  • mysql.cpu_time