如何更改percona mysql审计日志的时间戳格式

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

我有一个 RHEL Linux 服务器,我在其中安装了 mysql percona 并设置了审核。

审计记录中收到的查询具有以下格式的时间戳。

{"audit_record":{"name":"查询","record":"179295580_2024-10-03T10:56:38","timestamp":"2024-10-03T10:57:54 UTC","command_class ":"drop_table","connection_id":"2","status":0,"sqltext":"删除表 DPT","user":"abc[abc] @ localhost []","host":"本地主机","os_user":"","ip":"","db":""}}

上面的记录中,时间戳是UTC。 ""时间戳":"2024-10-03T10:57:54 UTC","
我希望它采用以下格式:“timestamp”:“2024-10-03T10:57:54Z”。
基本上我想用 Z 替换 UTC。

我尝试更改服务器的时区,但没有帮助。 请帮我解决这个问题。

谢谢你

mysql timestamp percona timestamp-with-timezone
1个回答
0
投票

您使用的是 Percona Server 5.7 还是 8.0?我在 Percona Server 5.7 的代码中看到,该格式是使用您显示的 UTC 后缀进行硬编码的。

https://github.com/percona/percona-server/blob/release-5.7.44-51/plugin/audit_log/audit_log.c#L152

strftime(buf, buf_len, "%FT%T UTC", gmtime_r(&t, &tm));

但在 Percona Server 8.0 中,它是用“Z”后缀硬编码的。

https://github.com/percona/percona-server/blob/8.0/plugin/audit_log/audit_log.cc#L150

strftime(buf, buf_len, "%FT%TZ", gmtime_r(&t, &tm));

因此,如果您升级,它应该是您想要的格式。

要在 Percona Server 5.7 中更改它,您必须修补 Percona Server 源代码并自行构建。

© www.soinside.com 2019 - 2024. All rights reserved.