Skip to main content

backend reporting via a worker/queue system

Project description

event-reporter

A Python wrapper for backend reporting via a worker/queue system.

travis

Codecov

System flow:

Store event quickly on webserver [e.g. within a flask endpoint]:

from event_reporter import EventReporter
from redis import StrictRedis

er = EventReporter(conn=StrictRedis())

er.store('ga', 'event', '<uuid4 clientid>', category='event_category', action='action_name', aip='1', uip='1.2.3.4', ds='web')

Fetch event within worker and dispatch to final destination:

from event_reporter import EventReporter
from redis import StrictRedis

er = EventReporter(conn=StrictRedis())

r = er.fetch()

er.dispatch(r)

Env vars used

  • EVENTREPORTER_QUEUE_NAME (redis key)
  • UA_ID (GA UA ID)
  • EVENTREPORTER_TTL (int: controls whether to set expire time for redis keys)
  • HONEYCOMB_WRITEKEY (optional)

Testing

export UA_ID='My_UA_ID'

nosetests -s

Dispatch Types

  • ga: GA
  • honey: honeycomb.io
  • slack: slack

Example slack event: Simple message

er.store('slack', 'event', '<uuid4>', webhook='<slack_webhook_uri>', message='text')

Example slack event: Blocks message

er.store('slack', 'event', '<uuid4>', webhook='<slack_webhook_uri>', blocks=<list_of_dicts>)

Example slack blocks format

[
	{
		"type": "section",
		"text": {
			"type": "mrkdwn",
			"text": "Hello
			}
	}
]

.. and check your GA property, honeycomb dash, or slack channel to see the data.

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

event-reporter-1.1.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

event_reporter-1.1.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file event-reporter-1.1.0.tar.gz.

File metadata

  • Download URL: event-reporter-1.1.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.5

File hashes

Hashes for event-reporter-1.1.0.tar.gz
Algorithm Hash digest
SHA256 c4e6cced8efefe0a020d6699d3bc1cc1fc20958d5ca9d4882b040e3a949aa31e
MD5 6e7b61f56dc7f2118144c7ccb51f2ac4
BLAKE2b-256 5e8f6c355e77faabe3aa5f3e33972665b9953e16548000965f34849eb7ad174c

See more details on using hashes here.

File details

Details for the file event_reporter-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: event_reporter-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.5

File hashes

Hashes for event_reporter-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5cb660c4b1aaef4a5148c75be0f871f929fcf16ba63d1cec7f21500e54177eaa
MD5 4e3df236c27d2eb21ed5c14f01757cbd
BLAKE2b-256 aa680ee445a75c226ce7166328b6528e09e533c73e247039790a6365d3bbd7a9

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