nadi-pro / nadi-laravel
Handle Laravel Exception Events
Installs: 58
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/nadi-pro/nadi-laravel
Requires
- php: ^8.1 || ^8.2 || ^8.3 || ^8.4
- guzzlehttp/guzzle: ^6.3.1|^7.0.1
- hisorange/browser-detect: ^4.5 | ^5.0
- illuminate/contracts: ^9.0 || ^10.0 || ^11.0 || ^12.0
- illuminate/routing: ^9.0 || ^10.0 || ^11.0 || ^12.0
- illuminate/support: ^9.0 || ^10.0 || ^11.0 || ^12.0
- nadi-pro/nadi-php: ^2.0
- open-telemetry/api: ^1.0
- open-telemetry/exporter-otlp: ^1.0
- open-telemetry/sdk: ^1.0
- open-telemetry/sem-conv: ^1.0
Requires (Dev)
- laravel/pint: ^1.15
- mockery/mockery: ^1.5
- nunomaduro/collision: ^6.0 || ^7.0 || ^8.0
- orchestra/testbench: ^8.25 | ^9.0
- phpunit/phpunit: ^9.0 || ^10.1 || ^11.0
README
Nadi Laravel Client
Nadi is a simple issue tracker for monitoring your application crashes. This package developed for Laravel framework.
Requirements
- PHP 8.1 or higher
- Laravel 9.0 or higher
Installation
composer require nadi-pro/nadi-laravel
Then run the install command:
php artisan nadi:install
This will:
- Publish the
nadi.phpconfiguration file to yourconfig/directory - Automatically download and install the Nadi Shipper binary to
vendor/bin/
Skip Shipper Installation
If you don't want to install the shipper binary automatically (e.g., you're using the HTTP transporter only), use the --skip-shipper flag:
php artisan nadi:install --skip-shipper
Configuration
After installation, configure your Nadi credentials in config/nadi.php or via environment variables:
NADI_API_KEY=your-sanctum-token NADI_APP_KEY=your-application-key
Shipper Binary
The Nadi Shipper is a lightweight Go binary that monitors a directory for JSON log files and forwards them to the Nadi API. It's automatically installed during php artisan nadi:install.
Binary Location
The shipper binary is installed at:
vendor/bin/shipper
Manual Shipper Management
You can also manage the shipper binary programmatically:
use Nadi\Laravel\Shipper\Shipper; $shipper = new Shipper(); // Check if installed if ($shipper->isInstalled()) { echo "Version: " . $shipper->getInstalledVersion(); echo "Path: " . $shipper->getBinaryPath(); } // Install or update $shipper->install(); // Check for updates if ($shipper->needsUpdate()) { $shipper->update(); } // Execute shipper commands $result = $shipper->send(config_path('nadi.yaml')); $result = $shipper->test(config_path('nadi.yaml')); $result = $shipper->verify(config_path('nadi.yaml')); // Uninstall $shipper->uninstall();
Supported Platforms
| Operating System | Architectures |
|---|---|
| Linux | amd64, 386, arm64 |
| macOS (Darwin) | amd64, arm64 |
| Windows | amd64 |
Available Commands
# Install Nadi (publishes config + installs shipper) php artisan nadi:install # Install without shipper binary php artisan nadi:install --skip-shipper # Force overwrite existing config php artisan nadi:install --force # Test API connectivity php artisan nadi:test # Verify configuration php artisan nadi:verify
Documentation
Refer to documentation for detailed installation and usage instructions.