System Triggers Logs & Troubleshooting Guide
System Triggers Logs & Troubleshooting Guide
System Triggers Logs & Troubleshooting Guide
This guide explains the log types available for webhook triggers and scheduled triggers (system triggers) and how to use them to debug issues across each plugin’s lifecycle — from the moment an event is received or a schedule fires to the execution of your actions.
If you don’t see the log types below, make sure you have Agent Studio Elevated Log Viewer and Agent Studio Log Viewer permissions enabled. See details on how to assign roles using RBAC.
When a webhook event is sent from an external app (e.g., Salesforce, ServiceNow, Workday), it passes through these main stages before your plugin runs:
listener.webhook.trigger – Raw HTTP request received by Moveworkslistener.webhook.processor.update – Event validated, transformed, and published (or rejected/debounced)listener.webhook.plugin.trigger – Plugins evaluated and triggered based on the eventcompound_action.trigger → compound_action.step.execute → action.* – Execution of the plugin’s actions.
If you are not seeing the new log types e.g. listener.webhook.trigger show up in your logs you likely do not have the Agent Studio Elevated Logs Viewer and/or Agent Studio Log Viewer permission(s) enabled. For more details view our Roles and Permissions docs.
Note:
listener.webhook.triggerPurpose
Indicates that Moveworks has received a raw webhook request at your configured listener URL.
Log Body Example
Attribute Descriptions
listener_metadata – Metadata about the listener that received the request, including:
listener_id – Unique ID of the listener.listener_name – Name of the listener as configured in Moveworks.request_id – Unique ID for this specific incoming request.received_at – Timestamp when Moveworks received the event.http_method – HTTP method used by the webhook request (e.g., POST).headers – Key-value pairs sent in the webhook request headers by the provider (e.g., X-Github-Event, Content-Type).query_params – Any query parameters included in the listener URL when the event was sent.raw_body – The exact payload as received from the webhook provider, before parsing.parsed_body – The parsed JSON object representing the webhook event payload.error_message – Any error message if Moveworks could not read or validate the request. Empty string if successful.What issues does this help debug?
If this log is missing, possible causes
1 req / 10 sec; secure listeners have higher limits).listener.webhook.processor.updatePurpose
Indicates how Moveworks processed the raw webhook event after it was received, including whether it was published, rejected, or debounced.
Log Body Example
Attribute Descriptions
event_metadata – Metadata about the processed event:
listener_metadata – The listener that received the original request.event_uuid – Unique ID assigned to this event.created_at – Time the event was first recorded by Moveworks.event_payload – The event data after initial processing:
raw_body – Exact webhook payload as received.parsed_body – JSON-parsed version of the webhook payload.headers – Request headers from the webhook provider.error_message – Any processing error message (empty if processing succeeded).process_update – Indicates the processing outcome:
published_update – Event was published for further evaluation.failure_update – Event failed processing (includes failure_reason).debounced_update – Event dropped because a newer duplicate event was processed first.What issues does this help debug?
If this log is missing, possible causes
listener.webhook.trigger missing).listener.webhook.plugin.triggerPurpose
Indicates which plugins were evaluated for a processed webhook event, and whether they were successfully triggered, skipped, failed, or expired.
Log Body Example
Attribute Descriptions
event_metadata – Metadata about the event:
listener_metadata – Details of the listener that received the original webhook request.event_uuid – Unique ID assigned to the processed event.created_at – Timestamp when the event was first recorded.successfully_triggered – List of plugin UUIDs that were triggered successfully.failed_to_trigger – List of plugin UUIDs that matched conditions but failed to run.skipped – List of plugin UUIDs skipped due to skip conditions.expired – List of plugin UUIDs skipped because the event’s time-to-live (TTL) expired.error_message – Any error message encountered during plugin evaluation (empty if successful).What issues does this help debug?
If this log is missing, possible causes
listener.webhook.processor.update missing or failed).listener.webhook.trigger
listener.webhook.processor.update
failure_reason.listener.webhook.plugin.trigger
successfully_triggered?listener.webhook.plugin.trigger, find root_uuid or event_metadata.compound_action.trigger and compound_action.step.execute.action.http 401 → fix credentials).listener.webhook.trigger timestamps with any debounced_update entries.log_context in all logs to filter for a single event across stages.plugin.trigger the UUID may switch). This is a known issue and a fix is in progress.If you don’t see the log types below, make sure you have Agent Studio Elevated Log Viewer and Agent Studio Log Viewer permissions enabled. See details on how to assign roles using RBAC.
A typical scheduled run produces the following logs in order:
scheduled.plugin.trigger ← new for schedulescompound_action.triggeraction.* (e.g., action.builtin.trigger, action.http.trigger, etc.)compound_action.step.execute (one or more as steps progress)scheduled.plugin.triggerPurpose Emitted by the scheduler when a schedule fires and your plugin is enqueued to run.
Log Body Example
Attribute descriptions
created_at – UTC timestamp when the schedule fired.event_uuid – Unique ID for this scheduled firing.schedule_id – The schedule configuration that produced this run.error_message – Non-empty if the scheduler encountered an error before handoff.What this helps debug
event_uuid) to correlate with adjacent logs by time and plugin name.If this log is missing, possible causes
Start at time is in the future or outside the recurrence window.compound_action.triggerIndicates the compound action (your workflow) started.
Example (trimmed)
Tips
root_uuid to follow the rest of the run end-to-end.status and step_statuses show initial orchestration state.action.builtin.trigger (and other action.*)Emitted for each action call (built-in, HTTP, script, etc.).
Example – get_user_by_email
Example – send_plaintext_chat_notification
Tips
input_args confirm what was actually sent to the action.response surfaces downstream IDs (e.g., notification_tracker_uuid) for follow-up.compound_action.step.executeStatus updates as steps complete.
Example – step 1 completes
Example – workflow completes
Tips
step_statuses and final to_status.error_message or payload_data.error section will contain details.Look for scheduled.plugin.trigger at the expected time.
Start immediately/Start at behavior and that the first run time has passed.If you expect catch-up of missed runs, verify your org’s backfill/concurrency policy and whether a prior run was still in progress.
scheduled.plugin.trigger, then look within ±5 seconds for compound_action.trigger for the same plugin.compound_action.trigger is missing, check platform health or org limits; also verify the plugin wasn’t unpublished or disabled between scheduling and execution.compound_action.step.execute entries for error_message / payload_data.error.action.* log for request/response details (e.g., 401/403/404 equivalents, validation messages).Coming soon