kettle后台命令执行任务

kettle后台命令执行任务

  • kitchen
  • Pan
  • 配置定时任务

kitchen

kitchen是一个作业执行引擎,用来执行作业。这是一个命令行执行工具,
参数说明如下

  1. -rep:Repository name 任务包所在存储名
  2. -user:Repository username 执行人
  3. -pass:Repository password 执行人密码
  4. -job:The name of the job to launch 任务包名称
  5. -dir:The directory(don’tforget the leading /or) 文件夹
  6. -file:The file name(JobXML)to launch 要启动的文件名
  7. -level:The logging level(Basic,Detailed,Debug,Rowlevel,Error,Nothing)指定日志级别
	Error: 只显示错误 
	Nothing: 不显示任何输出 
	Minimal: 只使用最少的记录 
	Basic: 这是默认的基本日志记录级别 
	Detailed: 详细的日志输出 
	Debug: 以调试为目的,非常详细的输出 
	Rowlevel: 使用行级记录,会产生大量的数据 
  1. -log:The logging file to write to 指定日志文件
  2. -listdir:List the directories in the repository 列出指定存储中的目录结构。
  3. -listjobs:List the jobs in the specified directory 列出指定目录下的所有任务
  4. -listrep:List the defined repositories 列出所有的存储
  5. -norep:Don’t log into the repository 不写日志
    示例
    1.windows中:
kitchen /file:D:\kettle\kettletest\job.kjb  /level:Basic>D:\kettle\kettletest\job.log

2.linux 中

./kitchen .sh -file=/usr/local/kettle/job.kjb  >> /usr/local/kettle/ktr/job.log

Pan

pan是一个转换执行引擎,用来执行转换。 参数与 Kitchen 类似, 如下。

  1. -version 显示版本信息
  2. -file=filename 运行的文件
  3. -param:key=value 指定命名参数
  4. -log=logging filename 设置日志文件
  5. -level=logging level 设置日志级别

示例:指定基本log,执行一个ktr转换
命令如下:

1.windows平台

pan.bat /file:D:\kettle\kettletest\ktr.ktr /level:Basic>D:\kettle\kettletest\ktr.log

2.linux 中,参数以 –分隔

./pan.sh -file=/usr/local/kettle/ktr/ktr.ktr >> /usr/local/kettle/ktr/ktr.log

配置定时任务

可以按照如下方法操作,创建一个文件 test.sh
在这个文件里写入如下语句

export JAVA_HOME=/usr/java/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
/opt/kettle-spoon/data-integration/kitchen.sh -file=/opt/kettle-spoon/ktr/test/job.kjb log=log.timelog ~data +%y%m%d~

然后给这个文件可执行权限 +x

然后运行 crontab –e 编辑定时任务

*/10 * * * * bash /home/etl/test.sh表示每隔10分钟执行一次test.sh

然后保存,运行crontab–l查看定时任务是否已载入

运行systemctl restart crond重启定时任务,运行systemctl status crond查看crontab服务状态

你可能感兴趣的:(kettle,大数据)