Skip to main content

CSF Ranch

Project description

Ranch

Standardized tooling, monitoring, and retry logic for use with Celery. fork of https://github.com/managedbyq/mbq.ranch

Installation

Ranch is a Django application. To use Ranch with Celery, add the following to your settings file:

INSTALLED_APPS = [
    ...
    'csf.ranch'
]

RANCH = {
    'env': ENV_NAME,  # e.g. production, development
    'service': MY_SERVICE_NAME,  # e.g. backend
}

Features

Metrics

Any application with Ranch installed will have Celery metrics available in the Celery/Ranch Datadog Dashboard.

Monitors

You may set up monitors for your application using the metrics provided by Ranch.

Dead Letter Queue

Celery jobs that fail will be stored in the application's database for inspection and reprocessing. Ranch provides an Admin interface for this.

See backends's Ranch Admin for an example.

Correlation IDs

Ranch can flow correlation IDs through your Celery jobs. Ranch will not change any of your logging configuration, so you'll still need to do that as part of your correlation ID implementation.

To use the correlation ID functionality, add the following settings:

RANCH = {
    ...,
    'correlation': {
        'getter': getter_fn,  # callable with no args that returns the current correlation ID
        'setter': setter_fn,  # callable with one arg which should be set as the current correlation ID
    },
}

Supplemental Error Tagging

Ranch provides a hook to add additional tagging information to error item metrics.

To use this feature, add the following settings:

RANCH = {
    ...,
    # tags_fn takes a single arg (the Ranch Task object that failed)
    # and should return a list of strings in the format "tag_name:tag_value"
    'extra_error_queue_tags_fn': tags_fn,
}

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

csf_ranch-1.2.2.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

csf_ranch-1.2.2-py2.py3-none-any.whl (13.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file csf_ranch-1.2.2.tar.gz.

File metadata

  • Download URL: csf_ranch-1.2.2.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for csf_ranch-1.2.2.tar.gz
Algorithm Hash digest
SHA256 bb71b33eb05d11ef8ed6a85b350decb49cd492411758baf5c2a02692205bb8e2
MD5 2656dcf962ae52516800652639268da9
BLAKE2b-256 4028ff9ea6bdc419a85ec42e6e6fd3e9f81e02f3d56f271d6899833a73daa0e5

See more details on using hashes here.

File details

Details for the file csf_ranch-1.2.2-py2.py3-none-any.whl.

File metadata

  • Download URL: csf_ranch-1.2.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for csf_ranch-1.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 cf8f7de7fbf7239836b2619351090b08476bb5ff092564c46fdd54d4d3427bae
MD5 dfd762014f94c5971337ccc517fd979c
BLAKE2b-256 20978ab3a162a2e0d4a397e5dc5611e76fe42d8ea059ae3d25d00a668d343fc6

See more details on using hashes here.

Supported by

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