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

Request ID

Sets request ID in request. Useful for correlating many requests in a distributed system via centralized logging search system (e.g. Splunk, ELK, Graylog).

API

# all params have default values
request_id(
    key="x-request-id", 
    idgen=uuid4
)
  • key will appear as an HTTP request header
  • You can swap an ID generation function with idgen

Usage

from formation.middleware import request_id

@client
class Google(object):
    base_uri = "https://google.com"
    middleware=[
        request_id()
    ]
    ...
← PreviousRetry →
  • API
  • Usage
Formation
Docs
Getting StartedExamplesMiddleware
Community
Stack OverflowTwitter
More
GitHubStar
Copyright © 2019 Dotan Nahum