WARN ConfigParser - 插件[streamreader,streamwriter]加载失败,1s后重试... Exception:Code:[Common-00], Describe

博客主要讲述了DataX本地部署后首次执行任务报错的问题及解决办法。问题是部署DataX到本地首次执行任务报错,解决办法是分别进入指定目录删除特定类型文件,经测试运行成功。

问题描述

部署DataX到本地后首次执行任务报错

[azula@hadoop102 bin]$ python /opt/module/datax/bin/datax.py /opt/module/datax/job/job.json

DataX (DATAX-OPENSOURCE-3.0), From Alibaba !
Copyright (C) 2010-2017, Alibaba Group. All Rights Reserved.


2022-10-31 11:20:55.780 [main] WARN  ConfigParser - 插件[streamreader,streamwriter]加载失败,1s后重试... Exception:Code:[Common-00], Describe:[您提供的配置文件存在错误信息,请检查您的作业配置 .] - 配置信息错误,您提供的配置文件[/opt/module/datax/plugin/reader/._drdsreader/plugin.json]不存在. 请检查您的配置文件. 
2022-10-31 11:20:56.787 [main] ERROR Engine - 

经DataX智能分析,该任务最可能的错误原因是:
com.alibaba.datax.common.exception.DataXException: Code:[Common-00], Describe:[您提供的配置文件存在错误信息,请检查您的作业配置 .] - 配置信息错误,您提供的配置文件[/opt/module/datax/plugin/reader/._drdsreader/plugin.json]不存在. 请检查您的配置文件.
	at com.alibaba.datax.common.exception.DataXException.asDataXException(DataXException.java:26)
	at com.alibaba.datax.common.util.Configuration.from(Configuration.java:95)
	at com.alibaba.datax.core.util.ConfigParser.parseOnePluginConfig(ConfigParser.java:153)
	at com.alibaba.datax.core.util.ConfigParser.parsePluginConfig(ConfigParser.java:125)
	at com.alibaba.datax.core.util.ConfigParser.parse(ConfigParser.java:63)
	at com.alibaba.datax.core.Engine.entry(Engine.java:137)
	at com.alibaba.datax.core.Engine.main(Engine.java:204)

解决办法

分别进入到 /opt/module/datax/plugin/reader 和 /opt/module/datax/plugin/writer,删除掉这类型文件

cd /opt/module/datax/plugin/reader
rm -rf  ./._*

cd /opt/module/datax/plugin/writer
rm -rf  ./._*

测试

运行成功

[azula@hadoop102 writer]$ python /opt/module/datax/bin/datax.py /opt/module/datax/job/job.json

DataX (DATAX-OPENSOURCE-3.0), From Alibaba !
Copyright (C) 2010-2017, Alibaba Group. All Rights Reserved.


2022-10-31 11:24:58.161 [main] INFO  VMInfo - VMInfo# operatingSystem class => sun.management.OperatingSystemImpl
2022-10-31 11:24:58.167 [main] INFO  Engine - the machine info  => 

	osInfo:	Oracle Corporation 1.8 25.212-b10
	jvmInfo:	Linux amd64 3.10.0-862.el7.x86_64
	cpu num:	4

	totalPhysicalMemory:	-0.00G
	freePhysicalMemory:	-0.00G
	maxFileDescriptorCount:	-1
	currentOpenFileDescriptorCount:	-1

	GC Names	[PS MarkSweep, PS Scavenge]

	MEMORY_NAME                    | allocation_size                | init_size                      
	PS Eden Space                  | 256.00MB                       | 256.00MB                       
	Code Cache                     | 240.00MB                       | 2.44MB                         
	Compressed Class Space         | 1,024.00MB                     | 0.00MB                         
	PS Survivor Space              | 42.50MB                        | 42.50MB                        
	PS Old Gen                     | 683.00MB                       | 683.00MB                       
	Metaspace                      | -0.00MB                        | 0.00MB                         
...

在使用 DataX 进行数据同步过程中,可能会遇到插件初始化错误(Framework-12),该错误通常与插件加载或配置有关。以下是排查和解决此类问题的建议方案: ### 错误原因分析 插件初始化错误(Framework-12)通常由以下原因导致: - 插件未正确安装或缺失关键依赖。 - 插件配置文件中存在语法错误或参数配置不正确。 - DataX 的 `plugin` 目录结构不完整或路径配置错误。 - 插件版本与当前 DataX 版本不兼容。 ### 解决方案 #### 1. 检查插件目录结构 确保 `plugin` 目录下包含 `reader` 和 `writer` 子目录,且每个子目录中包含相应的插件模块。例如: ``` plugin/ ├── reader/ │ └── mysqlreader/ ├── writer/ └── mysqlwriter/ ``` 若缺少某个插件目录或文件,应从官方仓库重新下载对应插件并放置到正确路径中 [^3]。 #### 2. 验证插件配置文件 检查配置文件中插件名称是否与 `plugin` 目录下的模块名称一致。例如,若使用 `mysqlreader`,配置文件中 `reader.name` 应为 `"mysqlreader"`,且参数配置应符合插件文档要求 。 #### 3. 检查依赖库 某些插件依赖外部库(如 JDBC 驱动)。确保 `lib` 目录下包含所需依赖包,例如 MySQL 的 `mysql-connector-java.jar`。若依赖缺失或版本不匹配,可能导致插件无法初始化 [^4]。 #### 4. 日志排查 查看 DataX 执行日志,定位具体错误信息。日志中通常会包含插件加载失败的详细原因,例如类找不到(ClassNotFoundException)或方法不匹配(NoSuchMethodError)等 [^4]。 #### 5. 插件编译与打包 若使用自定义插件或从源码构建 DataX,需确保插件模块正确编译并打包。执行以下命令进行构建: ```bash mvn -U clean package assembly:assembly -Dmaven.test.skip=true ``` 确保 `target` 目录生成,若构建失败,需修复编译错误后再重新打包 [^4]。 ### 示例配置文件 以下是一个简单的 DataX 配置文件示例,用于测试插件初始化是否正常: ```json { "job": { "content": [ { "reader": { "name": "streamreader", "parameter": { "column": [ { "name": "id", "type": "INT" }, { "name": "name", "type": "STRING" } ], "sliceRecordCount": "100" } }, "writer": { "name": "streamwriter", "parameter": { "encoding": "UTF-8", "print": true } } } ], "setting": { "speed": { "channel": "2" } } } } ``` ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值