Skip to content

Releases: PraveenLuke/ecs-doctor

v0.4.2

Choose a tag to compare

@PraveenLuke PraveenLuke released this 24 Jun 13:28

Full Changelog: v0.4.1...v0.4.2

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 24 Jun 13:06
39876fe

What's Changed

Full Changelog: v0.4.0...v0.4.1

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 24 Jun 12:32
12caa89

What's Changed

  • feat: v0.4.0 — extended diagnostic coverage, web UI fix, 250 tests by @PraveenLuke in #11

Full Changelog: v0.3.1...v0.4.0

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 24 Jun 08:13
37d82c6

What's Changed

Full Changelog: v0.3.0...v0.3.1

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 24 Jun 07:45
eb8d59a

What's Changed

Full Changelog: v0.2.0...v0.3.0

v0.2.0 — Metrics, Config, Network, Web UI & Interactive Wizard

Choose a tag to compare

@PraveenLuke PraveenLuke released this 23 Jun 19:23
c4275f0

What's New

New Diagnosers

  • Metrics — detects sustained CPU/memory utilisation above 85% via CloudWatch
  • Config — extracts task definition and service config; validates Fargate CPU/memory combos; masks sensitive env vars
  • Network — checks security group egress and NAT Gateway presence; surfaces blocked-outbound findings

New CLI Features

  • --stream-logs — streams live ECS task logs to the terminal; Ctrl+C exits cleanly
  • browse — interactive wizard to select cluster/service (Profile / Access Keys / Default Chain / OIDC)
  • serve — starts a FastAPI + HTMX web UI at http://localhost:8080

Web UI

  • Form-based diagnosis at GET /POST /diagnose
  • JSON API at GET /api/diagnose
  • Live log streaming via SSE at GET /api/stream-logs
  • Health check at GET /healthz

Infrastructure

  • deploy/Dockerfile — Python 3.12-slim, non-root user, port 8080
  • deploy/task-definition.json — Fargate task definition with health check
  • deploy/iam-policy.json — minimum IAM policy for all diagnosers

Architecture

  • Shared engine.py — zero logic duplication between CLI and web
  • ServiceDataCache — eliminates 3× duplicate ecs:DescribeServices calls per run

Extended Detection

  • 3 new stop codes: SpotInterrupted, TaskFailedToStart, EssentialContainerExited
  • 11 new log crash patterns: Rust panics, .NET exceptions, PHP fatal errors, disk full, EFS mount failures
  • Deployment config deadlock detection (min=100% / max=100% / running=0)

Quality

  • All SonarQube issues resolved
  • Test coverage raised from ~50% → 90%+ (180 tests)

Install

pip install ecs-doctor==0.2.0
pip install 'ecs-doctor[web]==0.2.0'   # includes web server

What's Changed

  • Add --profile option for named AWS credentials by @PraveenLuke in #1
  • chore: bump version to 0.1.1 by @PraveenLuke in #2
  • v0.2.0 — metrics, config, network diagnosers, web UI, interactive wizard by @PraveenLuke in #3
  • fix: correct template response parameters in diagnose routes by @PraveenLuke in #4
  • chore: bump version to 0.2.0 by @PraveenLuke in #5

New Contributors

Full Changelog: v0.1.0...v0.2.0

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 23 Jun 13:52

Full Changelog: v0.1.0...v0.1.1