gpt4 book ai didi

postgresql - 在 azure postgres 中记录自定义消息

转载 作者:行者123 更新时间:2023-12-03 06:23:18 25 4
gpt4 key购买 nike

在我的存储过程中,我插入了如下所示的自定义引发消息:

引发警告“为 schema % 执行过程”,schema_name

我希望能够在执行这些过程时查看这些日志,但是,我不知道如何执行此操作。我确实找到了this on microsoft's page ,我已启用诊断并发送到日志分析工作区: enter image description here ,但是,我运行查询后的日志没有输出任何内容:

AzureDiagnostics
| where Resource == "myprivateserver"
| where Category == "PostgreSQLLogs"

enter image description here

我想知道我做得是否正确,或者上面的自定义日志消息是否也被记录。

在左侧 Pane 中,我得到了包含许多不同内容的表格:
enter image description here

最佳答案

我在 Azure PostgreSQL 中创建了存储过程,并出现如下警告:-

CREATE OR REPLACE PROCEDURE my_proc(schema_name TEXT)
LANGUAGE plpgsql
AS $$
BEGIN
RAISE WARNING 'my_proc executed for schema %', schema_name;
-- add your procedure logic here
END;
$$;

CALL my_proc('my_schema');

enter image description here

将数据发送到 Log Analytics 工作区,如下所示:-

enter image description here

我检查了 Azure Postgresql > 左 Pane > 日志部分中的日志并运行了此查询,但存储过程上不存在任何日志,因为默认诊断日志处理 Azure PostgreSQL 连接和向 Azure Postgre 进行身份验证时的错误指标SQL:-

AzureDiagnostics
| where Category == "PostgreSQLLogs"
| where Message contains "my_proc executed for schema"

无输出:-

enter image description here

我尝试检查AzureDiagnostics表来获取存储过程数据,但没有找到任何数据,您还可以从左到右检查表中的每一列。请参阅以下内容:-

enter image description here

由于存储过程属于审核日志,您需要启用 Azure PostgreSQL Pgaudit 扩展才能查看审核日志,如下所示:-

enter image description here

运行此命令来检查Pgaudit扩展是否从服务器中的共享库加载,如下所示:-

show shared_preload_libraries;
CREATE EXTENSION pgaudit;

enter image description here

enter image description here

现在,转到服务器参数> 搜索 pgaudit 并向 pgaudit.log 添加写入权限

enter image description here

现在,我转到发送诊断日志的日志分析工作区,并运行以下查询来获取过程日志,并在下面的表输出中收到警告消息:-

AzureDiagnostics
| where Category == "PostgreSQLLogs"
| where Message contains "my_proc"

enter image description here

注意 - 对于警告,反射(reflect)在启用 pg 审核扩展后等待一段时间并再次引发警告。

根据您的评论:-为了了解表的所有列指定,请将查询导出为 CSV(所有列)并检查 Excel csv 工作表,如下所示:-

/image/BDzxQ.png

/image/1T6Nz.png /image/RBLNU.png

引用:- Audit logging - Azure Database for PostgreSQL - Flexible server | Microsoft Learn

关于postgresql - 在 azure postgres 中记录自定义消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75742422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com