rvalyi / terminatooor

Brute force your OpenERP data integration with OOOR inside the Kettle ETL (aka Pentaho Data Integration - PDI)
Other
38 stars 10 forks source link

puts doesn't write to log #7

Open emumanu opened 13 years ago

emumanu commented 13 years ago

It will be awesome if puts writes to the logging window or to have a writeToLog function that writes to the logging window as the javascript step does.

rvalyi commented 13 years ago

Hello emumanu, we are thinking about that + logs that would eventually ends up inside an OpenERP request for the next version. We can call Java functions from Ruby, so if you have suggestions on how to do that, please write it down here so we package it all in a nice log function with several optional outputs.

Thank you very much for the suggestion.

emumanu commented 13 years ago

Hi Raphaël,

I don't know anything about Ruby so I can't help here, but as the terminatooor step seems a modified version of the Javascript step I thought it would be "easy" to simulate that behaviour.

BTW, I am taking the opportunity to thank you guys for terminatooor and ooor. It is awesome how easy it is to comunicate with OpenERP inside a good ETL tool. Hats off!

rvalyi commented 13 years ago

hello emumanu, providing a 'log()' method that would both do puts in standard out and also log inside the Java Kettle logging API. But a few points are not clear to us: 1) what would be the benefit compared to reading the log in the console? 2) can we easily detect Exceptions in those logs and trigger events like send mails on error? 3) we use terminatooor a lot with the "kettle_connector" module of OpenERP (extra addons). Thus we can trigger the transfo as cron tasks or by clicking on buttons directly within OpenERP. kettle_connector currently attach the log as an OpenERP attachement. If we log in the Kettle logging stream, how could we read it to expose it to the OpenERP advanced user responsible of the transformation?

emumanu commented 13 years ago

Hi Raphaël, the answers to your questions are:

1) Probably the title I posted wasn't appropiate, sorry. I really don't need the standard out for anything. I just need a log() method that does write to the kettle log.

2) Yes, you can easily write those logs to a table (you can configure it in transformation settings). So in theory you could check that table and take any action you want if there is an error in the new rows inserted. You can gain more control of the logging system as explained in #3.

3) There has been a complete change in the logging architecre for PDI4.0 in order to get control of the log. This posts points to some info about it:

http://www.ibridge.be/?p=181

But it seems that the details are in the book mentioned there.