跳到主要内容
版本:Nightly

DDL 事件

公共字段和 Procedure 状态请参阅事件数据模型

数据库事件

SELECT timestamp, type, procedure_state,
json_get_string(procedure_trigger, 'type') AS trigger_type,
json_to_string(payload) AS payload
FROM greptime_private.events
WHERE timestamp >= now() - INTERVAL '1' hour
AND schema_name = '<database_name>'
AND type = '<event_type>'
ORDER BY timestamp;

数据库事件类型包括 create_databasealter_databasedrop_database。 事件记录保留 schema_name。本查询用该列筛选,但不在结果中显示它。

create_database

+-------------------------------+-----------------+-----------------+--------------+----------------------------------------------------------------------------------+
| timestamp | type | procedure_state | trigger_type | payload |
+-------------------------------+-----------------+-----------------+--------------+----------------------------------------------------------------------------------+
| 2026-08-10 11:39:18.014737397 | create_database | Running | Submitted | {"create_if_not_exists":true,"options":[{"key":"ttl","value":"1h"}],"version":1} |
| 2026-08-10 11:39:18.052757527 | create_database | Done | Succeeded | null |
+-------------------------------+-----------------+-----------------+--------------+----------------------------------------------------------------------------------+

alter_database

+-------------------------------+----------------+-----------------+--------------+---------------------------------------------------------------------+
| timestamp | type | procedure_state | trigger_type | payload |
+-------------------------------+----------------+-----------------+--------------+---------------------------------------------------------------------+
| 2026-08-10 11:39:18.060198497 | alter_database | Running | Submitted | {"action":"set","options":[{"key":"ttl","value":"2h"}],"version":1} |
| 2026-08-10 11:39:18.107764363 | alter_database | Done | Succeeded | null |
+-------------------------------+----------------+-----------------+--------------+---------------------------------------------------------------------+

drop_database

+-------------------------------+---------------+-----------------+--------------+-------------------------------------+
| timestamp | type | procedure_state | trigger_type | payload |
+-------------------------------+---------------+-----------------+--------------+-------------------------------------+
| 2026-08-10 11:39:18.113713574 | drop_database | Running | Submitted | {"drop_if_exists":true,"version":1} |
| 2026-08-10 11:39:18.197868233 | drop_database | Done | Succeeded | null |
+-------------------------------+---------------+-----------------+--------------+-------------------------------------+

表事件

SELECT timestamp, type, procedure_state,
json_get_string(procedure_trigger, 'type') AS trigger_type,
table_name, table_id, json_to_string(payload) AS payload
FROM greptime_private.events
WHERE timestamp >= now() - INTERVAL '1' hour
AND schema_name = '<database_name>'
AND type = '<event_type>'
ORDER BY timestamp;

该查询返回过去一小时内、指定数据库中指定类型的表事件。若只查询某张表, 请在 WHERE 子句中添加 AND table_name = '<table_name>'

同一张表的事件记录会保留 table_namecreate_tablecreate_logical_tables 成功后,只有 Procedure 返回分配的 ID,记录中才会包含 table_idalter_tabletruncate_tabledrop_table 在提交时已经知道 表 ID,因此它们的事件记录会包含 table_id

GreptimeDB 还会记录 create_logical_tablesalter_logical_tables 事件。两者会为每张逻辑表的每个生命周期触发类型各写入一行,因此按 procedure_id 查询时,同一触发类型可能返回多行。undrop_tablepurge_dropped_table 仅 GreptimeDB 企业版支持。

create_table

+-------------------------------+--------------+-----------------+--------------+----------------+----------+------------------------------------------------------------+
| timestamp | type | procedure_state | trigger_type | table_name | table_id | payload |
+-------------------------------+--------------+-----------------+--------------+----------------+----------+------------------------------------------------------------+
| 2026-08-10 11:39:53.544351589 | create_table | Running | Submitted | ddl_source | NULL | {"create_if_not_exists":false,"engine":"mito","version":1} |
| 2026-08-10 11:39:53.620080844 | create_table | Done | Succeeded | ddl_source | 1449 | null |
+-------------------------------+--------------+-----------------+--------------+----------------+----------+------------------------------------------------------------+

alter_table

+-------------------------------+-------------+-----------------+--------------+------------+----------+------------------------------------+
| timestamp | type | procedure_state | trigger_type | table_name | table_id | payload |
+-------------------------------+-------------+-----------------+--------------+------------+----------+------------------------------------+
| 2026-08-10 11:40:23.445906161 | alter_table | Running | Submitted | ddl_source | 1449 | {"kind":"add_columns","version":1} |
| 2026-08-10 11:40:23.539710789 | alter_table | Done | Succeeded | ddl_source | 1449 | null |
+-------------------------------+-------------+-----------------+--------------+------------+----------+------------------------------------+

truncate_table

