通过HANA中的应用程序最后执行的查询

时间:2018-07-12 09:27:11

标签: sap hana

我正在从应用程序中查找SAP Hana中最后执行的查询和时间。我知道我们有类似SYS.M_SQL_PLAN_CACHE的东西,这些东西可以直接在HANA中执行查询,但是我正在寻找通过某些Java应用程序执行的查询。有可能吗?

1 个答案:

答案 0 :(得分:0)

您应该为将Java应用程序连接到HANA的用户启用特定于用户的跟踪。

从SAP HANA 2.0 SPS 03开始,可以通过用户和/或连接ID以及语句散列来限制跟踪的语句。

以下是如何根据不同条件启用跟踪的示例:

-- to enable traces
ALTER SYSTEM ALTER CONFIGURATION ('global.ini','SYSTEM') 
SET 
('traceprofile_<context>','application_user') = '<application user>', 
('traceprofile_<context>','sql_user') = '<database user>', 
('traceprofile_<context>','connection_id') = '<connection id>',
('traceprofile_<context>','statement_hash') = '<statement_hash of DB>', 
('traceprofile_<context>', '<component1>') = '<trace level>', 
('traceprofile_<context>', '<component2>') = '<trace level>' 
with reconfigure;

-- to disable traces
ALTER SYSTEM ALTER CONFIGURATION ('global.ini','SYSTEM') 
UNSET ('traceprofile_<context>') with reconfigure;

痕迹存储在 / usr / sap / {SID} / {HDB_instance} / {host} / trace 中,更多内容请参见this blog