Skip to main content

Small library to notify Uptime Kuma that the service is up

Project description

apykuma

Support Ukraine

Build Status Code style: black Python support versions badge (from pypi)

Small library to notify Uptime Kuma that the service is up. Only async applications are supported.

Usage

Firstly, install the library:

pip install apykuma

Then include it in your code:

import logging
import apykuma

await apykuma.start(
    # Required; Push URL from Kuma GUI
    url="https://my-service.com",
    # Optional; default is 60 seconds
    interval=60,
    # Optional; sleeps for N seconds before pinging Kuma, in case if you run `apykuma` right before starting your service
    #           (if service fails, `apykuma` won't start as well). The recommended value is 10 seconds
    delay=0,
    # Optional; function that is called when during ping we encourage an error
    #           it is done to notify you about (e.g.) network errors, and to not
    #           stop the process of pinging kuma on such errors
    #
    #           by default, it logs an error using `logging` library (default value is shown below),
    #           also supports async functions
    handle_exception=lambda e: logging.getLogger("apykuma").exception(e),
)

It is important to start apykuma after your service starts.

Differences from pykuma

https://github.com/oliverstech/pykuma

That library is great, but it has some problems:

Installing for local developing

git clone https://github.com/PerchunPak/apykuma.git
cd apykuma

Installing poetry

Next we need install poetry with recommended way.

If you use Linux, use command:

curl -sSL https://install.python-poetry.org | python -

If you use Windows, open PowerShell with admin privileges and use:

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python -

Installing dependencies

poetry install --no-dev

Configuration

All configuration happens in config.yml, or with enviroment variables.

If something is not clear

You can always write me!

Thanks

This project was generated with python-template.

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

apykuma-1.2.0.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

apykuma-1.2.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file apykuma-1.2.0.tar.gz.

File metadata

  • Download URL: apykuma-1.2.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Linux/6.2.0-1018-azure

File hashes

Hashes for apykuma-1.2.0.tar.gz
Algorithm Hash digest
SHA256 cab6ae75675176d3eca2fa71107ca9c8e6710b2437d721ea2d9fa44e7279de07
MD5 4c160557aaf9e25c96b0464142e08289
BLAKE2b-256 5c72a67584cb8468a742bfc1f26a3663432bad6ab524950fecab534c22cd93b7

See more details on using hashes here.

File details

Details for the file apykuma-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: apykuma-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.1 Linux/6.2.0-1018-azure

File hashes

Hashes for apykuma-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 92728540d5c587ff3844ae682386e995d7b107cdd8840b42de4b99fd6fa90519
MD5 aa5d04accc3c44fad84599c6a28070d7
BLAKE2b-256 3207554ae1ec7808847a3cc7ccb523ea068b0240901e86c26625e0fd642a9689

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