+-------------------------------+----------------+-----------------+--------------+----------------+----------+------------------------------------+
| timestamp | type | procedure_state | trigger_type | table_name | table_id | payload |
+-------------------------------+----------------+-----------------+--------------+----------------+----------+------------------------------------+
| 2026-08-10 11:40:51.949349425 | truncate_table | Running | Submitted | ddl_drop_probe | 1451 | {"time_range_count":0,"version":1} |
| 2026-08-10 11:40:51.982366731 | truncate_table | Done | Succeeded | ddl_drop_probe | 1451 | null |
+-------------------------------+----------------+-----------------+--------------+----------------+----------+------------------------------------+

drop_table

+-------------------------------+------------+-----------------+--------------+----------------+----------+--------------------------------------+
| timestamp | type | procedure_state | trigger_type | table_name | table_id | payload |
+-------------------------------+------------+-----------------+--------------+----------------+----------+--------------------------------------+
| 2026-08-10 11:40:51.986072827 | drop_table | Running | Submitted | ddl_drop_probe | 1451 | {"drop_if_exists":false,"version":1} |
| 2026-08-10 11:40:52.061732144 | drop_table | Done | Succeeded | ddl_drop_probe | 1451 | null |
+-------------------------------+------------+-----------------+--------------+----------------+----------+--------------------------------------+

Flow 事件

Flow 行保留 catalog_nameflow_name。Flow 的 schema_name 是 SQL NULL, 但 flow_name 仍会保留。create_flow 在可用时新增 flow_iddrop_flow 保留已知的 ID。

SELECT timestamp, type, procedure_state,
json_get_string(procedure_trigger, 'type') AS trigger_type,
catalog_name, schema_name, flow_name, flow_id,
json_to_string(payload) AS payload
FROM greptime_private.events
WHERE timestamp >= now() - INTERVAL '1' hour
AND flow_name = '<flow_name>'
AND type = '<event_type>'
ORDER BY timestamp;

create_flow

+-------------------------------+-------------+-----------------+--------------+--------------+-------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+
| timestamp | type | procedure_state | trigger_type | catalog_name | schema_name | flow_name | flow_id | payload |
+-------------------------------+-------------+-----------------+--------------+--------------+-------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+
| 2026-08-10 11:41:47.833758897 | create_flow | Running | Submitted | greptime | NULL | ddl_flow | NULL | {"create_if_not_exists":false,"eval_interval_secs":10,"expire_after":null,"or_replace":false,"version":1} |
| 2026-08-10 11:41:47.857319802 | create_flow | Done | Succeeded | greptime | NULL | ddl_flow | 1025 | null |
+-------------------------------+-------------+-----------------+--------------+--------------+-------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+

drop_flow

+-------------------------------+-----------+-----------------+--------------+--------------+-------------+-----------+---------+--------------------------------------+
| timestamp | type | procedure_state | trigger_type | catalog_name | schema_name | flow_name | flow_id | payload |
+-------------------------------+-----------+-----------------+--------------+--------------+-------------+-----------+---------+--------------------------------------+
| 2026-08-10 11:41:47.864231473 | drop_flow | Running | Submitted | greptime | NULL | ddl_flow | 1025 | {"drop_if_exists":false,"version":1} |
| 2026-08-10 11:41:47.926665304 | drop_flow | Done | Succeeded | greptime | NULL | ddl_flow | 1025 | null |
+-------------------------------+-----------+-----------------+--------------+--------------+-------------+-----------+---------+--------------------------------------+

View 事件

View 行保留稳定的 view_namecreate_view 只有在可用时才新增 view_iddrop_view 保留已知的 ID。

SELECT timestamp, type, procedure_state,
json_get_string(procedure_trigger, 'type') AS trigger_type,
view_name, view_id, json_to_string(payload) AS payload
FROM greptime_private.events
WHERE timestamp >= now() - INTERVAL '1' hour
AND schema_name = '<database_name>'
AND view_name = '<view_name>'
AND type = '<event_type>'
ORDER BY timestamp;

本查询使用 schema_name 筛选,但不在结果中显示它。

create_view

+-------------------------------+-------------+-----------------+--------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+
| timestamp | type | procedure_state | trigger_type | view_name | view_id | payload |
+-------------------------------+-------------+-----------------+--------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+
| 2026-08-10 11:41:18.483028192 | create_view | Running | Submitted | ddl_view | NULL | {"column_count":0,"create_if_not_exists":false,"or_replace":false,"referenced_table_count":1,"version":1} |
| 2026-08-10 11:41:18.513571854 | create_view | Done | Succeeded | ddl_view | 1452 | null |
+-------------------------------+-------------+-----------------+--------------+-----------+---------+-----------------------------------------------------------------------------------------------------------+

drop_view

+-------------------------------+-----------+-----------------+--------------+-----------+---------+--------------------------------------+
| timestamp | type | procedure_state | trigger_type | view_name | view_id | payload |
+-------------------------------+-----------+-----------------+--------------+-----------+---------+--------------------------------------+
| 2026-08-10 11:41:18.520281932 | drop_view | Running | Submitted | ddl_view | 1452 | {"drop_if_exists":false,"version":1} |
| 2026-08-10 11:41:18.572632167 | drop_view | Done | Succeeded | ddl_view | 1452 | null |
+-------------------------------+-----------+-----------------+--------------+-----------+---------+--------------------------------------+