Skip to main content

Lightweight observation web application

Project description

Observe Application

test pypi version python support version size gh license code style: black

The Lightweight Observe Application project was created for easy to make an observe application that getting logs, audits, or trigger status from any data framework storage and endpoint APIs. This project focuses on the ddeutil-workflow tool first :dart:.

[!WARNING] This project is the best fit integration with ddeutil-workflow package. The first propose is monitor and observe from worker nodes that deploy the workflow application on a target self-hosted.

:round_pushpin: Installation

pip install -U ddeutil-observe

:egg: Docker Images supported:

Docker Image Python Version Support
ddeutil-observe:latest 3.9 :x:
ddeutil-observe:python3.10 3.10 :x:
ddeutil-observe:python3.11 3.11 :x:
ddeutil-observe:python3.12 3.12 :x:
ddeutil-observe:python3.12 3.13 :x:

[!NOTE] If you want to increase this application performance, you can install the performance option, pip install ddeutil-observe[perf] (It does not edit code, it's just routing other faster packages).

:beers: Getting Started

This project implement the best scalable FastAPI web application structure. For the first phase, I will use the SQLite be a backend database that keep authentication and workflows data.

Main Page


Workflow Release Page


:cookie: Configuration

[!IMPORTANT] The config value that you will set on the environment should combine with prefix, component, and name which is OBSERVE_{component}_{name} (Upper case).

Environment Component Default Description
TIMEZONE Core UTC A timezone that use on all components of this application
SQLALCHEMY_DB_ASYNC_URL Core sqlite+aiosqlite:///./observe.db A database url of the application backend side
ACCESS_SECRET_KEY Core secrets.token_urlsafe(32) A secret key that use to hash the access token with jwt package
ACCESS_TOKEN_EXPIRE_MINUTES Core 30 Expire period of the access token in minute unit
REFRESH_SECRET_KEY Core secrets.token_urlsafe(32) A secret key that use to hash the refresh token with jwt package
REFRESH_TOKEN_EXPIRE_MINUTES Core 60 * 24 * 8 Expire period of the refresh token in minute unit
ADMIN_USER Web observe An username of superuser
ADMIN_PASS Web observe A password of superuser
ADMIN_EMAIL Web observe@mail.com An email of superuser
DEBUG_MODE Log true Logging mode
SQLALCHEMY_DEBUG_MODE Log true Database Logging mode that will logging every execution statement before and after connection

:rocket: Deployment

(env) $ uvicorn src.ddeutil.observe.app:app \
  --host 127.0.0.1 \
  --port 88 \
  --no-access-log

[!NOTE] If this package already deploy, it is able to use

(env) $ uvicorn ddeutil.workflow.api:app \
  --host 127.0.0.1 \
  --port 88 \
  --workers 4 \
  --no-access-log

:speech_balloon: Contribute

I do not think this project will go around the world because it has specific propose, and you can create by your coding without this project dependency for long term solution. So, on this time, you can open the GitHub issue on this project :raised_hands: for fix bug or request new feature if you want it.

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

ddeutil_observe-0.0.6.tar.gz (27.9 kB view details)

Uploaded Source

Built Distribution

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

ddeutil_observe-0.0.6-py3-none-any.whl (36.9 kB view details)

Uploaded Python 3

File details

Details for the file ddeutil_observe-0.0.6.tar.gz.

File metadata

  • Download URL: ddeutil_observe-0.0.6.tar.gz
  • Upload date:
  • Size: 27.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for ddeutil_observe-0.0.6.tar.gz
Algorithm Hash digest
SHA256 80ebf9dcd08df157819d324da134bef73f0867b1eb39bda78bb3b9d506ac40d5
MD5 455162e5214556b5bbe6a634098ea9f8
BLAKE2b-256 ddcf54ae96fb97870f5c7504d75bdc9e9e02824309d28ab336ce3232e08a0ca4

See more details on using hashes here.

File details

Details for the file ddeutil_observe-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for ddeutil_observe-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 836992c6a841e04a129a73cdbcb6a7c977d1badd16dc08e9bbe3faeb9ec642a0
MD5 a9e294968922c4bab5acc5b6c2c26988
BLAKE2b-256 d9cfe0867f3551aaa4456e1c569376d3efe6fea3027b255e9229230d96e59123

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