Skip to main content

Command-line utility for interfacing with OpsDuty.

Project description

opsduty-python

Command-line utility for interfacing with OpsDuty.

The opsduty-python library is built with two core features in mind:

  • Command-line interface to interact with OpsDuty
  • Programatic way to report heartbeat checkins in Python

Help

See the documentation for more details.

CLI

The opsduty-python package contains a CLI that can be used to interact with OpsDuty.

The preferred way to install the CLI is to use pipx install opsduty-python.

$ opsduty
Usage: opsduty [OPTIONS] COMMAND [ARGS]...

Options:
  --log-format [json|logfmt|console]
                                  [default: console]
  --log-level [error|warning|info|debug]
                                  [default: info]
  --base-url TEXT                 Base URL for API requests to OpsDuty.
  --timeout INTEGER               API request timeout to OpsDuty.  [required]
  --access-token TEXT             Set the bearer token used to communicate
                                  with OpsDuty.  [env var:
                                  OPSDUTY_ACCESS_TOKEN]
  --version                       Show the version and exit.
  -h, --help                      Show this message and exit.

Commands:
  heartbeats  Commands for managing and monitoring heartbeats.
  schedules   Commands for accesing schedules.

  Command-line utility for interfacing with OpsDuty.

Heartbeats

Send periodic heartbeats to OpsDuty using opsduty-python. The heartbeat needs to be configured in OpsDuty before check-ins can be observed. Head over to https://opsduty.io to configure your heartbeats.

Installation

Install using pip install -U opsduty-python.

Alternative 1: Decorator

from opsduty_python.heartbeats.heartbeats import (
    heartbeat_checkin,
)

@heartbeat_checkin(heartbeat="HBXXXX", environment="prod", enabled=True)
def periodic_job():
    pass

Alternative 2: Send heartbeat manually.

from opsduty_python.heartbeats.heartbeats import (
    send_heartbeat_checkin,
)

def periodic_job():
    try:
        pass
    except Exception:
        print("Job failed.")
    else:
        send_heartbeat_checkin(heartbeat="HBXXXX", environment="prod")

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

opsduty_python-0.2.3.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

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

opsduty_python-0.2.3-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file opsduty_python-0.2.3.tar.gz.

File metadata

  • Download URL: opsduty_python-0.2.3.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.3 Linux/6.11.0-1015-azure

File hashes

Hashes for opsduty_python-0.2.3.tar.gz
Algorithm Hash digest
SHA256 a421bc8ef6f08a46a05fc836a988e5fe000a8a9252c663380f70875aac808d19
MD5 592407df083cb16544733b9265eecc9a
BLAKE2b-256 730ac9b7087cbc7b883687d37e288bebf70b34ec69f1459cae54fa117fee0a93

See more details on using hashes here.

File details

Details for the file opsduty_python-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: opsduty_python-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.3 Linux/6.11.0-1015-azure

File hashes

Hashes for opsduty_python-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 dab7355c8e948187264d6a50e8583ae3e42490d7e1d075ce3e7db3bdef3dd907
MD5 b8c26d508e37fa91e1d8ca10135b1343
BLAKE2b-256 0774b28bab6da3254116656e1cbf2110bd1e7ea44689fab168a378e6afd71df9

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