Skip to main content

An observability tool built to help tracking, visualizing and inspecting intermediate steps in a complex pipeline-based application. It automatically captures and stores the intermediate data, results and execution times of each steps in a pipeline, visualizing the execution details and allowing easier debug or analysis through an analytic dashboard.

Project description

steps-track/lib-py

This is the Python library implementation for steps-track

StepsTrack is an observability tool built to help tracking, visualizing and inspecting intermediate steps in a complex pipeline-based application. It automatically captures and stores the intermediate data, results and execution times of each steps in a pipeline, visualizing the execution details and allowing easier debug or analysis through an analytic dashboard.

Installation

pip install steps-track

Quick Start

import asyncio
from steps_track import Pipeline, Step
from steps_track.transport import HttpTransport

async def main():
    http_transport = HttpTransport(
        base_url='http://localhost:3000',
    )

    pipeline = Pipeline('my-pipeline', options={
        'auto_save': 'finish',
        'transport': http_transport,
    })

    async def pipeline_track(st: Step):
        async def step1(st: Step):
            # Step 1 logic
            await st.record('key', 'value')
            
        await st.step('step1', step1)
        
        async def step2(st: Step):
            # Step 2 logic
            return 'result'
            
        await st.step('step2', step2)

    await pipeline.track(pipeline_track)

    # Export output
    exported = pipeline.output_pipeline_meta()

    # Gantt Chart Visualization
    gantt_chart_buffer = await pipeline.gantt_quickchart()

if __name__ == "__main__":
    asyncio.run(main())

See GitHub repository for more usages and repository introduction.

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

steps_track-1.12.3.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

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

steps_track-1.12.3-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file steps_track-1.12.3.tar.gz.

File metadata

  • Download URL: steps_track-1.12.3.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for steps_track-1.12.3.tar.gz
Algorithm Hash digest
SHA256 e21d35fee3448f62359d13ace155c3ec28fbec0aff32ac2dd3a116e35589d310
MD5 84fb05b4d840271ba584d1fc68b28980
BLAKE2b-256 a16dcd50d27781d7350a4a1c4ad357470977a7f0172e3f20402c5684d56222c2

See more details on using hashes here.

File details

Details for the file steps_track-1.12.3-py3-none-any.whl.

File metadata

  • Download URL: steps_track-1.12.3-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for steps_track-1.12.3-py3-none-any.whl
Algorithm Hash digest
SHA256 13bf8891269c3f3816ca5b8059fc1cf165fe71804fea1ea8ed9a2bfbd026f6e7
MD5 54b7020a9070065fc8bf2b31e5a83e1c
BLAKE2b-256 0c4752bfb6ea987110044a3c85c5c8fcd297e23055b7567d77ee73d1cca07ff4

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