By default, events with a level below INFO are not stored and therefore cannot be included in the logs downloaded or viewed in the table below. However, for troubleshooting purposes, it is possible to temporarily increase the amount of logging by changing the minimum level. The new level set here will remain for one hour, and will thereafter revert to the default level, i.e. the INFO level.
To set a temporary log level:
Temporary log level
drop-downApply
.Click on Reset
to revert the log level to the default INFO level.
You can also monitor your JMWE errors and warnings related to post-functions and actions on your own applications by configuring a webhook.
To configure a webhook:
When an error is thrown, the webhook will post the error data in real time.
See the example below to understand how to interpret the raw content.
By default, the Last day logs with a level higher than INFO are displayed in the table. You can filter the logs based on when they were created - When and the Log level - Level. To filter them further, click on More filters
to add the below additional filters:
You can filter log events based on the;
Click on Apply filters
to filter the logs
Only the 200 most recent events that match your filters are displayed in the table. Each entry has the Timestamp, Level, Post-function, Message Type
and Message
. In most of the cases, the failure details are displayed in the Message
. And if that isn't sufficient enough to debug your problem you need to click on > of a log entry to see the following information:
add to filters
link.See the examples below to understand how to filter and analyze the logs.
Follow these steps to download your filtered logs :
Log viewer
.Format
drop-down.Download logs
.Logs displayed in the table are downloaded. The download is limited to 200 events at most that match your filters selected.
If any of the JMWE post-functions you have used in your workflow does not seem to be working as you would expect, you can investigate the failure from these logs. For example:
Create issue
in Post-functionApply filters
The table displays your filtered logs.
The first thing you need to do is look at Message
, the last column of the table for the error/warning message (if any).
Message: The post-function failed to create the Epic because the Epic Name was not provided which is mandatory while creating an Epic.
Issue key
filterApply filters
The table displays your filtered logs.
The first thing you need to do is look at Message
, the last column of the table for the error/warning message.
Message: The post-function failed to set Component/s field with a component name "Testing". Clicking on > of the log entry and looking at Jira REST API call will display information on what value has been passed to Jira.
Jira REST API call: The Data shows that two components; Backend
and Testing
were passed to Jira instead of one i.e. "Backend,Testing"
. The comma(',') was considered as a delimiter in the array of values rather than a part of the component name. So you need to pass the value as JSON object ([{"name":"Backend,Testing"}])
selecting the "Treat value as JSON"
option in the post-function configuration.
While iterating over linked issues to set a field value using Set field value of linked issues post-function, there is no way of knowing which issues were impacted. You might then want to set the Temporary log level
to DEBUG and trigger the transition that has the post-function.
DEBUG
in LevelSet field value of linked issues
in Post-functionApply filters
The table displays your filtered logs.
The table now has DEBUG entries indicating the setting of the field on the impacted linked issues.
When using a webhook, the raw content is sent as a JSON file.
You can use this raw content to construct your own logging messages.
For example, you can derive: A msgType occurred at time when during (post-function postFunction) on issueKey transition transition.transitionName (from status transition.from_status to status transition.to_status) of workflow transition.workflowName. The message is: error.message and the error code is error.code. Using the sample data above, this reads: A license-error occurred at 2022-04-14T14:42:01.408Z when post-function-triggered (post-function ClearFieldsFunction) on MYPROJ-125 transition Move to Backlog (from status Selected for Development to status Backlog) of workflow My Workflow. The message is: You do not have a valid, active license, but post-functions will run because licensing is disabled.and the error code is 402. |