Sync logs from a remote server
Use an SSH connector to mirror logs from a production host into Log Lens, fetching only new bytes each time.
1. Add the connector
Settings to Connectors to Add connector, choose SSH, and provide the host, user, and log paths. Paths can be exact or use safe glob patterns for daily and rotated logs:
{
"host": "app.example.com",
"port": 22,
"user": "deploy",
"key_path": "/Users/me/.ssh/id_ed25519",
"paths": [
"/var/www/app/storage/logs/laravel-*.log",
"/var/www/app/storage/logs/laravel.log.[0-9]*"
]
}
Log Lens uses your key with host-key verification enforced; passwords are never stored. Assign the connector to a module to label everything it pulls.
2. Preview, then sync
Click Sync to see the exact files and how many bytes will be fetched, then confirm. Log Lens fetches only appended data, preserves rotated generations, and won't act on a file set that changed after the preview. The dashboard starts a background worker and shows live files, bytes, events, and the current filename; closing or reloading the page does not stop the run.
3. Automate it
Run the sync on a schedule:
# Standalone (cron)
php bin/sync.php
# Laravel (schedule in the console kernel)
php artisan log-lens:sync
See Automate log syncing for scheduling details.
Next
- Automate log syncing
- Full reference: Connectors