paulie start Even with a straightforward paulie install , things can go wrong. Here are the most frequent pitfalls and their solutions.
scheduler: timezone: "America/New_York" heartbeat_interval: 30 # seconds execution: max_workers: 10 default_timeout: 3600 # 1 hour storage: type: "sqlite" # options: memory, sqlite, postgres path: "/var/lib/paulie/jobs.db" api: host: "0.0.0.0" port: 8080 auth: enabled: true api_keys: - "your-secure-key-here" logging: level: "INFO" file: "/var/log/paulie/paulie.log" Enable the configuration:
@job.schedule("0 2 * * *") # Runs daily at 2 AM def database_backup(): # Your backup logic here logging.info("Starting automated database backup...") # ... implementation paulie install
from paulie import job, scheduler import logging @job.schedule("*/5 * * * *") # Runs every 5 minutes def health_check(): logging.info("Health check executed successfully.") return "status": "ok", "timestamp": scheduler.now()
Load the jobs:
docker build -t paulie-server . docker run -d -p 8080:8080 --name paulie-prod paulie-server A bare paulie install works out of the box with default settings. However, for real workloads, you need a configuration file. Create ~/.paulie/config.yaml :
pip install paulie-prometheus-exporter Then enable in config.yaml : paulie start Even with a straightforward paulie install
plugins: - paulie_prometheus_exporter If you need to completely remove Paulie: