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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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