Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

 

DigiMonitor: ItemWatcher

ItemWatcher logic has been rewritten for these purposes:

1) To provide unittestable code and in turn make sure functionality is tested thoroughly before release.

2) To provide better logging.

3) To fix specific issues with integer parsing which resulted in events not being handled and not correctly marked as failed either.

Nothing has changed regarding the configuration of ItemWatchers except an old bug which reversed 'greater than' and 'less than' when comparing values has finally been fixed.

In a users perspective the one and only major change from before to now is all ItemWatcher configurations are validated when starting up - even if they are not active. Any invalid configuration will result in an exception written to the digimonitor log in order to catch this at the earliest possible time.

How to access/use the new implementation?

...

How the new implementation works?

DigiMonitor: ItemWatcher

Logging has been overhauled. Messages are all in english and have been tightened up in wording and debug data.

Almost all parts of the configuration and certainly all of the common parts are now validated upon startup. As always it is important to check digimonitor logs. When an ItemWatcher is rejected due to error in configuration a clear exception message is written about this in the log for DigiMonitorPluginExecutor.

'Process only for this language ID' may now be omitted in which case a lookup is performed for digizuite constant 'LANGUAGE_DEFAULT_METADATA_ID'.

Some situations where events were marked as handled even though they failed they are now marked as failed instead. These situations are generally about when exceptions are thrown. Be aware that an event is marked as failed if 1 ItemWatchers fails in its "event matchmaking". So other ItemWatchers might have succesfully worked the event. This is as before.

Regarding configuration everything works as before. It should not be necessary to do anything differently. The exception is if any of the operators 'greater than' or 'less than' are used. See section below for details.

How to configure the new implementation?

DigiMonitor: ItemWatcher

SpecialValidator: Isnumeric

...