Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laralyze Laravel Package

mohammed-mojaly/laralyze

Laralyze is a Laravel analysis package that inspects your app’s structure, routes, models, and database to surface useful insights. Use it to audit projects, understand dependencies, and spot optimization opportunities with clear, actionable reports.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit Laralyze is a Laravel-native package, which is the right shape for a Laravel codebase: it will register a service provider, hook the framework's event dispatcher (request handled, job processed, query executed, exception reported, cache hit/miss, HTTP client calls), and persist telemetry to a configured store. The two-backend design — SQL (MySQL/Postgres/SQLite) for small deployments and ClickHouse for higher volume — is a sensible on-prem/self-hosted pattern and avoids sending data to a third party. This makes it an attractive fit where data residency, air-gapped environments, or restrictive procurement rules block SaaS APM (Datadog, New Relic, Sentry, Telescope-as-a-service). It is a complement to, not a replacement for, infrastructure-level observability (metrics, traces, logs aggregation); it is application-level introspection that lives inside the Laravel process.

Integration feasibility Mechanically straightforward: composer require, publish config and migrations, register middleware, run migrations, mount the dashboard route. Effort is measured in hours for a single service, not weeks. The real cost is not installation but decisions: which signals to enable (query logging and HTTP client logging are the expensive ones), sampling rate, retention window, and whether writes go to the application's primary database or a dedicated store. The ClickHouse path materially changes the effort profile — it converts a Composer install into a stateful infrastructure dependency.

Technical risk

  • Maturity and bus factor. 30 stars and effectively a single maintainer. Compatibility with future Laravel majors, security fixes, and PHP releases are not guaranteed. Treat as "vendored dependency" rather than "supported product."
  • In-process instrumentation overhead. Any package that observes queries, HTTP calls, and jobs adds latency to the hot path. Whether writes are synchronous or queued/batched is the single most important architectural question and is not determinable from the description.
  • Write amplification on the primary DB. In SQL mode, telemetry contends with production traffic for connections, IOPS, and storage. On a busy service this can turn an observability tool into an availability incident.
  • Data exposure. Request payloads, query bindings, logs, and AI/LLM call contents frequently contain PII, tokens, and secrets. Defaults matter enormously; a dashboard that is easy to install and easy to leave unauthenticated is a real risk.
  • Operational coupling. An unhandled exception in the collector path could surface as an application error if the package fails open poorly.

Key questions to resolve before adoption

  1. Is ingestion synchronous, queued, or batched? Is there a sampling/rate-limit knob?
  2. Which Laravel and PHP versions are in the composer.json constraint, and how current is it?
  3. Does it work under Octane/Swoole/RoadRunner, and alongside Horizon and Telescope?
  4. What is the migration strategy (rollback, idempotency, index/partition creation) and does it ever touch existing tables?
  5. How is the dashboard authenticated and authorized — does it respect existing Gates/policies, or ship its own guard?
  6. What redaction/filtering exists for request bodies, query bindings, headers, and log content?
  7. Is retention configurable, and what is the pruning mechanism?
  8. Does the collector degrade safely (fail-open) if the store is unavailable?
  9. What is the ClickHouse schema lifecycle — auto-created, TTL-based, or manual?
  10. Is there a public issue/commit history indicating active maintenance?

Integration Approach

Stack fit Strong fit for a conventional Laravel monolith or a small fleet of Laravel services on MySQL/Postgres, especially in regulated or cost-sensitive contexts where per-host SaaS pricing is prohibitive. Weaker fit where the platform already standardizes on OpenTelemetry, or where the runtime is serverless/short-lived (Laravel Vapor) since in-process collectors lose fidelity and add cold-start cost. ClickHouse support is the tell that the package targets volume — which is good, but it means the "cheap" tier is SQL and the "real" tier carries real infrastructure.

