您的位置:首页 > 编程语言 > Java开发

kettle job如何利用java的反射机制获取执行的sql语句

2015-05-26 14:04 615 查看
kettle job中的JavaScript如何获取同一个job中SQL步骤的执行语句并让执行语句记录在日志中呢?首先写日志需要用到job中JavaScript写日志的方法,其次是利用java反射机制获取执行的sql。

如:

var sqlObj = getJobStep("SQL");
var sql = sqlObj.environmentSubstitute(sqlObj.getSQL());

var logWriter = org.pentaho.di.core.logging.LogWriter.getInstance();
logWriter.logBasic(parent_job.getJobname(), "作业SQL语句打印===================>"+sql);
true;

function getJobStep(stepName){
var jobMeta = parent_job.getJobMeta();
var jobStep = jobMeta.findJobEntry(stepName, 0, false);
var stepObj = jobStep.getEntry();
return stepObj;
}


这样就可以将日志优雅地记录在日志文件中了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: