显示由自动化框架运行的作业遇到的运行时错误信息。这包括为用户定义的操作设置的作业,以及为管理数据保留、连续聚合、压缩和其他自动化策略而创建的策略运行的作业。有关自动化策略的更多信息,请参阅 策略 部分。
名称 | 类型 | 描述 |
---|---|---|
job_id | INTEGER | 为实现策略而创建的后台作业的 ID |
proc_schema | TEXT | 作业执行的函数或过程的模式名称 |
proc_name | TEXT | 作业执行的函数或过程的名称 |
pid | INTEGER | 执行作业的后台工作进程的进程 ID。在作业崩溃的情况下,此值为 NULL |
start_time | TIMESTAMP WITH TIME ZONE | 作业的开始时间 |
finish_time | TIMESTAMP WITH TIME ZONE | 报告错误的时间 |
sqlerrcode | TEXT | 与此错误关联的错误代码(如果有)。有关错误代码的完整列表,请参阅 官方 PostgreSQL 文档 |
err_message | TEXT | 详细的错误消息 |
查看最近作业失败的信息
SELECT job_id, proc_schema, proc_name, pid, sqlerrcode, err_message from timescaledb_information.job_errors ;job_id | proc_schema | proc_name | pid | sqlerrcode | err_message--------+-------------+--------------+-------+------------+-----------------------------------------------------1001 | public | custom_proc2 | 83111 | 40001 | could not serialize access due to concurrent update1003 | public | job_fail | 83134 | 57014 | canceling statement due to user request1005 | public | job_fail | | | job crash detected, see server logs(3 rows)
信息视图 timescaledb_information.job_errors
是在内部模式中的表 _timescaledb_internal.job_errors
之上定义的。为了防止此表变得过大,默认情况下启用了一个系统后台作业 Error Log Retention Policy [2]
,并具有以下配置
id | 2application_name | Error Log Retention Policy [2]schedule_interval | 1 monmax_runtime | 01:00:00max_retries | -1retry_period | 01:00:00proc_schema | _timescaledb_internalproc_name | policy_job_error_retentionowner | owner must be a user with WRITE privilege on the table `_timescaledb_internal.job_errors`scheduled | tfixed_schedule | tinitial_start | 2000-01-01 02:00:00+02hypertable_id |config | {"drop_after": "1 month"}check_schema | _timescaledb_internalcheck_name | policy_job_error_retention_checktimezone |
在 Timescale 和 Managed Service for TimescaleDB 上,错误保留作业的所有者是 tsdbadmin
。在本地安装中,作业的所有者与扩展的所有者相同。保留作业的所有者可以更改和删除它。例如,所有者可以像这样更改保留间隔
SELECT alter_job(id,config:=jsonb_set(config,'{drop_after}', '"2 weeks"')) FROM _timescaledb_config.bgw_job WHERE id = 2;
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页。