signals-scout-data-warehouse

Detects data warehouse import failures, silent staleness, and query-cost hotspots in PostHog.

713|118|Updated Aug 11, 2020
One-click install
npx skills add https://github.com/PostHog/posthog-foss --skill signals-scout-data-warehouse
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: signals-scout-data-warehouse
Source: https://github.com/PostHog/posthog-foss/tree/main/products/signals/skills/signals-scout-data-warehouse
Command: npx skills add https://github.com/PostHog/posthog-foss --skill signals-scout-data-warehouse

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Warehouse imports fail silently: dashboards keep rendering while the external data behind them quietly goes stale, and every missed sync interval is a permanent data gap until someone backfills. This Skill continuously audits PostHog data warehouse imports so broken syncs, dead webhook channels, and stalled jobs are caught and reported before the gap grows.

Core Features & Use Cases

  • Import integrity monitoring: Sweeps armed external data schemas via SQL over system tables, then drills into failures, stuck Running jobs, source-level error cascades, and silent staleness where a Completed status hides a sync far behind its promised cadence.
  • Webhook and row-volume checks: Verifies webhook push channels behind green bulk-sync statuses and detects row-count cliffs caused by filter or incremental-cursor changes.
  • Optimization lane: When imports are healthy, mines the query_log table for recurring multi-user slow query shapes and hot warehouse tables to suggest materialization candidates, plus flags materialized views nobody reads.
  • Use Case: A Stripe Postgres CDC source loses its replication slot and all 12 armed schemas stop syncing while statuses still look fine; the scout quantifies the gap, files one source-level report with the blast radius, and dedupes against prior runs.

Quick Start

Ask the agent to audit the project's data warehouse imports for failures, stale syncs, and materialization opportunities, and file reports for anything it finds.

Frequently Asked Questions about signals-scout-data-warehouse

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect stale data warehouse syncs in PostHog?

Query system.source_schemas for armed schemas whose last_synced_at lags their sync_frequency, then confirm with REST per candidate. A Completed status with freshness beyond roughly three times the promised cadence indicates silent staleness worth reporting.

How do I find slow recurring queries on warehouse tables?

Group the query_log table by a hash of the query prefix, filtering to queries over 5 seconds with non-empty endpoints and QueryFinish status. Rank by total duration and read_bytes, then require at least three active days over a 7-day recheck before filing.

Can this scout detect broken webhook push channels?

Yes. For sync_type webhook schemas it calls the webhook-info endpoint per source; a missing registration, a remote error status, or a disabled external status means the push path is down even when bulk sync keeps the schema status green.

Why does a Completed sync status still mean stale data?

The active-failure view only flags explicit errors, so a silently disabled trigger or stuck scheduler leaves the status Completed while last_synced_at falls behind cadence. Comparing actual freshness against the promised sync_frequency exposes the gap.

When does the optimization lane run instead of integrity checks?

The optimization sweep runs only when no P1 or P2 import gap is live, whether filed this run, edited this run, or still open in the inbox. Import integrity always takes priority over materialization suggestions.