- What does the karim-tao/laravel-server-status package do?
- It gives your Laravel application a real-time snapshot of the server it runs on: CPU, load average, memory, disk usage, uptime and running PHP processes. You can render the data through a bundled Livewire component or pull the same values directly in your own code. It is a read-only status tool with no daemon, no historical storage and no database tables.
- How do I install laravel-server-status in a Laravel app?
- Install it with Composer using composer require karim-tao/laravel-server-status. The package registers its service provider automatically through Laravel's package discovery, so no manual registration is normally needed. Check the README for any publishable config or view assets, then mount the Livewire component or call the metrics from your own classes.
- Do I need Livewire to use this package?
- Livewire is only required for the included dashboard component. If you just want the raw server metrics inside your own controllers, commands or Blade views, you can consume the values in code without rendering the component. Composer will tell you immediately if Livewire is a hard dependency for your installed version, so check the package's composer.json before planning your stack.
- Which server metrics are available?
- The package exposes current CPU usage, load average, memory usage, disk usage, server uptime and PHP process information. These are point-in-time readings taken when the component or code is executed, not averaged or stored series. That makes it suitable for a quick health glance rather than long-term capacity planning.
- Does laravel-server-status store metrics in a database or keep history?
- No. The package is explicitly designed without a database, history or persistence layer, so there are no migrations to run and nothing to prune. Each request or Livewire refresh simply reads the current values from the server. If you need trends, charts or alert thresholds over time, you would have to add your own storage on top of these readings.
- Does it require a daemon or external monitoring agent?
- No daemon or agent is needed. The package reads the current state of the host directly from within your Laravel application, which keeps deployment simple and avoids running extra services. The trade-off is that it can only see the machine handling the request, so each app server reports its own status separately.
- How should I secure the server status dashboard in production?
- Treat the dashboard route like any other admin area: put it behind authentication and, ideally, an IP allowlist or a role check. The metrics can reveal infrastructure details such as disk paths, memory pressure and process counts, so exposing them publicly is a bad idea. Review the package's route and config options so you can restrict access rather than relying on an obscure URL.
- Which Laravel and PHP versions does this package support?
- Support depends on the release you install and is defined in the package's composer.json constraints, so check those before adding it to an older project. The package targets modern Laravel applications that already use Livewire for the dashboard. Running composer require and reading the resolution output is the fastest way to confirm compatibility with your Laravel and PHP versions.
- What is the performance overhead of polling the server status component?
- Reading CPU, memory, disk, uptime and process data is relatively cheap, but it still involves system calls and, for process counts, potentially shelling out. Very short Livewire polling intervals across many users will add up, so keep the refresh rate sensible for a status page. For most internal dashboards, refreshing every few seconds or on demand is more than enough.
- How is this different from Laravel Pulse or tools like Netdata?
- Laravel Pulse records application-level metrics over time and needs database storage, while Netdata and similar tools run an external agent with alerting and retention. This package is deliberately narrower: a dependency-light snapshot of the current server state inside your Laravel app. Use it for a quick at-a-glance health view, and pair it with a proper monitoring stack if you need history, alerts or multi-server aggregation.