Skip to main content

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.

[!NOTE] I will use this project to be the base Frontend learning path for me.

: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

For the first phase, I will use the SQLite be a backend database that keep authentication and workflows data.

Login Page

Login Page

Main Page

Workflow Page

Workflow Detail Page

Workflow Trace 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.

Release files for ddeutil-observe 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ddeutil-observe 0.0.7
File Size Uploaded
ddeutil_observe-0.0.7.tar.gz 29.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ddeutil-observe 0.0.7
File Interpreter ABI Platform
ddeutil_observe-0.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 70.0 kB

Release files / ddeutil_observe-0.0.7.tar.gz

Download URL ddeutil_observe-0.0.7.tar.gz
Size 29.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a240558df50f184491035ac50e88f7640487e6e99913d57cda302cfa708e04fd
BLAKE2b-256 checksum
How to use checksums
42ea4636dd2bc05bea21799b208b01880fa93cec4d8f65d94c0278b40d0d8fab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / ddeutil_observe-0.0.7-py3-none-any.whl

Download URL ddeutil_observe-0.0.7-py3-none-any.whl
Size 40.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ada08266203cf4ce1d05f4f36ea816a065697116901a9a57ab45c971c568e862
BLAKE2b-256 checksum
How to use checksums
a1b716101b1333398a39c23c1478c6ef4e678dddd7839006f85c034b21b30b1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release history Release notifications | RSS feed

This release

0.0.7 This release

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page