bugdeployer / horus-sdk
Bounded opt-in runtime capture for Horus
Requires
- php: >=8.2
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-26 21:47:24 UTC
README
Explicit runtime scopes for PHP 8.2+. Load Composer's autoloader or require src/Recorder.php.
use Horus\Recorder; use Horus\Scope; $recorder = new Recorder("my-app", ["endpoint" => "http://127.0.0.1:3100"]); $recorder->trace("request", function (Scope $scope) { return $scope->span("orders.process", ["id" => 17], function (Scope $child) { $child->checkpoint("order", ["id" => 17]); return ["processed" => true]; }); });
Run php worker.php separately with the same HORUS_SPOOL_DIR as the application. Requests write captures to that private directory; the worker uploads them. Failed uploads remain as .json.failed. The spool is bounded; inspect failures before it fills.
Redaction is enabled by default. Pass ["redaction" => false] in integration code to disable it. Keep the spool private.
Install with composer require bugdeployer/horus-sdk:0.4.0-beta.1. Available on Packagist. Maintained by bugdeployer. GPL-3.0-only.