Skip to main content

Activity Log: Monitor Workflow Executions in Torq

Track workflow executions in the Activity Log, along with single-step executions and events that didn’t trigger workflows.

Updated this week

The Activity Log allows you to track past workflow executions. It includes information on triggered workflows, single-step executions, and events received that did not trigger a workflow.

Overview

In the Activity Log, you can display the response JSON of each workflow run by clicking the drop-down arrow in the workflow's row. The response JSON depends on the activity type (all, workflow_runs, step_executions, etc.).

Activity Logs can also be collected and passed to third parties, such as Elasticsearch or AWS. See the template for creating a nested workflow to collect Activity Logs or Audit Logs.

Use the search bar in the Activity Log page for free-text searches inside the event JSONs.

Understand workflow statuses

The workflow status represents the status of the current or most recent workflow execution. They are displayed in the status column of the Activity Log page.

Status

Description

The workflow execution was completed successfully.

A step failed, causing the workflow to fail. Hover over the information icon to see the name of the step that failed. View the Run Log to get more information about the failed step.

The workflow is currently running.

The workflow was manually stopped.

There are a few reasons a workflow might be on hold:

  • The workflow is waiting due to a Wait operator executing.

  • The parent workflow is on hold while a nested workflow is executing.

  • The workflow is waiting for user input (e.g. a response from a question step or Torq Interact).

The maximum number of concurrent workflow runs (workflows in Running status) was reached.

A workflow that was queued for 24 hours will be dropped.

Scenario IDs

Scenario IDs identify the specific types of events that generate records in Activity Logs.

A number of these scenarios can also trigger workflows in Torq. When you create a workflow with a Torq Cases or System Events trigger, you select a scenario to trigger the workflow execution.

The following scenarios are recorded in Activity Logs:

System events

Scenario ID

Event

REQUEST_FOR_REVIEW

A publish review is requested for a workflow

RUNNER_HEALTH

A remote runner reports a health status change

SHARE_REQUEST_CREATED

A request to share a workflow is created

SOCRATES_RUNBOOK_EXECUTION_FINISHED

A Socrates runbook execution completes

SOCRATES_RUNBOOK_EXECUTION_STARTED

A Socrates runbook execution begins

STEP_FAILURE

A step within a workflow fails

VARIABLE_UPDATED

A variable value is updated

WORKFLOW_FAILURE

A workflow execution fails

WORKFLOW_PUBLISH

A workflow is published

WORKFLOW_UNPUBLISH

A workflow is unpublished

Cases events

Scenario

Event

ASSOCIATED_OBSERVABLE_CREATED

An associated observable is linked to a case

ASSOCIATED_OBSERVABLE_DELETED

An associated observable is unlinked from a case

ATTACHMENT_CREATED

An attachment is added to a case

CASE_ACCESS_POLICY_UPDATED

The access policy on a case changes

CASE_ACCESS_UPDATED

Access permissions on a case change

CASE_ASSIGNEE_UPDATED

The assignee on a case changes

CASE_CATEGORY_UPDATED

The category of a case changes

CASE_CREATED

A new case is created

CASE_DELETED

A case is deleted

CASE_EVENT_UPDATED

An event attached to a case is updated

CASE_REVIEW_CONCLUSION_UPDATED

The review conclusion on a case changes

CASE_REVIEWER_UPDATED

A reviewer is assigned or changed on a case

CASE_SEVERITY_UPDATED

The severity level of a case changes

CASE_STATE_UPDATED

The state/status of a case changes (e.g., Open to Closed)

CASE_TAGS_UPDATED

Tags on a case are added or removed

CASE_UPDATED

A case is updated (general catch-all)

CASES_BULK_ACTION

A bulk action is performed across multiple cases

COMMENT_CREATED

A comment is added to a case

CUSTOM_FIELD_UPDATED

A custom field value on a case changes

LINK_UPDATED

A link on a case is updated

NOTE_UPDATED

A case note is updated

OBSERVABLE_CREATED

An observable is added to a case

OBSERVABLE_DELETED

An observable is removed from a case

OBSERVABLE_UPDATED

An observable on a case is updated

USER_MENTIONED

A user is @mentioned in a case

Troubleshooting

Resend workflow events

Only events that triggered workflow executions that ended can be resent. This feature does not support step execution.

You can resend events that triggered workflow executions to recover from multiple simultaneous workflow execution failures. This includes workflows that ended with a status of Success, Failed, Stopped, or Dropped.

To resend events:

  1. Open the Activity Log: Navigate to Monitor > Activity Log.

  2. Select events: Select at least one event based on the workflow Status. Only events that triggered workflows that ended are eligible.

  3. (Optional) Review the events: Open the dropdown listing the selected events, and click Deselect to remove any irrelevant events.

  4. Resend events: Click the Resend events button and then Resend to confirm.

    1. A confirmation message will be displayed at the bottom indicating a successful, partially successful, or failed status.

Add missing webhook trigger events to workflows

When a webhook-triggered workflow is unpublished, events can be missing from the Activity Log of a nested, duplicate, or new workflow using the same trigger. This is likely because the webhook trigger uses an asynchronous or synchronous URL that is attached to the main workflow.

To add the missing events, make sure the main workflow is disabled but published so the events can still be seen. Then, copy the events and paste them in the additional workflow to use them in a Test Run input event.

Use a template to collect Torq Activity Logs

Torq’s Gather Torq Activity Logs template creates a nested workflow that gathers a workspace's Audit or Activity Logs and returns the logs to the parent workflow. After importing the template to your workspace and customizing it as necessary, call it within a parent workflow. The nested workflow will return a JSON array of the requested logs from within the desired timeframe.

Did this answer your question?