Skip to main content

No project description provided

Project description

Optic Django Middleware

Build status

This module is a plugin for Django 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-unittest

Usage

The plugin is used along with Optic Django Middleware to customise optic logging behaviour based on unittest test result hooks to add features like

1. Send successful test http inteaction only
2. Send interactions in bulk

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

Example

# settings.py
import os
from tempfile import mkdtemp
tempdir = mkdtemp('optic_django')
OPTIC = {
    # ...optic-django-middleware settings
    'INTERACTION_MANAGER': "optic_django_unittest.manager.HttpInteractionManager"
}

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-unittest-plugin-0.1.2.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file optic-django-unittest-plugin-0.1.2.tar.gz.

File metadata

File hashes

Hashes for optic-django-unittest-plugin-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a1fce593002fa4939afb55274ef5f0bcedd8000ecba4ef9843addf58f9acbb0f
MD5 3a7d9524b775c5f0a244693e2df9c0cf
BLAKE2b-256 3bc55a70ee98f5e1aeca53ebfde3e6a8fa506e4edcc552b036b2571285048945

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for optic_django_unittest_plugin-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 662bb49d58be7aa94b526ae0656097c51e37807613e06e7dd8c4d177c0ab8814
MD5 483cbc93b9190ecfcbff903aadc5f44c
BLAKE2b-256 4e93b652621ba8d8c893c5445d5f6d7ba327505d041a4e57074b08bc63806075

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