Download the PHP package pepperfm/dozor-agent without Composer
On this page you can find all versions of the php package pepperfm/dozor-agent. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pepperfm/dozor-agent
More information about pepperfm/dozor-agent
Files in pepperfm/dozor-agent
Package dozor-agent
Short Description Self-hostable Laravel instrumentation and local agent starter inspired by laravel/nightwatch.
License MIT
Homepage https://example.com/dozor
Informations about the package dozor-agent
Dozor Agent Starter
A self-hostable Laravel instrumentation and local agent starter, adapted from the public
laravel/nightwatch package architecture and transport ideas, but renamed and reshaped for Dozor.
What this bundle gives you
- Laravel package with
dozor:agentanddozor:statuscommands - local TCP ingest client/server using a framed payload protocol
- request tracing middleware
- query, queue, and exception watchers
- newline-delimited JSON storage for ingested records
- configuration already renamed from
NIGHTWATCH_*toDOZOR_*
What this is not
- not a drop-in clone of the hosted Nightwatch backend
- not a full production-ready APM yet
- not a fork that keeps Laravel/Nightwatch branding
It is a good self-hosted starter: clean enough to keep, small enough to reshape.
Install
Local package smoke install (path repository)
Install is safe even if the local worker is not running yet. The package does not break
composer install, deploy hooks, or package:discover when 127.0.0.1:4815 is unavailable.
You can install first and start the worker later.
Typical env
Run local agent
Useful options:
dozor:status --strict is opt-in diagnostics and may fail when the local worker is down.
Regular runtime instrumentation stays non-fatal and keeps buffered retry behavior.
Runtime telemetry and status
dozor:status now reports:
- local agent reachability (
ping) - queue depth and failed queue depth
- dropped batches and failed upload counters
- last flush / heartbeat / upload timestamps
Shipping strategy is strict batching by default and cannot be toggled via config flags.
Telemetry state is persisted to:
Production packaging examples
Example service files are available in:
examples/supervisor/dozor-agent.conf.exampleexamples/systemd/dozor-agent.service.example
Current record model
The package emits records like:
requestqueryjobexceptioncustom
Each record includes a trace_id, timestamps, app/environment/server metadata, and a payload block.
Files worth editing first
src/DozorServiceProvider.phpsrc/Core.phpsrc/Http/Middleware/TraceRequest.phpsrc/Agent/Server.phpconfig/dozor.php
Suggested next steps
- swap NDJSON file storage for ClickHouse / Postgres / Kafka / Redis Streams
- add outgoing HTTP instrumentation
- add trace/span hierarchy instead of flat child records
- add metric rollups (minute buckets, P95/P99)
- correlate deployments/releases