了解 PDT 日志操作

系统活动中的 PDT 事件日志探索功能会提供有关 PDT 的历史事件的信息,包括 PDT 重新编译和错误。

例如,PDT 事件日志探索可以帮助您排查 PDT 构建失败或触发器卡住的问题,或者当您尝试确定特定表的构建时间和构建该表的进程时,它也很有用。

如需详细了解“系统活动”中提供的探索,请参阅使用系统活动探索创建 Looker 使用情况报告文档页面。

查看 PDT 日志操作

PDT 日志操作会显示在系统活动 PDT 事件日志探索中。您必须是 Looker 管理员或拥有 see_system_activity 权限,才能查看 PDT 事件日志探索。

如需查看 PDT 日志操作及其关联的日志操作数据列表,请从 PDT 事件日志“探索”的 PDT 事件日志视图中选择操作操作数据字段以及任何其他所需字段(您可以从探索菜单中转到该视图)。

了解 PDT 日志操作及其对应的 PDT 日志操作数据对

下表针对以下类型的事件,细分了 PDT 事件日志探索中的不同日志操作,以及每种日志操作对应的数据值:

下表使用了 PDT 事件日志探索的 PDT 事件日志视图中的操作操作数据字段。

创建活动

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
create begin 在重新生成器线程获取 PDT 时发生。 prod-user-x 表示用户从“探索”中查询了 PDT,但该表不存在,因此 Looker 必须重新构建 PDT。
create begin 在重新生成器线程获取 PDT 时发生。 prod 表示 PDT 由数据组或 SQL 触发器(由重新生成器构建)触发。
create begin 在重新生成器线程获取 PDT 时发生。 dev-user-x 表示已构建新的开发模式 PDT。

通常发生在对 PDT 的 SQL 进行更改后,在开发模式下通过“探索”查询 PDT。这会构建新表,以避免影响生产表。
create regen requires 通常表示用户查询的 PDT 引用了尚未构建的其他 PDT,从而触发重新构建。 null
create user rebuild 表示用户已使用“探索”中的重新构建派生表并运行选项手动重建 PDT。 null
create ready PDT 实际开始构建后,create ready 事件和 create begin 事件之间的差异表示子项重建所需的时间。

如果 create ready 事件紧跟在 create begin 事件发生之后,则可能不需要重新构建表。
null
create complete PDT 构建完成后发生。 production trigger 表示 PDT 已因触发检查而构建(即 PDT 已由重新生成器构建)。
create incremental complete PDT 构建完成时发生(针对增量 PDT 构建)。 increment generation 包含递增的序列号。
create incremental rows 显示上次递增的受影响行数。 rows delta 包含添加的行数的正值和移除的行数的负值。
create sql error 表示 PDT 构建因 SQL 错误而失败。 sql error 包含从数据库返回的 SQL 错误消息。

我们建议在 SQL Runner 中运行 PDT 的底层 SQL,以确保没有新的修改导致此错误。
create child error 创建依赖 PDT 时出错时发生。 sql error 包含从数据库返回的 SQL 错误消息。
create cancelled error 表示由于查询取消而导致 PDT 构建失败。 query killed 表示查询被终止。如果用户从 Looker 中取消查询、从数据库中取消查询,或者查询在数据库中超时,就可能会发生这种情况。
create trigger old value 表示检查时的旧触发器值。 trigger value 返回旧触发器的返回值。
create trigger new value 表示检查后的新触发器值。 trigger value 返回新触发器的返回值。
create trigger missing 当指定 PDT 不再存在或已被丢弃时,在针对给定 PDT 进行触发器检查时发生。 null
create trigger datagroup 在触发检查时,PDT 是否由数据组触发。 null

重新生成事件

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
regenerate begin 表示重新生成器正在开始一个进程,例如检查触发器或构建表。

通常,如果 regenerate begin 事件没有结束事件,并且 PDT 当前未在构建或触发器未检查,此日志操作表示重新生成器挂起。
connection name 显示正在运行重新生成器线程的连接名称。
regenerate end 表示重新生成器已完成进程(例如检查触发器或重新构建 PDT),或者出现错误。 success 表示触发器已检查且 PDT 已重新构建。
regenerate end 表示重新生成器已完成进程(例如检查触发器或重新构建 PDT),或者出现错误。 error_in_regen 表示此表重新生成周期中发生错误。
regenerate end 表示重新生成器已完成进程(例如检查触发器或重新构建 PDT),或者出现错误。 datagroup_error 表示检查数据组触发器时出错。
regenerate trace 表示重新生成器线程跟踪。 hex id 表示运行进程的 Java 线程。

拖放和发布任务事件

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
drop table 表示 PDT 或临时表已从数据库中删除。 unreferenced 表示由于关联的触发器值发生更改,表已被丢弃。

如果使用了其他持久化方法,则表示表已过期。
drop table 表示 PDT 或临时表已从数据库中删除。 zombie 表示该表的注册密钥不属于有效注册密钥集(在 connection_reg3 中),因此已被标记为要丢弃的僵尸表。
drop table 表示 PDT 或临时表已从数据库中删除。 pdt_build_failure_cleanup 当构建失败或被检测到被取消时,Looker 会舍弃可能已部分创建的表。
drop table failed 尝试丢弃 PDT 或临时表失败时发生。 zombie 表示删除僵尸表的尝试失败。
drop table failed 尝试丢弃 PDT 或临时表失败时发生。 unreferenced 表示尝试删除未引用的表失败。
drop view 表示 publish_as_db_view 表已被丢弃。 expired 表示表的有效期已过,且表已被移除。
drop view failed 表示尝试删除 publish_as_db_view 表失败。 zombie 表示删除 publish_as_db_view 僵尸表的尝试失败。
drop view failed 表示尝试删除 publish_as_db_view 表失败。 unreferenced 表示尝试删除 publish_as_db_view 未引用表失败。
publish task complete 表示之前的视图已舍弃,并且新视图已发布。 X 次成功,X 次失败 指示发布任务是成功还是失败。

数据组触发器事件

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
datagroup_triggers begin 表示数据组触发器已开始检查连接。

如果与连接的最新 datagroup_triggers begin 行有很大的差距,并且没有 datagroup_triggers end,则可能意味着重新生成器在检查触发器时卡住了。
connection name 显示触发器正在检查的连接名称。
datagroup_triggers end 表示数据组触发器已完成检查。 null

Reap 事件

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
reap begin 表示死神已开始检查连接,以查看应从暂存架构中丢弃哪些非活跃派生表。 connection name 显示 Reaper 正在检查的连接的名称。
reap end 表示死神已完成指定连接的周期。 connection name 显示死神已检查的连接的名称。

触发事件

记录操作 记录操作说明 记录操作数据 “日志操作数据”说明
trigger value 指示在计算时触发器的值。 trigger value 显示实际触发值。
trigger value compute 表示用于计算触发器值的 SQL。 trigger sql 显示用于计算触发器值的实际 SQL。
trigger value error 表示在计算触发器值或运行触发器 SQL 时发生 SQL 错误。 sql error 显示针对触发器查询返回的数据库 SQL 错误。
trigger datagroup check 指示重新生成器是否针对数据库运行了 SQL 触发器查询。 布尔值(truefalse
  • true:表示已运行触发器查询。
  • false:表示 SQL 触发器查询尚未运行。