Execution alerts
Execution alerts offer the special ability to get notified with more detailed output when a process execution fails or a job cannot be scheduled. They are an addition to the normal server log output. Currently
- server log and
- mail notifications
are supported as execution alert type. The default execution alert is set to 'no operation' which basically doesn't handle those errors above in a special way. You will still see the normal server log output and the error log reported by any job.
Enable error reporting by job/schedule
By default the execution alert will not be triggered. You've to submit jobs or create schedules by calling theREST APImanually with the additional attribuereportError: true
. As a further step you've to set up the error reporter as below.
Error reporter configuration
To configure a specific execution alert type please setreporting.error.type
as property in theexecution.properties
in the RapidMiner Server home folder. Depending on the error reporting type you have chosen, you may have to add additional properties which are described below.
Type: Server Log
- Add the
reporting.error.type = logging
property. - You're good to go and the execution alert is set up. They should be reported to the usual server log.
The output might look like the following:
Execution of job '835a387a-74c9-4617-a36f-954c97d7e53a' has failed with error type 'USER_ERROR'. Title: . Message: . Stacktrace:
Type: Mail Notifications
- Add
reporting.error.type = mail
- Add
reporting.error.mail.to = receiverAddress@domain.tld
to define the mail address which will receive alert mails Add a mail configuration forsending the mails. Here, you have two options:
If you've configured a mail server in the RapidMiner Server installer, you just need to add the corresponding JNDI name and you're good to go.
spring.mail.jndi-name = java:/Mail
If you haven't configured a mail server in the installer or if you like to use another mail server, you need to add the appropiate
spring.mail.*
properties. A detailed list which properties are available can be found onspring.io. You may also need to defineJavaMail propertieswhich will be listed underspring.mail.properties.*
.A simple setup might look like the following which also uses JavaMail properties.
spring.mail.host = myHost spring.mail.port = 587 spring.mail.username = myUser spring.mail.password = myPassword spring.mail.properties.mail.smtp.auth = true spring.mail.properties.mail.smtp.starttls.enable = true spring.mail.properties.mail.smtp.starttls.required = true
- (Optional) If you like to automatically redirect or tag incoming alert mails, you can set the property
reporting.error.mail.subjectPrefix
to a custom prefix and handle all mails containing this subject prefix in your mailbox. - (Optional) If you like to display a specific sender address and/or a name, you can set the following properties:
reporting.error.mail.from.address = senderAddress@domain.tld
which must be a valid sender address of your user which you've already defined viaspring.mail.username
orspring.mail.jndi-name
reporting.error.mail.from.name = My Sender
which must be a valid name
- You're good to go and the execution alert is set up. Notifications should be sent via mail.
An example mail might look like the following:
[RapidMiner Server Execution Error Report] Insufficient capability Execution of job '545778e9-8bf1-49cb-8197-0d41dc015ef9' has failed with error type 'USER_ERROR'. Title: Insufficient capability Message: The operator SVM does not have sufficient capabilities for the given data set: polynominal label not supported Stacktrace: Process[1] (Process) subprocess 'Main Process' +- Retrieve Iris[1] (Retrieve) ==> +- SVM[1] (Support Vector Machine)