12.1 应用日志

2024年 4月 25日 61.3k 0

MySQL Shell 应用程序日志文件的位置是用户配置路径,文件名为 mysqlsh.log.默认情况下,MySQL Shell 将日志记录级别 5 的日志信息(错误、警告和信息性消息)发送到此文件。

笔记

日志消息带有 UTC 格式的时间戳。

要更改发送的日志记录信息的级别,或禁用日志记录到应用程序日志文件,请选择以下选项之一:

  • --log-level 启动 MySQL Shell 时 使用命令行选项。
  • 使用 MySQL Shell\option命令设置logLevelMySQL Shell 配置选项。有关使用此命令的说明,请参见 第 13.4 节 “配置 MySQL Shell 选项”。
  • 使用该shell.options对象设置 logLevelMySQL Shell 配置选项。有关使用此配置界面的说明,请参见 第 13.4 节 “配置 MySQL Shell 选项”。

表 12.1 “MySQL Shell 中的日志记录级别” 列出了可用的日志记录级别 。如果您指定日志记录级别为 1 或none该选项,则禁用记录到应用程序日志文件。所有其他值均启用日志记录并设置日志文件中的详细级别。该选项需要一个值。

使用--log-level命令行选项,您可以使用其文本名称或等效数字来指定日志记录级别,因此以下示例具有相同的效果:

$> mysqlsh --log-level=4
$> mysqlsh --log-level=warning

使用logLevelMySQL Shell 配置选项,您只能指定数字日志记录级别。

如果您在日志记录级别前面加上 @(at 符号),日志条目将输出到其他可查看位置,并写入 MySQL Shell 日志文件。下面的例子有同样的效果:

$> mysqlsh --log-level=@8
$> mysqlsh --log-level=@debug3

在基于 Unix 的系统上,日志条目以 stderr当前为 MySQL Shell 设置的输出格式输出。这是 MySQL Shell 配置选项的值 resultFormat,除非已通过使用命令行选项启动 MySQL Shell 激活了 JSON 包装--json

在 Windows 系统上,使用该函数打印日志条目 OutputDebugString(),可以在应用程序调试器、系统调试器或调试输出捕获工具中查看其输出。

MySQL Shell 日志文件格式是纯文本,条目包含时间戳和问题描述,以及上面列表中的日志记录级别。例如:

解释2016-04-05 22:23:01: Error: Default Domain: (shell):1:8: MySQLError: You have an error
in your SQL syntax; check the manual that corresponds to your MySQL server version for
the right syntax to use near '' at line 1 (1064) in session.sql("select * from t
limit").execute().all();

Windows 上的日志文件位置

在 Windows 上,应用程序日志文件的默认路径是 %APPDATA%\MySQL\mysqlsh\mysqlsh.log.要查找%APPDATA%系统上的位置,请从命令行回显它。例如:

C:>echo %APPDATA%

C:\Users\exampleuser\AppData\Roaming

在 Windows 上,路径是%APPDATA% 特定于用户的文件夹,并 MySQL\mysqlsh添加了。使用上面的示例,路径将为 C:\Users\exampleuser\AppData\Roaming\MySQL\mysqlsh\mysqlsh.log.

如果您希望应用程序日志文件存储在不同的位置,可以通过定义环境变量来覆盖默认的用户配置路径 MYSQLSH_USER_CONFIG_HOME。此变量的值%AppData%\MySQL\mysqlsh\ 在 Windows 上替换。

从 MySQL Shell 8.0.27 开始,您还可以 在从命令行--log-file运行时使用该选项覆盖用户配置路径。mysqlsh--log-file选项适用于单个 MySQL Shell 实例,这意味着不同的实例可以写入不同的位置。

基于 Unix 的系统上的日志文件位置

对于运行 Unix 的计算机,应用程序日志文件的默认路径是~/.mysqlsh/mysqlsh.log其中 “ ~ ”代表用户的主目录。环境变量HOME还代表用户的主目录。附加.mysqlsh 到用户的主目录确定日志的默认路径。

如果您希望应用程序日志文件存储在不同的位置,可以通过定义环境变量来覆盖默认的用户配置路径 MYSQLSH_USER_CONFIG_HOME。该变量的值~/.mysqlsh/在 Unix 上替换。

从 MySQL Shell 8.0.27 开始,您还可以 在从命令行--log-file运行时使用该选项覆盖用户配置路径。mysqlsh--log-file选项适用于单个 MySQL Shell 实例,这意味着不同的实例可以写入不同的位置。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论