news 2026/4/3 3:21:10

HGWatcher使用说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HGWatcher使用说明

文章目录

  • 文档用途
  • 详细信息

文档用途

本文介绍HGWatcher的功能、安装方式及使用方法,并提供HGWatcher更新说明及下载地址。

详细信息

简介

HGWatcher是一个定期收集HGDB、PostgreSQL及其所运行的操作系统的信息的工具,用以在数据库或操作系统出现问题时辅助判断问题原因。

功能

  1. HGWatcher可以通过脚本收集服务器上有正在运行的HGDB、PostgreSQL数据库的安装目录、数据存放目录等信息。

  2. HGWatcher定期使用操作系统命令及sql语句获取操作系统及数据库信息。

  3. HGWatcher在数据库或操作系统出现问题时可以通过脚本获取当前操作系统及数据库的信息,并将HGWatcher记录的归档日志一并打包。

安装及使用用法

1、安装pg_stat_statements插件

采集数据库信息需要使用插件pg_stat_statements,,需要提前在数据库中配置插件pg_stat_statements。

Highgo Database及PostgreSQL数据库默认自带插件pg_stat_statements,但需要手动进行安装。默认放置路径为:$PGHOME/share/extension/。如果PostgreSQL为源码安装,$PGHOME/share/extension/路径可能为空,需要进入源码路径中contrib/pg_stat_statements下,执行以下命令安装PostgreSQL的插件。

$ cd contrib/pg_stat_statements

$ make

$ make install

确定$PGHOME/share/extension/下有插件pg_stat_statements之后,可以执行插件的安装过程了,过程如下:

#执行以下SQL创建extension

highgo=# create extension pg_stat_statements;

修改数据库配置文件postgresql.conf,修改内容如下。修改完成后,需要重启数据库生效。

#表示启动时导入pg_stat_statements动态库

shared_preload_libraries = ‘pg_stat_statements’

#最多监控5000条SQL

pg_stat_statements.max = 5000

#选择监控的级别,all表示监控所有SQL包括函数中执行的的SQL;top只监控直接执行的SQL,不包括函数中执行的SQL;none表示不监控。

pg_stat_statements.track = all

#表示是否追踪非DML(DDL,DCL等)语句,on表示追踪,off表示不追踪。

pg_stat_statements.track_utility = on

#重启后是否保留统计信息,on表示保留,off表示不保留

pg_stat_statements.save = on

2、收集当前运行数据的信息

解压HGWatcher_V1.0.1.tar.gz,进入HGWatcher目录,首先执行getDBlist.sh,获取当前服务器中运行的数据库的信息。如执行过程中提示“Database highgo did not install extended pg_stat_statements!”表示pg_stat_statements未安装或安装存在问题,请参照步骤1进行安装或检查。

执行过程如下。

[root@pgha3 HGWatcher]# sh getDBlist.sh

The current environment has a set of 3 databases.

To monitor all databases, you need to write all database information to the file dblist.cfg, and then use the -dblist option.

You can also read the database information through the current script and then modify it according to the actual situation.

Do you want to generate a database information list [Y/N]?y

Database benchmarksql did not install extended pg_stat_statements!

Database highgo did not install extended pg_stat_statements!

Database highgo did not install extended pg_stat_statements!

##########################################################################################

#The output file is /HGWatcher/data/dblist.cfg

##########################################################################################

执行结果放在HGWatcher目录下的data,名称为getDBlist.sh,内容如下:

[DATABASE1]

#psql的路径

PSQL=/usr/pgsql-10/bin/psql

#PostgreSQL的安装路径

PGDATAPATH=/var/lib/pgsql/10/data

#PostgreSQL使用的端口

PGPORT=5432

#当前数据库的IP,默认使用127.0.0.1,需要设置psql -h 127.0.0.1可以直接登录数据库

PGHOST=127.0.0.1

#登录数据库的用户,需要使用数据库的超级用户

PGUSER=postgres

#数据库软件的安装或管理用户,如有误,需要手动修改。

OSUSER=postgres

#当前所有创建的数据库,如果获取到的数据库不需要监控,可以直接删除

PGDATABASE=postgres,benchmarksql

#数据库是否可以不使用密码直接登录,1表示可以,0表示不可以,需要配置数据库,使其在本地可以不使用密码直接登录

DirectAccess=1

[ENDDATABASE1]

3、定时收集系统信息

确认dblist.cfg文件中信息与当前运行数据库信息相符后,执行HGWatcher.sh开始收集信息。默认设置为30秒收集一次操作系统的信息,60分钟收集一次数据库的信息,归档默认保留168小时(7天)。如无特殊要求,可以使用默认设置。

HGWatcher.sh有以下几个选项:

-dblist:指定使用自定义的dblist.cfg -OSsnapshot:指定采集操作系统信息的快照时间,单位秒,默认时间30秒 -DBsnapshot:指定采集数据库信息的快照时间,单位分钟,默认时间60分钟 -archtime :指定归档存放时间,单位小时,默认时间168小时(一周) -archpath :指定归档存放的路径,默认路径HGWatcher/archive/ -help :获取帮助信息

示例:

./HGWatcher.sh -OSsnapshot 20 -DBsnapshot 11 -archtime 4 -archpath /tmp/archive

假如每20秒采集一次操作系统信息,每11分钟采集一次数据库信息,归档保存时间4小时,归档存放目录/tmp/archive。参数设置如下:

[root@pgha3 HGWatcher]# ./HGWatcher.sh -OSsnapshot 20 -DBsnapshot 11 -archtime 4 -archpath /tmp/archive

Testing for discovery of OS Utilities…

2018-09-29 09:07:59 VMSTAT found on your system.

2018-09-29 09:08:01 IOSTAT found on your system.

2018-09-29 09:08:01 IFCONFIG found on your system.

2018-09-29 09:08:03 MPSTAT found on your system.

2018-09-29 09:08:04 NETSTAT found on your system.

2018-09-29 09:08:04 Discovery of CPU CORE COUNT

2018-09-29 09:08:04 CPU CORE COUNT will be used by HGWatcher to automatically look for cpu problems

2018-09-29 09:08:04 CPU CORE COUNT =

2018-09-29 09:08:04 VCPUS/THREADS =

2018-09-29 09:08:04 Discovery completed.

2018-09-29 09:08:09 Starting HGWatcher v1.0.0

With OSsnapshotInterval = 20 #操作系统快照时间

With DBSnapshotInterval = 11m #数据库快照时间

With ArchiveInterval = 4h #归档保留时间

With ArchivePath = /tmp/archive #归档保存位置

HGWatcher - Written by zb,

Highgo Corporation

2018-09-29 09:08:14 Data is stored in directory: /tmp/archive

2018-09-29 09:08:14 Starting Data Collection…

4、收集收集归档文件

进入到HGWatcher安装目录下,执行./getarch.sh,当前已运行的HGWatcher会被停止,并重新运行一次HGWatcher,归档进程会将7天内的数据库日志及日志归档目录一并打包压缩到当前目录。数据库日志保存到归档目录下的pg_log文件夹中,并建立以端口号命名的文件夹,例如某数据库使用端口为5866,将在pg_log下建立5866的文件夹,并把对应的数据库日志复制到5866文件夹下。

下载HGWatcher,请查看附件。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/31 15:47:17

AI语言大模型时代 Cloudera CDP(华为CMP 鲲鹏版)对自有知识的保

在AI语言大模型时代 Cloudera CDP(华为CMP 鲲鹏版)对自有知识的保护下载地址: https://pan.baidu.com/s/1PDj6dySUNHotNABp7d1a0w?pwd57is 提取码: 57is 查找“Hadoop信创”,输入“CMP”恢复最新下载地址 博文末尾处有下载方式&…

作者头像 李华
网站建设 2026/3/25 1:15:44

python lambda匿名函数

一、python lambda匿名函数 1.python使用lambda来创建匿名函数 2.lambda函数是一种小型的,匿名的,内联的函数 3.lambda匿名函数具有任意数量的参数,但是只能有一个expression表达式。 4.lambda匿名函数不需要使用def关键字来定义完整的函数 5…

作者头像 李华
网站建设 2026/3/24 20:14:05

langchain最新实践:如何使用DeepAgents构建Multi-Agent应用

多智能体架构不必很复杂。Deep Agents 的设计哲学是用正确的抽象(中间件处理管道、工具调用处理调用)把这些模式变成可以自由组合的简单构建块。构建真正能用的 AI Agent 系统,最有效的方法之一就是把复杂任务拆解给多个专业化的智能体来协作…

作者头像 李华
网站建设 2026/3/27 15:01:24

学霸同款2026 AI论文平台TOP8:研究生开题报告神器测评

学霸同款2026 AI论文平台TOP8:研究生开题报告神器测评 2026年学术写作工具测评:为何需要一份精准榜单? 在科研日益精细化的今天,研究生群体对论文写作工具的需求已从基础功能拓展到高效协同、智能辅助和格式规范等多维度。面对市…

作者头像 李华
网站建设 2026/3/27 13:00:22

Java基于Spring Boot+Vue的外卖商家管理系统的设计与实现

所需该项目可以在最下面查看联系方式,为防止迷路可以收藏文章,以防后期找不到 这里写目录标题项目介绍系统实现截图技术栈介绍Spring Boot与Vue结合使用的优势Spring Boot的优点Vue的优点Spring Boot 框架结构解析Vue介绍系统执行流程Java语言介绍系统测…

作者头像 李华