Mariadb log_error 时间戳格式显示不正确

问题描述 投票:0回答:1

我在 RHEL 中运行 mariadb 10.3.39,并在 my.cnf.d/mariadb-server.cnf 中进行以下配置

[玛丽亚数据库] log_error=/var/log/mariadb/mariadb.log

在文件中显示错误日志时,我发现一个问题,如果时间戳小于 10,则会在其后面附加一个空格,而不是 0。这会导致发送到 ELK 时解析日志时出现问题。这是一个已知问题,有什么方法可以使其标准化吗?

2024-09-26  4:10:08 0 [Note] Server socket created on IP: '0.0.0.0'.
2024-09-26  4:10:08 0 [Note] Reading of all Master_info entries succeeded
2024-09-26  4:10:08 0 [Note] Added new Master_info '' to hash table

下面是日期格式的变量设置,

MariaDB [(none)]> show variables like '%date%';
+-----------------------------------------+-------------------+
| Variable_name                           | Value             |
+-----------------------------------------+-------------------+
| binlog_direct_non_transactional_updates | OFF               |
| date_format                             | %Y-%m-%d          |
| datetime_format                         | %Y-%m-%d %H:%i:%s |
| log_slave_updates                       | OFF               |
| low_priority_updates                    | OFF               |
| query_cache_wlock_invalidate            | OFF               |
| sql_safe_updates                        | OFF               |
+-----------------------------------------+-------------------+
7 rows in set (0.001 sec)
mysql mariadb timestamp rhel
1个回答
0
投票

您无法修改错误日志中的格式,因为它是在函数 print_buffer_to_file():

中硬编码的
fprintf_stderr( "%d-%02d-%02d %2d:%02d:%02d %lu [%s] %.*s%.*s\n",
          ...
© www.soinside.com 2019 - 2024. All rights reserved.