Migration path Adopt incrementally, and treat the store choice as a separate gate:

  1. Audit — read the source, compose a dependency/licence review (MIT is clean), confirm version constraints and maintenance signals.
  2. Staging spike — install on one staging service with all signals enabled, then measure latency delta, query count delta, and storage growth per 1k requests. This produces the numbers that decide sampling and retention.
  3. Single production service — pick a low-criticality, high-traffic service to stress the overhead assumptions. Run alongside existing tooling rather than replacing it.
  4. Decide the store — if projected volume fits comfortably in the primary DB with a 7–14 day retention window, stay on SQL. Escalate to ClickHouse only when write volume or dashboard query latency forces it.
  5. Fleet rollout — standardize via a shared config package or environment variables, and enable only the signal set that the staging data justified.
  6. Decommission or narrow overlapping tooling only after a full release cycle of trust-building.

Compatibility and sequencing Pin the exact version ("x.y.*", not ^), and gate upgrades behind the same staging check. Sequence the work so the observability store and dashboard come up before application instrumentation is enabled — otherwise the first rollout becomes a debugging session on the collector itself. If ClickHouse is chosen, land it as its own infrastructure change with its own review, not as a rider on an application PR.

Rollout guardrails Ship behind a feature flag or config toggle so instrumentation can be disabled per-environment without a deploy. Define a kill switch for the expensive signals (query and HTTP instrumentation) and document it in the runbook before the first production enablement.

Operational Impact

Maintenance Ongoing cost is low in code terms — an occasional Composer bump and a config review — but the bus-factor risk is the dominant long-term liability. Mitigate by (a) pinning versions, (b) mirroring the repo internally or vendoring it, (c) documenting the dashboard schema well enough that a fork is viable, and (d) budgeting an explicit "replace or fork" decision point at each Laravel major upgrade. Because it is MIT-licensed, forking is legally unencumbered; the cost is engineering attention, not licensing.

Support Community-only. There is no SLA, no vendor escalation path, and issue response times are unknown and likely best-effort. Supportability therefore rests on our own team's ability to read PHP source. That is acceptable for a dev-productivity tool and unacceptable for anything that becomes a system of record or a paging dependency.

Scaling Three scaling axes to plan for explicitly:

  • Ingest volume — requests × signals enabled × retention. Compute this from the staging spike, not from intuition.
  • Store growth — SQL mode needs partitioning or aggressive pruning; ClickHouse needs TTL policies and disk headroom. Either way, retention is a policy decision that must be set before rollout, not after the disk fills.
  • Dashboard query cost — aggregate queries over millions of rows will punish a shared application database. Isolate the store if the dashboard becomes widely used.

Failure modes

  • Store unavailable — does the app degrade or error? Must be verified as fail-open; test by taking the store down in staging.
  • Store saturation — telemetry writes consuming primary DB connections during a traffic spike is the highest-severity scenario; separate the store before this can happen.
  • Disk fill — no retention set is a slow-motion outage; alert on store size.
  • Exposure — dashboard reachable beyond the intended audience, or leaking PII into a broadly-readable table. Requires both auth integration and redaction review.
  • Migration drift — a failed or partial migration on upgrade blocking deploys.
  • Silent data loss — if ingestion is queued and the queue backs up, gaps in telemetry during exactly the incidents you need data for.

Ramp-up Installation and basic use: under a day for a Laravel-fluent engineer. Meaningful adoption — choosing signals, tuning sampling, setting retention, wiring auth, writing the runbook, and training on-call to actually use the dashboard during an incident — is a two-to-three week effort spread across the first release cycle. ClickHouse adds a separate skill requirement for whoever owns the data platform; if no one on the team has operated it, budget for that or stay on SQL.

Recommendation Adopt on a trial basis for development, staging, and low-criticality production services, with pinned versions, an explicit retention policy, and a documented kill switch. Do not make it the sole source of truth for production incident response, and do not place it on the primary application database of a high-traffic service. The deciding factor between "useful internal tool" and "future migration project" is the answer to the synchronous-vs-async ingestion question — resolve that in the staging spike before committing further.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle