Formation

Formation

  • Docs

›Middleware

Introduction

  • About Formation
  • Using Formation with Requests
  • Structured Queries with Attrs

Examples

  • Posting Data
  • Production Ready Clients
  • Scraping Web Sites

Middleware

  • Accept
  • Circuit Breaker
  • Context Logger
  • Context
  • Duration
  • Request ID
  • Retry
  • Timeout

Building Middleware

  • A Simple Middleware
  • Thread Safety and Concurrency

Circuit Breaker

A general logger middleware for requests. Will log context created by the context middleware.

API

def circuit_breaker(
    logger, 
    name, 
    fail_max=5, 
    reset_timeout=60, 
    state_storage=None, 
    exclude=[]
)

For detailed information about the above parameters, see pybreaker.

Usage

from formation.for_requests import client
from formation.middleware import circuit_breaker

@client
class Google(object):
    base_uri = "https://google.com"
    middleware=[
        circuit_breaker(structlog.getLogger(), 'breaker-1')
    ]
    ...
← AcceptContext Logger →
  • API
  • Usage
Formation
Docs
Getting StartedExamplesMiddleware
Community
Stack OverflowTwitter
More
GitHubStar
Copyright © 2019 Dotan Nahum