
# 操作指导
#### 前提条件
需要开启track_activities和track_procedure_sql参数，参数值都设置为on。
#### 语法
不涉及。
#### 注意事项
pg_stat_activity系统视图中query字段显示长度受GUC参数track_activity_query_size控制，默认1024字节，语句过长会被截断显示不完整。
#### 示例
```
-- 创建存储过程，可参考如下示例
gaussdb=# CREATE OR REPLACE PROCEDURE p1()
AS
BEGIN
pg_sleep(2);
END;
/
CREATE PROCEDURE
gaussdb=# CREATE OR REPLACE PROCEDURE p2()
AS
BEGIN
pg_sleep(2);
END;
/
CREATE PROCEDURE
gaussdb=# CREATE OR REPLACE PROCEDURE p3()
AS
BEGIN
p1();
p2();
END;
/
CREATE PROCEDURE
gaussdb=# CREATE OR REPLACE PROCEDURE p4()
AS
BEGIN
p1();
p2();
END;
/
CREATE PROCEDURE
gaussdb=# CREATE OR REPLACE PROCEDURE p5()
AS
BEGIN
p3();
p4();
END;
/
CREATE PROCEDURE
-- 会话A，调用存储过程
gaussdb=# CALL p5();
-- 会话B，在会话A执行期间查看是会话A正在执行的SQL，等会话A执行完成后查看语句信息，是会话A执行的上一条会被记录下来的语句。
gaussdb=# SELECT query FROM pg_stat_activity WHERE query LIKE '%call%' AND sessionid != pg_current_sessid();
                                          query
------------------------------------------------------------------------------------------
 query string: call p5();, current level: p2(), lineno: 3, execute stmt: CALL pg_sleep(2)
(1 row)
```
