在kettle执行的过程中,如果遇到错误,kettle会停止运行。在某些时候,并不希望kettle停止运行,这时候可以使用错误处理(Step Error Handling)。错误处理允许你配置一个步骤来取代出现错误时停止运行一个转换,出现错误的记录行将会传递给另一个步骤。在Step error handling settings对话框里,需要设置启用错误处理。
下面例子中读取postgres数据库中的a0表数据,然后输出到a1表:
a1表结构如下:
CREATE TABLE a1 ( a double precision, id integer NOT NULL, CONSTRAINT idpk PRIMARY KEY (id ), CONSTRAINT idunin UNIQUE (id ) )
从表结构可以看出,a1表中id为主键、唯一。
a0表数据预览:
现在a1表数据为空,执行上面的转换,执行成功之后,a1表数据和a0表数据一致。 再次执行,上面的转换会报错,程序停止运行,会报主键重复的异常。
现在,我想报错之后,程序继续往下执行,并记录错误的记录的相关信息,这时候可以使用“定义错误处理”的功能。 在“表输出”的步骤上右键选择“定义错误处理”,弹出如下对话框。
相关字段说明:
- 目标步骤:指定处理错误的步骤
- 启用错误处理?:设置是否启用错误处理
- 错误数列名:出错的记录个数
- 错误描述列名:描述错误信息的列名称
- 错误列的列名:出错列的名称
- 错误编码列名:描述错误的代码的列名
- 允许的最大错误数:允许的最大错误数,超过此数,不在处理错误
- 允许的最大错误百分比:
- 在计算百分百前最少要读入的行数:
添加错误处理后的转换如下:
记录错误信息的字段列表如下,可以看出,errorNum、errorDesc、errorName、errorCode都是在定义错误处理时候填入的列名称,a、id来自于输入的记录的列。
记录的错误信息如下:
分析 可以看到,错误日志里只是记录了出错的行里面的信息,并没有记录当前行所在的表名称以及执行时间等等,如果能够对此进行扩展,则该错误日志表才能更有实际意义。
说明 1.错误日志的错误码含义(如:TOP001)含义见参考文章2.
相关推荐
《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —04字段处理.pdf《ETL数据整合与处理(Kettle)》教学教案 ...
kettle使用问题处理汇总整理
kettle_使用中的一些常见问题.pdf Kettle_命令行使用.pdf kettle中文文档之output.pdf Kettle例子.pdf Kettle关于平面数据的导入.pdf Kettle初探.pdf Kettle命令行使用说明.pdf Kettle培训.ppt KETTLE基本...
《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf《ETL数据整合与处理(Kettle)》教学教案 ...
pentaho kettle中文开发手册
kettle中文使用介绍
《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》教学教案 —02源数据获取.pdf《ETL数据整合与处理(Kettle)》...
kettle中使用js计算年龄
Kettle 7.1 的中文使用文档,内容挺详细的, 非常适合新手入门。
kettle的中文教程,例子全面,非常适合刚接触kettle开发人员
这个kettle 的插件,它可以从一个或多个 PDF 文件中抽取文本内容,抽取后的文本一页作为一行记录,便于后续处理,如写入数据库等等。 帮助手册 http://www.xgndata.com/resources/kettle/PFR_UserGuide_zh_CN.pdf ...
KETTLE中文官方文档
本地简单kettle抽MySQL数据到ES中 案例.zip本地简单kettle抽MySQL数据到ES中 案例.zip 本地简单kettle抽MySQL数据到ES中 案例.zip本地简单kettle抽MySQL数据到ES中 案例.zip 本地简单kettle抽MySQL数据到ES中 案例....
ETL数据整合与处理(Kettle)教案.rar
《kettle中调用java类》示例代码;http://blog.csdn.net/neweastsun/article/details/40022823
《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 —05高级转换.pdf《ETL数据整合与处理(Kettle)》教学教案 ...
kettle中使用js计算两个日期之间的天数
20210511_kettle抽取mysql增量到ES中.zip20210511_kettle抽取mysql增量到ES中.zip20210511_kettle抽取mysql增量到ES中.zip20210511_kettle抽取mysql增量到ES中.zip20210511_kettle抽取mysql增量到ES中.zip20210511_...
kettle合并记录处理同表数据更新等操作.doc
kettle的中文文档,包含:4个ETL平台的操作手册——kettle、Kettle的命令使用和常见的一些问题、kettle各种技术手册、接口抽取同步等实例,共25个文档