Back to Documentation

Code Examples

Real-world integration examples for common use cases

ETL Pipeline
Daily ETL with Error Tracking
Extract data from multiple sources, transform, and load into warehouse
from seerpy import Seer
import pandas as pd
from sqlalchemy import create_engine

seer = Seer(apiKey='YOUR_API_KEY')

def extract_data():
    # Extract from multiple sources
    customers = pd.read_sql("SELECT * FROM customers", source_db)
    orders = pd.read_sql("SELECT * FROM orders", source_db)
    return customers, orders

def transform_data(customers, orders):
    # Join and aggregate
    merged = orders.merge(customers, on='customer_id')
    daily_summary = merged.groupby('date').agg({
        'order_id': 'count',
        'amount': 'sum'
    })
    return daily_summary

def load_data(data):
    # Load to warehouse
    data.to_sql('daily_summary', warehouse_db, if_exists='append')

# Monitor the entire ETL pipeline
with seer.monitor("daily-etl", capture_logs=True):
    customers, orders = extract_data()
    summary = transform_data(customers, orders)
    load_data(summary)
    print(f"✓ Processed {len(summary)} records")

Key Features: Automatic error tracking, log capture, execution time monitoring