feat:请求日志,和日志删除

This commit is contained in:
dzc committed 2026-06-17 20:22:19 +08:00
1 parent c6aabbd1b7
commit 5a1fe03f0c
26 files changed
+5661 -45

No files matched your search

+97
View File
@@ -0,0 +1,97 @@
const map = [
{
executeSql: `
SELECT
DB_NAME,
SQL_ID,
COUNT(*) AS exec_cnt,
ROUND(SUM(ELAPSED_TIME) / 1000000, 2) AS total_s,
ROUND(AVG(ELAPSED_TIME) / 1000, 3) AS avg_ms,
ROUND(MAX(ELAPSED_TIME) / 1000, 3) AS max_ms,
SUM(CASE WHEN TABLE_SCAN = 1 THEN 1 ELSE 0 END) AS table_scan_cnt,
ROUND(AVG(MEMSTORE_READ_ROW_COUNT + SSSTORE_READ_ROW_COUNT), 2) AS avg_read_rows,
ROUND(AVG(RETURN_ROWS), 2) AS avg_return_rows,
MAX(LEFT(REPLACE(QUERY_SQL, '\n', ' '), 300)) AS sample_sql
FROM oceanbase.GV$OB_SQL_AUDIT
WHERE REQUEST_TIME >= UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 HOUR)) * 1000000
AND DB_NAME = 'pjcloudx'
AND IS_INNER_SQL = 0
AND QUERY_SQL NOT IN ('SET autocommit=1', 'SET autocommit=0', 'commit', 'SELECT @@session.transaction_read_only')
GROUP BY DB_NAME, SQL_ID
ORDER BY total_s DESC
LIMIT 30;`,
resultJsonPath: './pjcloudx-1.json'
},
{
executeSql: `
SELECT
DB_NAME,
SQL_ID,
COUNT(*) AS exec_cnt,
ROUND(AVG(ELAPSED_TIME) / 1000, 3) AS avg_ms,
ROUND(MAX(ELAPSED_TIME) / 1000, 3) AS max_ms,
ROUND(SUM(ELAPSED_TIME) / 1000000, 2) AS total_s,
SUM(CASE WHEN TABLE_SCAN = 1 THEN 1 ELSE 0 END) AS table_scan_cnt,
ROUND(AVG(MEMSTORE_READ_ROW_COUNT + SSSTORE_READ_ROW_COUNT), 2) AS avg_read_rows,
MAX(LEFT(REPLACE(QUERY_SQL, '\n', ' '), 300)) AS sample_sql
FROM oceanbase.GV$OB_SQL_AUDIT
WHERE REQUEST_TIME >= UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 HOUR)) * 1000000
AND DB_NAME = 'pjcloudx'
AND IS_INNER_SQL = 0
AND QUERY_SQL NOT IN ('SET autocommit=1', 'SET autocommit=0', 'commit', 'SELECT @@session.transaction_read_only')
GROUP BY DB_NAME, SQL_ID
HAVING COUNT(*) >= 5
ORDER BY avg_ms DESC
LIMIT 30;
`,
resultJsonPath: './pjcloudx-2.json'
},
{
executeSql: `
SELECT
DB_NAME,
SQL_ID,
COUNT(*) AS exec_cnt,
SUM(CASE WHEN TABLE_SCAN = 1 THEN 1 ELSE 0 END) AS table_scan_cnt,
ROUND(SUM(CASE WHEN TABLE_SCAN = 1 THEN 1 ELSE 0 END) / COUNT(*) * 100, 2) AS table_scan_pct,
ROUND(AVG(ELAPSED_TIME) / 1000, 3) AS avg_ms,
ROUND(AVG(MEMSTORE_READ_ROW_COUNT + SSSTORE_READ_ROW_COUNT), 2) AS avg_read_rows,
MAX(LEFT(REPLACE(QUERY_SQL, '\n', ' '), 300)) AS sample_sql
FROM oceanbase.GV$OB_SQL_AUDIT
WHERE REQUEST_TIME >= UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 HOUR)) * 1000000
AND DB_NAME = 'pjcloudx'
AND IS_INNER_SQL = 0
AND QUERY_SQL NOT IN ('SET autocommit=1', 'SET autocommit=0', 'commit', 'SELECT @@session.transaction_read_only')
GROUP BY DB_NAME, SQL_ID
HAVING table_scan_cnt > 0
ORDER BY table_scan_cnt DESC, avg_ms DESC
LIMIT 30;
`,
resultJsonPath: './pjcloudx-3.json'
},
{
executeSql: `
SELECT
FROM_UNIXTIME(REQUEST_TIME / 1000000) AS req_time,
DB_NAME,
SQL_ID,
PLAN_ID,
ROUND(ELAPSED_TIME / 1000, 3) AS elapsed_ms,
ROUND(EXECUTE_TIME / 1000, 3) AS execute_ms,
ROUND(QUEUE_TIME / 1000, 3) AS queue_ms,
TABLE_SCAN,
MEMSTORE_READ_ROW_COUNT,
SSSTORE_READ_ROW_COUNT,
RETURN_ROWS,
AFFECTED_ROWS,
LEFT(REPLACE(QUERY_SQL, '\n', ' '), 500) AS sample_sql
FROM oceanbase.GV$OB_SQL_AUDIT
WHERE REQUEST_TIME >= UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 HOUR)) * 1000000
AND DB_NAME = 'pjcloudx'
AND IS_INNER_SQL = 0
ORDER BY ELAPSED_TIME DESC
LIMIT 50;
`,
resultJsonPath: './pjcloudx-4.json'
}
]