Skip to main content

A simple library for interacting with Amazon SQS.

Project description

https://travis-ci.org/jpetrucciani/qoo.svg?branch=master PyPI version Code style: black Python 3.5+ supported

qoo is a very simple Amazon SQS client, written in Python. It aims to be much more straight-forward to use than boto3, and specializes only in Amazon SQS, ignoring the rest of the AWS ecosystem.

Features

  • Easier interaction with SQS queues

  • Automatic support for AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_DEFAULT_REGION environment variables.

  • automatic useful message/job metadata

Usage

Installation

pip install qoo

Basic Usage

import qoo

# list SQS queue names
qoo.list_queues()

# get an existing queue
queue = qoo.get("$QUEUE_NAME")

# or create a queue
queue = qoo.create("$QUEUE_NAME")

# send a job, pass info/keys as kwargs
queue.send(info="foo", user_id="test_user")  # etc.

# get an approximate count of messages in the queue
len(queue)                # approximate total messages
queue.approx_not_visible  # approximate number of message in the visibility timeout

# get a job
job = queue.receive(wait_time=1)
job.elapsed      # time between sending the job and receiving it
job.md5_matches  # boolean property to show that the md5 of the job matches what was sent

# and the data from the job is automatically converted into attrs
job.info         # the string "foo"
job.user_id      # the string "test_user"

# delete the job from the SQS queue
job.delete()

Testing

Tests can be run with tox!

# run tests
tox

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

qoo-0.0.4.tar.gz (6.0 kB view details)

Uploaded Source

File details

Details for the file qoo-0.0.4.tar.gz.

File metadata

  • Download URL: qoo-0.0.4.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.7.1

File hashes

Hashes for qoo-0.0.4.tar.gz
Algorithm Hash digest
SHA256 699d304ab315c11bc6fce010d89232604d7b38e1c7a6c2235862e3b71c6b1853
MD5 413103943b792ac95f110656f79aa481
BLAKE2b-256 c3027a06a16ab6ce7e5f1c5d524049b6fa229a6bffc925ebae50bb5563a50cfe

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