Appdynamic 配置 PostgreSQL 收集器
配置 PostgreSQL 收集器
您可以使用数据库可见性监控任何版本的 PostgreSQL。
连接详细信息
部分 | 场地 | 描述 | |||
---|---|---|---|---|---|
创建新的收集器 | 数据库类型 | 您想要监控的数据库类型。 | |||
代理人 | 管理收集器的数据库代理。 | ||||
收藏家姓名 | 您想要用来识别收集器的名称。 | ||||
连接详细信息 | 主机名或 IP 地址 | 运行数据库的机器的主机名或 IP 地址。 | |||
侦听端口 | 数据库与数据库代理通信的端口的 TCP/IP 地址。 | ||||
自定义 JDBC 连接字符串 | 数据库代理生成的 JDBC 连接字符串,例如 。 要使用 Azure Active Directory 帐户进行身份验证,请指定以下详细信息: 代码 | ||||
用户名和密码 | 用户名 | 通过数据库代理连接并监控数据库的用户的名称。该用户应具有PostgreSQL 用户权限中描述的权限。 | |||
密码 | 通过数据库代理连接并监控数据库的用户的密码。 | ||||
CyberArk | 点击启用 CyberArk 以获取数据库用户名和密码。启用 CyberArk 后,需要有关应用程序、保险箱、文件夹和对象的信息才能获取数据库的用户名和密码。要将 CyberArk 与数据库可视性结合使用,您必须JavaPasswordSDK.jar 从 CyberArk 网站下载文件并将其重命名为cyberark-sdk-9.5.jar 。然后,您必须将 JAR 文件复制到数据库代理 zip 文件的 lib 目录中。 | ||||
高级选项 | 子收集器 | 单击即可在合并视图中监控多个数据库实例,并汇总多个数据库的指标。要监控自定义集群,您可以为每个子收集器添加额外的主机名或 IP 地址以及端口详细信息。您最多可以添加 29 个子收集器。这样,一个自定义集群中就可以监控 30 个数据库。除了主收集器消耗的许可证外,每个子收集器还会消耗一个或多个许可证,具体取决于数据库类型。
| |||
连接属性 | 单击即可添加新的 JDBC 连接属性或编辑关系数据库的现有属性。 要使用 Azure Active Directory 帐户进行身份验证,请添加以下详细信息:
| ||||
企业数据库 | 如果您的 PostrgreSQL 数据库安装是 企业数据库 分配。 | ||||
排除数据库 | 您想要排除的数据库,以逗号分隔。 | ||||
监控操作系统 | 请参阅配置数据库代理以监控服务器硬件。 |
设置 PostgreSQL 进行监控
用户权限
⚠️您必须是超级用户才能执行此部分。
创建非超级用户并授予监控权限。 为此,请执行以下步骤创建 SECURITY DEFINER 函数。这允许非超级用户查看pg_stat_activity
和pg_stat_statements.
-
调用
get_sa()
函数:CREATE FUNCTION get_sa() RETURNS SETOF pg_stat_activity LANGUAGE sql AS $$ SELECT * FROM pg_catalog.pg_stat_activity; $$ VOLATILE SECURITY DEFINER;CREATE VIEW pg_stat_activity_allusers AS SELECT * FROM get_sa(); GRANT SELECT ON pg_stat_activity_allusers TO public;
-
调用
get_querystats( )
函数:CREATE FUNCTION get_querystats() RETURNS SETOF pg_stat_statements LANGUAGE sql AS $$ SELECT * FROM pg_stat_statements; $$ VOLATILE SECURITY DEFINER; CREATE VIEW pg_stat_statements_allusers AS SELECT * FROM get_querystats(); GRANT SELECT ON pg_stat_statements_allusers TO public;
监控用户还必须能够从Splunk AppDynamics远程连接到数据库机器的 PostgreSQL 实例。
启用 pg_stat_statements 部分
⚠️您必须是超级用户才能执行此部分。
- 运行以下命令来创建
pg_stat_statements
扩展:create extension pg_stat_statements
代码 pg_stat_statements
如果您是第一次创建扩展,请重新启动数据库。
验证设置
⚠️确保新创建的 appduser(监控用户)执行此部分。
运行以下查询:
SELECT * FROM pg_stat_activity_allusers
SELECT * FROM pg_stat_statements_allusers
如果查询成功运行并且您获得输出,则设置成功。
设置 pgvector 进行监控
pgvector 是 PostgreSQL 的一个开源扩展,支持高效存储和搜索高维向量的相似性。它允许 PostgreSQL 处理向量嵌入,使其成为推荐系统、自然语言处理和计算机视觉等机器学习应用的理想选择。pgvector 支持向量数据类型和相似性度量,例如余弦、L2 和内积。
先决条件
确保:
- 模块 已加载并安装。必须通过添加 到 来 加载
pg_stat_statements
模块 ,因为它需要额外的共享内存。pg_stat_statements
shared_preload_libraries
postgresql.conf
- 矢量扩展已安装。
- PostgreSQL >= 14
启用 PostgreSQL 矢量指标
启动数据库代理时使用以下属性启用矢量指标:
| 启用 PostgreSQL 矢量指标。 |
| 指定您想要监控的向量表(以逗号分隔)。 |