Tasks & Groups
⚡ Tasks UI¶
The Tasks & Groups page (/tasks) provides a unified interface for managing task definitions, group definitions, scheduling, dependencies, and alerts.
📊 Dashboard¶
The Dashboard provides a real-time overview of your system's health and activity.
📈 Status Definitions¶
The following table explains the various task statuses you will encounter on the dashboard:
| Icon | Status | Meaning | When differs from others |
|---|---|---|---|
| ✅ | Idle | Task is active but not currently executing. | Waiting for its scheduled trigger time. |
| 🚀 | Active | Task/Group is enabled in the system. | Ready to be triggered by the scheduler. |
| 🔄 | Triggered | Scheduler has initiated the execution. | Signal sent to agent, waiting for confirmation. |
| 🎬 | Started | Task received by agent, preparing to run. | Agent acknowledged receipt, execution imminent. |
| ▶️ | Running | Agent is actively processing the workload. | Code/Command is currently executing on the host. |
| ✅ | Success | Execution completed successfully. | Process exited with code 0. |
| ❌ | Failed | Execution failed to complete correctly. | Process exited with non-zero code or exception. |
| ⛔ | Terminated | Execution was manually stopped. | Operator intervened to halt the process. |
🗂 Page Layout¶
The page uses a split-view layout with two panels:
- Left Panel (40%): Searchable, filterable data table with pagination. Toggle between Tasks and Groups tabs. Filter by active/inactive status.
- Right Panel (60%): Displays either a visual dependency graph (Flow Graph) or a create/edit form depending on the selected action.
🗂 Task Definitions¶
The Task Definitions tab is the command center for managing individual automated jobs. Each task represents a single unit of work (e.g., a script, binary, or command) to be executed on a specific host.
✅ Key Attributes & Capabilities:
- TID (Task ID): Unique integer identifier for the task.
- Management:
- Create/Edit: Define the
Command,Target Host,Run As User, andDescription.
- Create/Edit: Define the
- Scheduling:
- Define precise Trigger Times or Run Frequency (recurring intervals with time window).
- Set execution Timezones to ensure correct local timing.
- Assign a Holiday Calendar to skip execution on non-working days.
- Schedule Inheritance: Tasks in a group automatically inherit the group's schedule.
- Resilience: Configure
Retry AttemptsandMax Run Time(timeout) to handle failures gracefully. - Dependencies: Visual dependency builder for constructing task dependency chains within a group.
- Alerts: Configure alert rules per task — select integrations and credential keys for failure/success notifications.
- Import/Export: Export all task and group definitions as a JSON file for backup or migration. Import definitions from a previously exported JSON file using the Import/Export button in the page header.
📦 Group Definitions¶
Task Groups serve as logical containers that organize related tasks into a single manageable unit.
✅ Key Attributes & Capabilities:
- GID (Group ID): Unique integer identifier for the group.
- Unified Management:
- Global Activation: Toggle the
Activestatus of the group to strictly enable or disable ALL tasks within it. - Shared Context: All tasks in a group inherit the group's
Instanceand effectively share its lifecycle.
- Global Activation: Toggle the
- Orchestration:
- Group Scheduling: Define a
Trigger Timeat the group level to orchestrate when the entire batch of tasks should be considered for execution. - Dependencies: Useful for organizing workflows (e.g., "Daily ETL Pipeline") where tasks are related by function or project.
- Visual Flow Graph: View the group's task structure and dependency relationships in an interactive graph.
- Group Scheduling: Define a
🔗 Relationship: Tasks & Groups¶
Understanding the relationship between Tasks and Groups is key to effective system organization:
- Cardinality: A Task can belong to exactly one Task Group (or none). A Task Group can contain multiple Tasks.
- Inheritance:
- When a Task is assigned to a Group, it is strictly bound to that Group's logical "Instance".
- Tasks in a group inherit the group's schedule, timezone, and calendar settings.
- Disabling a Task Group (setting
Activeto False) effectively puts a "freeze" on all tasks within that group, preventing them from running regardless of their individual schedules.
- Workflow:
- Use Groups to model high-level processes (e.g., "Finance End-of-Month").
- Use Tasks to define the specific steps within that process (e.g., "Generate Report", "Email Summary").
Frequently Asked Questions¶
Q: What is the difference between a Task and a Task Group? A: A Task represents a single unit of work (script, command, or binary) to be executed on a specific host. A Task Group is a logical container that organizes related tasks. A task belongs to exactly one group, and disabling a group freezes all tasks within it.
Q: What task statuses can I see on the Dashboard? A: The dashboard shows Idle, Active, Triggered, Started, Running, Success, Failed, and Terminated statuses. Each has a distinct icon and meaning — for example, "Triggered" means the scheduler has initiated execution but is waiting for agent confirmation.
Q: Can I run a task immediately without waiting for its schedule?
A: Yes. Use the Adhoc Tasks page (/adhoc) to execute one-off commands on selected agents, or use the Scheduler events to force-run a specific task. These features require Operator, Admin, or Superadmin role permissions.
Q: How do I import or export tasks?
A: On the Tasks & Groups page (/tasks), use the Import/Export button in the header to export all task and group definitions as a JSON file, or import definitions from a previously exported JSON file.