Skip to main content

Django Middleware for optic

Project description

Optic Django Middleware

Build status

This module is an Django middleware using optic-sdk to capture and format HTTP data to send to Optic. We have a list of middleware available for some frameworks, if we are missing the framework join our community and suggest the next framework or develop it with us.

Requirements

The module requires @useoptic/cli to be installed, instructions on installing it are available https://www.useoptic.com/docs/.

Install

pip install optic-django-middlewaree

Usage

The middleware takes a configuration object and captures traffic in the background as long as @useoptic/cli is installed.

Configuration

Environment variables can also be used to set the values

  • ENABLE: boolean (defaults to FALSE) Programmatically control if capturing data and sending it to Optic
  • UPLOAD_URL: string (defaults to os.environ['OPTIC_LOGGING_URL']) The URL to Optics capture URL, if left blank it will expect OPTIC_LOGGING_URL environment variable set by the Optic CLI
  • CONSOLE: boolean (defaults to FALSE) Send to stdout/console for debugging
  • framework: string (defaults to '') Additional information to inform Optic of where it is capturing information
  • LOG: boolean (defaults to FALSE) Send to log file
  • LOG_PATH: boolean (defaults to ./optic.log) Log file path
  • LOCAL: boolean (defaults to TRUE) Send to optic cli
  • INTERACTION_MANAGER: string (defaults to optic_django_middleware.manager.BasicOpticManager) Manager module to control the behaviour of capturing and sending interaction

Example

# settings.py
import os
from tempfile import mkdtemp
tempdir = mkdtemp('optic_django')
OPTIC = {
    'ENABLE': True,
    'LOG_PATH': os.path.join(tempdir, 'optic.log'),
    'LOG': True,
    'CONSOLE': False,
    'LOCAL': False
}

INSTALLED_APPS += [
    'optic_django_middleware',
]

To start capturing data from the SDK, run your application with

api exec "python manage.py runserver"

License

This software is licensed under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optic-django-middleware-0.1.2.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

optic_django_middleware-0.1.2-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file optic-django-middleware-0.1.2.tar.gz.

File metadata

  • Download URL: optic-django-middleware-0.1.2.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.7 CPython/3.7.11 Linux/5.8.0-1039-azure

File hashes

Hashes for optic-django-middleware-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c9512955846720888a1cea8f58b54e2bd6187753e5d63b5da1118763d786d978
MD5 4f0d0e74da17d5c270ed6cf138b4e288
BLAKE2b-256 5fe8e6b5b37816c0fdfcfcc82cb757f3ce10d28db7c3a539cfafd2550487df38

See more details on using hashes here.

File details

Details for the file optic_django_middleware-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for optic_django_middleware-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0d1b3b6b2703f51aa99b432cd76b8736ed8ea8803a43e4a0442671741a023f0e
MD5 4e4dad356ebd764c741418b47b077a12
BLAKE2b-256 0561ac2866d11384edbd48d84e9ebd8861f635f190922267e592b21949caa929

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page