Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

  • Log separation between objects (transformations, jobs, ...) on the same server
  • Central logging store infrastructure with central memory management
  • Logging data lineage so we know where each log row comes from
  • Incremental log updates from the central log store
  • Error line identification to allow for color coding

...

Code Block
CentralLogStore.discardLines(trans.getLogChannelId(), false);

Please note that CentralLogStore was renamed to KettleLogStore in v5.

Logging levels

Since PDI version 4 it is no longer possible to change the logging level while a transformation or job is running.  That is because every object that is executed keeps its own log level for the duration of the execution. Obviously this was implemented to allow different transformations and jobs to run with different logging levels on the same Carte, DI or BI server.

...

4.2.0 also sets sane defaults on all these values to make sure that by default you don't run out of memory.

Cleaning up after execution

In Spoon, Carte and the DI Server, cleanup of the logging records or logging registry entries is done automatically.  However, if you are executing transformations or jobs yourself using the Kettle API (see elsewhere in the SDK) you might want to remove logging records when you are done with them explicitly:

Code Block

// Remove the logging records

String logChannelId = trans.getLogChannelId(); // or job.getLogChannelId()
CentralLogStore.discardLines(logChannelId, true);



// Also remove the entries from other objects like TransMeta or JobMeta...
//
CentralLogStore.discardLines(transMeta.getLogChannelId(), true);

// Remove the entries from the registry
LoggingRegistry.getInstance().removeIncludingChildren(logChannelId);