API Reference
ApiWatcher
- class apiwatch.ApiWatcher(service_name='main-app', max_history: int = 1000, dashboard_host: str = 'localhost', dashboard_port: int = 22222, dashboard_username: str = 'admin', dashboard_password: str = 'admin', auto_start_dashboard: bool = True)[source]
Bases:
objectAsync API monitoring with zero-blocking fire-and-forget pattern. Auto-starts dashboard if not running (like RabbitMQ with pika)
Flask Middleware
- class apiwatch.middleware_flask.FlaskWatchMiddleware(app, watcher, capture_request_body=True, capture_response_body=True)[source]
Bases:
objectFlask middleware for ApiWatchdog - optimized for zero blocking
- apiwatch.middleware_flask.watch_route(watcher: ApiWatcher)[source]
Decorator for manual route watching (alternate middleware)
- Usage:
@app.route(‘/api/users/’) @watch_route(api_watcher) def get_users():
return jsonify(users)