跳到主要内容
版本:Next

报告

报告函数以 HTML 标记形式生成。

定期报告功能:

get_report([server name,] start_id integer, end_id integer [, description text [, with_growth boolean]])  通过示例标识符生成报告。

get_report([server name,] time_range tstzrange [, description text [, with_growth boolean]]) 生成最短采样间隔的报告,涵盖提供time_range。

get_report([server name], baseline varchar(25) [, description text [, with_growth boolean]])  使用基线作为采样间隔生成报告。

get_report_latest([server name])  为两个最新示例生成报告。

函数参数:

server  - 服务器名称。 如果省略,则假定为本地服务器。

start_id - 间隔开始示例标识符。

end_id - 间隔结束样本标识符。

time_range - 时间范围(tstzrange 型)。

baseline - 基线名称。

with_growth - 一个标志,请求间隔扩展到最近的边界,并提供相关增长数据。默认值为假。

description - 文本备忘录,它将作为报告描述包含在报告中。

通常 ,您可以使用以下命令生成HWR报告。

psql -f $HALO_HOME/admin/hwr/hwrrpt.sql

举个列子:

[halo@node1 ~]$ psql -f $HALO_HOME/admin/hwr/hwrrpt.sql
Server list in this HWR schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

server_id | server_name | server_created | enabled | co

nnstr

-----------+-------------+-------------------------------+---------+------------

----------------

1 | node1 | 2022-02-11 14:20:28.640646+08 | t | dbname=halo

0root port=1921

(1 row)

Please enter the server id: 1

Specify the number of days of snapshots to choose from

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Entering the number of days (n) will result in the most recent

(n) days of snapshots being listed. Pressing <return> without

specifying a number lists all completed snapshots.

Enter value for num_days: 1

server_id |sample_id | sample_time

-----------+-----------+------------------------

1 | 1 |2022-02-11 10:00:01+08

1 | 2 |2022-02-11 11:00:02+08

1 | 3 |2022-02-11 11:13:12+08

……

(384rows)

指定开始和结束快照 ID

Specify the Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Begin Snapshot Id specified: 381

End Snapshot Id specified: 382

hwr_report_381_382.html generated

$ ls -l hwr_report_381_382.html

-rw-r--r-- 1 halo halo 122829 Feb 15 10:00

hwr_report_381_382.html

我们还可以根据自己的要求直接生成具有报告功能的报告。报告生成示例:

$ psql -Aqtc "SELECT hwr.get_report(480,482)" -o report_480_482.html

使用时间范围生成报告:

psql -Aqtc "select hwr.get_report(tstzrange('2022-02-15 09:51:35+03','2020-02-15 10:00:18+03'))" -o report_range.html

此外,时间范围对于生成定期报告非常有用。让我们构建最后 24 小时报告:

psql -Aqtc "select hwr.get_report(tstzrange(now() - interval '1 day',now()))" -o last24h_report.html

现在,我们可以使用任何 Web 浏览器查看报告文件。