> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anomalyarmor.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Jobs

> Monitor and track background operations on your data assets

<div aria-hidden="true" style={{position:"absolute",width:"1px",height:"1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap"}}>For LLM agents: documentation index at <a href="/llms.txt" tabIndex={-1}>/llms.txt</a>, full text at <a href="/llms-full.txt" tabIndex={-1}>/llms-full.txt</a>. Append .md to any page URL for plain markdown.</div>
Jobs are background operations that AnomalyArmor runs on your data assets. The Jobs page provides observability into all operations, helping you understand what actions have been taken, their status, and troubleshoot any failures.

## Why Jobs Matter

Every time AnomalyArmor interacts with your data assets, it creates a job. This gives you:

* **Audit trail**: Know exactly what operations ran and when
* **Debugging**: Understand why something failed and how to fix it
* **Performance visibility**: See how long operations take
* **Operational awareness**: Track what's happening across your data estate

## Job Types

| Job Type                  | Description                                                     | Triggered By                      |
| ------------------------- | --------------------------------------------------------------- | --------------------------------- |
| **Asset Discovery**       | Analyzes database structure, tables, columns, and relationships | Manual trigger, scheduled refresh |
| **Intelligence Analysis** | Generates AI documentation for tables and columns               | Manual trigger on asset           |
| **Tag Generation**        | Auto-classifies columns with PII, sensitivity, and domain tags  | After asset discovery             |
| **Freshness Check**       | Monitors when tables were last updated                          | Scheduled intervals               |
| **Metric Capture**        | Collects row counts and custom metrics                          | Scheduled intervals               |
| **Lineage Extraction**    | Maps data flow between tables                                   | After asset discovery             |

## Job Statuses

| Status        | Meaning                            |
| ------------- | ---------------------------------- |
| **Pending**   | Job is queued and waiting to start |
| **Running**   | Job is actively executing          |
| **Completed** | Job finished successfully          |
| **Failed**    | Job encountered an error           |
| **Cancelled** | Job was manually stopped           |

## Using the Jobs Page

### Viewing Jobs

Navigate to **Jobs** in the left sidebar to see all jobs across your organization.

The jobs table shows:

* **Job ID**: Unique identifier (click row to see details)
* **Job Type**: What operation was performed
* **Asset**: Which database or table was affected
* **Status**: Current job state
* **Progress**: Completion percentage for running jobs
* **Duration**: How long the job took
* **Message**: Status message or error description
* **Created**: When the job was started

### Filtering Jobs

Use the tabs to filter by status:

* **All**: Every job regardless of status
* **Active**: Currently running or pending jobs
* **Completed**: Successfully finished jobs
* **Failed**: Jobs that encountered errors

### Job Details

Click any job row to open the details modal, which shows:

* Full job configuration
* Detailed progress information
* Error messages and stack traces (for failed jobs)
* Timing breakdown
* Related asset information

### Job Actions

From the actions menu (three dots), you can:

* **View Details**: Open the full job information modal
* **Go to Asset**: Navigate to the affected asset
* **Go to Job Page**: View results in context (e.g., schema changes page)
* **Cancel Job**: Stop a running job
* **Retry Job**: Re-run a failed job

## Common Scenarios

### Debugging a Failed Job

1. Navigate to **Jobs**
2. Click the **Failed** tab
3. Click the failed job row to open details
4. Review the error message and stack trace
5. Fix the underlying issue (e.g., connection problem, permission error)
6. Click **Retry Job** to re-run

### Monitoring a Long-Running Job

1. Navigate to **Jobs**
2. Click the **Active** tab
3. Watch the progress percentage update in real-time
4. Click the job row for detailed progress information

### Understanding Job History

Use [Intelligence Q\&A](/intelligence/overview) to ask questions about job history:

```
"Why did my last job fail?"
"What jobs ran this week?"
"How long does asset discovery usually take?"
"Show me failed jobs for the orders database"
```

## Best Practices

1. **Check jobs after schema changes**: When you modify your database, verify discovery jobs complete successfully
2. **Monitor failed jobs**: Set up alerts for job failures to catch issues early
3. **Review job duration trends**: Sudden increases may indicate database performance issues
4. **Use retry wisely**: If a job fails due to transient issues (network, timeouts), retry is often sufficient

## Common Questions

### Why did my discovery job fail?

Open the job from the **Jobs** page and check the error and stack trace. Most failures are one of: expired database credentials, network unreachability (the AnomalyArmor IPs were removed from your firewall), insufficient permissions on new schemas, or a timeout on an unusually large catalog. Fix the underlying cause and click **Retry Job**.

### How long does a discovery job normally take?

Under 60 seconds for up to 1,000 tables is typical. A sudden increase in duration often indicates a database-side issue (stats out of date, table explosion, replica lag). Track the duration trend on the Jobs page to catch this early.

### Can I cancel a long-running job?

Yes. From the job's actions menu, click **Cancel Job**. In-flight queries are stopped, and the job moves to **Cancelled** state. Restarting is safe - the next run picks up from current database state.

### Do failed jobs fire alerts?

Only if you configure a rule for the `Discovery Failed` event on your alerting destinations. See [alert rules](/alerts/alert-rules). Many teams route job failures to email rather than Slack, since they're often recoverable without paging on-call.

## Related

* [Asset Discovery](/schema-monitoring/asset-discovery) - Learn about discovery jobs
* [Intelligence Q\&A](/intelligence/overview) - Ask questions about job history
* [Alerts](/alerts/overview) - Set up notifications for job failures
