Skip to content

⚙️ FEATURE-#188: OpenTelemetry integration — Tracer, Metrics, and Log providers#190

Merged
FernandoCelmer merged 25 commits intodevelopfrom
feature/188
Apr 7, 2026
Merged

⚙️ FEATURE-#188: OpenTelemetry integration — Tracer, Metrics, and Log providers#190
FernandoCelmer merged 25 commits intodevelopfrom
feature/188

Conversation

@FernandoCelmer
Copy link
Copy Markdown
Member

@FernandoCelmer FernandoCelmer commented Apr 7, 2026

Description

New ABCs:

  • dotflow/abc/tracer.py — Tracer interface with workflow/task lifecycle hooks
  • dotflow/abc/metrics.py — Metrics interface for observability counters

New Providers (6 files):

  • dotflow/providers/tracer_*.py — TracerOpenTelemetry and TracerDefault implementations
  • dotflow/providers/metrics_*.py — MetricsOpenTelemetry and MetricsDefault implementations
  • dotflow/providers/log_opentelemetry.py — OpenTelemetry structured logging

Enhanced Core Modules:

  • dotflow/core/config.py — Added tracer and metrics configuration parameters
  • dotflow/core/workflow.py — Manager receives config, calls tracer/metrics hooks
  • dotflow/core/execution.py — Task execution triggers tracer hooks
  • dotflow/core/task.py — Task status setter calls metrics hooks
  • dotflow/providers/log_default.py — Added level, output, path, format parameters

Documentation & Examples (23 files):

  • New tutorials, references, and custom provider guides
  • Example configs for all three observability pillars
  • Integration setup and usage documentation

Tests (5 files):

  • 36 comprehensive test cases across tracer, metrics, and log providers

Motivation and Context

This PR implements full OpenTelemetry integration, enabling comprehensive observability across all three pillars: Logs, Traces, and Metrics. This closes the gap in observability tooling and allows users to monitor, debug, and analyze workflow execution across production environments.

Reference: Closes #188

Types of changes

  • Bug fix
  • New feature
  • Documentation

Checklist

  • I have performed a self-review of my own code
  • I have added tests that prove my fix is effective or that my feature works
  • I have updated the CHANGELOG
  • I have updated the documentation accordingly

@FernandoCelmer FernandoCelmer added enhancement New feature or request documentation Improvements or additions to documentation labels Apr 7, 2026
@FernandoCelmer FernandoCelmer self-assigned this Apr 7, 2026
@FernandoCelmer FernandoCelmer merged commit d48078e into develop Apr 7, 2026
10 checks passed
@FernandoCelmer FernandoCelmer deleted the feature/188 branch April 7, 2026 21:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant