Skip to content

LakeSentry Collector Troubleshooting

This page covers diagnosing and resolving issues with the LakeSentry collector. For initial setup, see Collector Deployment.

Start here when something looks wrong:

SymptomLikely causeJump to
Region connector stuck on “Pending”Collector never ran or failed on first runFirst run failures
Ingestion is older than expectedJob schedule, source delay, or missed runMissed runs
Connector reports an errorInspect the validation or run errorConnection errors
Job run fails in DatabricksCollector error during extractionExtraction errors
Data appears stale or incompleteCheckpoint issues or missing table permissionsCheckpoint issues
Some tables missing from “Tables received”Permission not granted for those tablesMissing tables

If the region connector never moves past Pending status:

  1. Check the Databricks job — Go to Workflows > Jobs and verify the collector job exists and has run at least once.
  2. Check the job run status — Click the most recent run. If it failed, read the error output.
  3. Verify the connection string — The connection string is consumed during configure. If configuration failed, generate a new connection string and re-run the configure step.

Common first-run errors:

ErrorCauseFix
Connection string is not valid base64Malformed or truncated connection stringGenerate a new connection string from the region connector
Connection string is missing required fieldsIncomplete or expired connection stringGenerate a new connection string
LakeSentry API is not reachableNetwork connectivity issue or invalid API URLVerify the workspace has outbound HTTPS access to LakeSentry
Module not found: lakesentry_collectorWheel not installed or wrong pathCheck the wheel file path and re-install

The collector needs outbound HTTPS access to the tenant API URL in its configuration. Check DNS, firewall rules, and proxy settings from the job’s runtime. Allow the configured host and port rather than assuming a generic API hostname. If using a proxy, confirm the job receives the required proxy configuration.

A successful health request verifies reachability only; ingestion still requires the correct connector credentials.

If the collector was working and suddenly fails authentication:

  • Connection string was regenerated — Someone generated a new connection string, invalidating the old token. Reconfigure the collector with the new string.
  • Region connector was deleted and re-created — The connector ID changed. Reconfigure with the new connection string.

Extraction errors occur when the collector fails to read from Databricks system tables.

Error: [TABLE_OR_VIEW_NOT_FOUND] Table or view not found: system.compute.clusters

or

Error: User does not have permission to SELECT on table system.compute.clusters

The service principal is missing SELECT access to the specified table. Grant permissions as described in Account & Connector Setup.

Error: Unity Catalog is not enabled for this workspace

System tables require Unity Catalog. Enable it on your Databricks account, or use a workspace that already has it enabled.

Some system tables are only available in certain Databricks pricing tiers or regions. If a table doesn’t exist:

  • The collector logs a warning and skips the table.
  • The corresponding feature may have incomplete or no data.
  • Other tables are still extracted normally.

This is expected behavior — the collector continues with whatever tables are accessible.

If the collector misses scheduled runs:

  1. Check the Databricks job schedule — Verify the job is still enabled and the schedule hasn’t been modified.
  2. Check cluster availability — If the job cluster fails to start (e.g., cloud provider capacity issues), the run fails before the collector code executes.
  3. Check for long-running previous runs — If a run takes longer than the schedule interval, Databricks may skip or queue subsequent runs depending on the concurrency setting.

The collector uses checkpoint-based incremental extraction. Each table has a watermark that tracks the last successfully extracted position.

Table typeWatermark columnStrategy
system.billing.usageusage_start_timeIncremental — extract rows after the watermark
system.query.historystart_timeIncremental
system.compute.clusterschange_timeIncremental with historical configuration recovery
system.lakeflow.jobschange_timeIncremental
system.compute.node_types—Full snapshot (reference table)

Incremental tables use the watermark to avoid re-extracting data. Full-snapshot tables are extracted completely on each run (they’re small reference tables).

If a run fails partway through extraction:

  • Completed tables — The next run resumes from their saved checkpoints. It can read overlapping records again, and it re-reads cluster configuration history.
  • In-progress table — The checkpoint was not updated. The next run re-extracts from the last successful watermark.
  • Remaining tables — Not yet attempted. The next run extracts them normally.

This means the collector is crash-safe — you can safely stop a run at any point and the next run recovers automatically. There’s no need to manually reset checkpoints in normal operation.

A normal retry should resume from saved extraction state. Do not reset data or checkpoints as a first response to missing rows.

If historical rows need re-extraction, ask the deployment administrator or LakeSentry support to plan a bounded backfill. The collector CLI supports a run --since YYYY-MM-DD override; its use should account for source retention, extraction volume, and the affected tables. The Connector settings do not offer a checkpoint reset.

A backfill cannot restore source records that Databricks no longer retains. Keep the original error and run information before changing extraction state.

If the “Tables received” list on the region connector doesn’t include expected tables:

Missing table categoryCheck
Billing tablesThese are account-level. They may only appear for one region if you have multiple regions.
MLflow tablesAsk LakeSentry support whether MLflow data is available for your tenant.
Serving tablesRequires optional permissions.
Audit tablesRequires optional permissions.
All regional tablesVerify the service principal has workspace-level access in the target region.

Collector logs are available in the Databricks job run output. Key log entries to look for:

Log levelMessage patternMeaning
INFOStarting collectionNormal — extraction cycle beginning
INFOExtracted (with table, records, status fields)Normal — successful table extraction
INFOExtraction batch pushed successfullyNormal — data sent successfully
WARNTable not available in workspace, skippingPermission not granted or table does not exist
INFONo records foundNormal — no data in the extraction window
ERRORLakeSentry API is not reachableConnection string is invalid or API endpoint is down
ERRORAPI error response (with status_code)LakeSentry API rejected the push
ERRORExtraction failed / Table extraction failedQuery error on a specific table

Data shows in LakeSentry but appears incomplete

Section titled “Data shows in LakeSentry but appears incomplete”
  • Some workspaces missing — The workspace may be in a region without a region connector. Check the region mapping.
  • Recent data missing — The collector may have a stuck checkpoint. Check the extraction checkpoints on the region connector detail page.
  • Specific data type missing — Check if the corresponding system table is in the “Tables received” list.

Collector runs succeed but no data in LakeSentry

Section titled “Collector runs succeed but no data in LakeSentry”
  • Check the LakeSentry ingestion pipeline — Data flows through extraction → ingestion → transformation. If extraction succeeds but data doesn’t appear in dashboards, the issue may be downstream. Check Settings > Connector for ingestion errors.
  • Check for deduplication — If the same data was already ingested (e.g., from a previous run with the same extraction ID), it’s deduplicated silently. This is expected.

Databricks publishes different source tables independently. Collection frequency alone cannot guarantee a maximum data age. Use Data Freshness to separate source publication, scheduling, extraction, and processing delays.

If you’ve worked through this guide and the issue persists:

  1. Gather the Databricks job run logs from the failed run.
  2. Note the region connector status and last ingestion time from Settings > Connector.
  3. Contact LakeSentry support with these details.