Skip to main content
Skip table of contents

Logging

Basics

Any errors occurring during a process run are logged in the process database. This logging is accessible for each process directly in CURSOR-BPM. The table will load in the default configuration of the last 100 entries and allows sorting and filtering. Columns can be displayed or hidden via the context menu provided for the table header. Clicking the button Load all log entries will load all error entries logged for the process.

The following error details are available:

  • Creation date: Time of error generation

  • Log & log name: Error category (like script task, process start, etc.)

  • Version: Version of the executed process

  • Action & action ID: The unique name of an action from the implementation model and the internal ID

  • User: The user executing the task

  • Message: The internal message

  • Error message & error ID: The message text e.g. about the error in the BPM script and the error ID for locating the error in the log files

If the error is assigned to an action in the technical model, you can use the button

to access the relevant action. Outdated entries can be deleted depending on selection or creation date.

Database logging

Database logging of errors during process execution is active by default. An advanced search on logging errors in processes can be done in the administration menu under Runtime data in the Process Error Logs entity.

Warning

Error logging in the database should not be deactivated, because the status information for running process instances will then not be displayed correctly.

Script logging

In the configuration for CURSOR-BPM, the logging function can be activated in the database from within the script (utility class ScriptUtils). These entries appear with the identifiers DEBUG, INFO or ERROR and do not contain any error message text.

Warning

This option should only be used temporarily and not in a productive environment, since extensive DEBUG logging in processes can severely affect the performance of the system!

Error report

Error messages and information are always logged:

  • StringUtils.error(String): Error messages with the prefix ERROR

  • StringUtils.info(String): Information with the prefix INFO

Additional debug messages can be output in the process script to track which steps were completed in the process.

These debug messages must be activated to appear in the log. Messages can then be displayed during the test, which can also be shown in the production system without changing the process.

  • ScriptUtils.enableDebug(boolean): Activates the output of debug messages in the current action

  • StringUtils.debug(String): Output of messages with the prefix DEBUG

Show log

The process log of the application server and that of the current client can be opened in the cockpit.

Clicking the button will create a copy of the log file, which then opens.


The log files open in Notepad++, which is provided as part of the CRM client (client/bin/notepadmini/notepad++.exe).

Each output is enriched with additional information to allow the assignment of the report to a process, a process instance, an action and a user.

CODE
2013-02-22 14:51:20,775 INFO  [ProcessScript] [Process: Prozess(4) 'Prozess'] [Instance: f02bfe11-7cf6-11e2-b5e1-c86000771447] [Task: cid_fvvvvvv074r1g17k0tsgijScriptTaskProperty ''] [User: ADMIN] - Starten der Aktion

Change log output

You can change the output path in the database if you don't want a log file output in Notepad++ and would prefer another app to be used:

Example for Oracle
SQL
INSERT INTO PropertyMapper (Pk, Id, PropertyValue, PropertyType, Property, Principal, Active, CreateDate, CreateUser, UpdateDate, UpdateUser)
VALUES
('SYSTEM.ProcessPreferences.logViewer','SYSTEM_NODE:/de/cursor/jevi/common/process/ProcessPreferences$!!$logViewer',
'c:/pfad/logprogramm.exe', 'SYSTEM', '', '', 1, SYSDATE, 'TECH_USER', SYSDATE, 'TECH_USER')
ab 17.1
INSERT INTO PropertyMapper (Pk, Id, PropertyValue, PropertyType, Property, Principal, CustLayer, Active, CreateDate, CreateUser, UpdateDate, UpdateUser)
VALUES
('SYSTEM.ProcessPreferences.logViewer','/de/cursor/jevi/common/process/ProcessPreferences$!!$logViewer',
'c:/pfad/logprogramm.exe', 'SYSTEM', '', '', 'CN' 1, SYSDATE, 'TECH_USER', SYSDATE, 'TECH_USER')

Logging the process execution

The process execution can be additionally logged in a separate log file on the application server. Logging can be activated via the command line in the application server.

CODE
> jboss\bin\jboss-logging.bat processExecution true

The log file will now display the various execution points of the process.

CODE
//Starten des Prozesses
start process    <processid> <user>   
start actionbox  <processid> <user>
start maskscript <processid> <user>
start manual     <processid> <user>
start process    <processid> <user> <instanceid> successfull
 
//Weiterführen einer Benutzeraktion
complete task    <processid> <user> <instanceid>
complete task    <processid> <user> <instanceid> successfull
 
//Weiterführen eines Nachrichtenereignisses (Webservice, Mail)
resume process   <executionId> <user>
resume process   <executionId> <user> successful
 
//Weiterführen über Zeitaktion
process timer    <processDeploymentId> <instanceid>
 
//Ende des Prozesses
end process      <processDeploymentId> <instanceid>

Logging of multiple script actions

In order to better track performance problems caused by running processes in the application, a special logging has been introduced for the execution of script actions. If an action exceeds the execution frequency of 90 runs in 15 minutes, this is protocolled in the server log and sent as a service mail to the recipient of system mails. The threshold of 90 runs can be globally adjusted to the customer's requirements.

If some special processes require a different threshold value in order to avoid too frequent service mails or to be able to react faster, the threshold value for each process can be adjusted in the application parameters.

If the threshold value was exceeded, this is noted in the ProcessExecution.log. The notification occurs per process action a maximum of once an hour.

ProcessExecution.log
CODE
2019-03-27 06:13:44,114 ERROR [ProcessExecution] Too many script executions in 15min for [Process: C0PerformanceTest(19|C0) 'Performance-Test'] [Instance: 16cd1cc4-504f-11e9-901f-4cedfb672e62] [Task: cid_96d6sp1brvvdpsiScriptTaskProperty 'Schleifendurchläufe'][User: ADMIN as ADMIN] - 61 > 60

If the service mail address and service mail configuration have been stored in the system, in parallel to the log entry the recipient of system mails is informed by mail about the too frequent execution of the process action.


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.