Troubleshooting
Installation Issues
Composer Authentication Failed
Problem: Authentication fails when installing from anystack.sh
Solution:
-
Verify your anystack.sh license credentials:
- Username: Your email address registered with anystack.sh
- Password: Your license key from anystack.sh
-
For fingerprinted licenses:
Password: your-license-key:your-fingerprint
Table Repeater Styles Missing
Problem: Column and filter builders look broken or unstyled
Solution:
- Ensure you have a custom Filament theme
- Add to your theme CSS:
@import '../../../../vendor/awcodes/filament-table-repeater/resources/css/plugin.css'; - Update tailwind.config.js:
content: [ './vendor/awcodes/filament-table-repeater/resources/**/*.blade.php', ] - Rebuild your assets:
npm run build
Plugin Not Appearing
Problem: Data Lens doesn't show in Filament navigation
Solution:
-
Clear all caches:
php artisan cache:clear php artisan config:clear php artisan view:clear -
Verify plugin registration:
use Padmission\DataLens\DataLensPlugin; ->plugins([ DataLensPlugin::make(), ]) -
Check navigation visibility:
DataLensPlugin::make() ->shouldRegisterNavigation(true)
Configuration Issues
Multi-Tenant Data Leakage
Problem: Users see data from other tenants
Solution:
-
Enable tenant awareness in config before migrations:
'tenant_aware' => true, -
Verify tenant foreign key exists in database tables
-
Verify tenant is properly detected in your application
-
If using custom tenant resolution, configure it in the cache settings:
// config/data-lens.php 'cache' => [ 'tenant_resolver' => function () { return auth()->user()?->team_id; // or however you determine tenant in your app }, ],
Excluded Columns Still Appearing
Problem: Sensitive columns show in report builder
Solution:
-
Run the detection command:
php artisan data-lens:suggest-excluded-columns --format=config -
Update config with suggestions:
'excluded_columns' => [ 'global' => ['password', 'api_token'], 'models' => [ User::class => ['ssn'], ], ], -
Clear cache:
php artisan data-lens:clear-cache
Performance Issues
Slow Report Loading
Problem: Reports take too long to generate
Solution:
-
Enable caching:
DATA_LENS_CACHE_ENABLED=true -
Add database indexes on filtered columns:
CREATE INDEX idx_orders_created_at ON orders(created_at); CREATE INDEX idx_orders_status ON orders(status); -
Optimize through relationships:
'through_relationships' => [ 'optimize_queries' => true, 'performance_threshold_ms' => 500, ],
Export Timeouts
Problem: Large exports fail or timeout
Solution:
-
Enable queued exports in config/data-lens.php:
'exports' => [ 'should_queue' => true, ], -
Increase timeout and chunk size:
DATA_LENS_EXPORT_TIMEOUT=1800 DATA_LENS_EXPORT_CHUNK_SIZE=5000 -
Ensure queue workers are running:
php artisan queue:work
API Issues
403 Forbidden Error
Problem: API requests return 403 Forbidden
Solution:
-
Check IP whitelisting in config/data-lens.php:
'api' => [ 'ip_whitelist' => ['your.ip.address'], ], -
Verify API is enabled for the report:
- Navigate to report settings
- Enable API access
- Generate API key
-
Check authentication method is correct
Report Not Found via API
Problem: 404 error when accessing report via API
Solution:
-
Verify using correct UUID (not ID)
-
Check API is enabled for report:
SELECT api_uuid, settings->>'$.api.enabled' FROM custom_reports WHERE name = 'Your Report'; -
Ensure report exists and user has access
Scheduling Issues
Scheduled Reports Not Sending
Problem: Reports don't run at scheduled times
Solution:
-
Verify Laravel scheduler is running:
* * * * * cd /your-project && php artisan schedule:run -
Add Data Lens command to scheduler:
Schedule::command('data-lens:check-scheduled-reports')->everyMinute(); -
Check for errors:
php artisan data-lens:check-scheduled-reports --debug -
Verify email configuration:
MAIL_MAILER=smtp MAIL_FROM_ADDRESS=noreply@example.com
Attachment Size Errors
Problem: Email reports fail with attachment too large
Solution:
-
Configure max attachment size:
'scheduling' => [ 'max_attachment_size' => 5120, // 5MB in KB ], -
Large reports will automatically use download links instead
Cache Issues
Stale Data After Model Changes
Problem: New fields don't appear after database changes
Solution:
-
Clear all Data Lens cache:
php artisan data-lens:clear-cache --force -
Clear specific cache type:
php artisan data-lens:clear-cache --type=model_fields -
For multi-tenant apps, ensure cache is cleared for all tenants
Cache Driver Warnings
Problem: Warning about cache driver not supporting tags
Solution:
- Use Redis or another tagging-supported driver for production
- Accept that all cache will be cleared when using file/database drivers
- Configure cache driver:
CACHE_DRIVER=redis
Common Error Messages
"Relationship class could not be determined"
Cause: Invalid relationship path or excluded relationship
Fix:
- Check relationship exists in model
- Verify not in excluded_relationships config
- Ensure proper relationship naming
"Column type could not be resolved"
Cause: Unknown database column type
Fix:
- Check column exists in database
- Verify column isn't in excluded_columns
- Clear cache and retry
"Export file not found"
Cause: Export job failed or file was cleaned up
Fix:
- Check Laravel logs for export errors
- Verify storage disk permissions
- Ensure queue workers are running
Debug Mode
Enable detailed logging for troubleshooting:
-
Set environment variables:
APP_DEBUG=true LOG_LEVEL=debug -
Run commands with debug flag:
php artisan data-lens:check-scheduled-reports --debug -
Check logs:
tail -f storage/logs/laravel.log
Getting Help
If issues persist:
-
Gather information:
- PHP version: php -v
- Laravel version: php artisan --version
- Filament version: composer show filament/filament
- Data Lens version: composer show padmission/data-lens
- Error messages and stack traces
-
Check for updates:
composer update padmission/data-lens -
Contact support:
- Email: [email protected]
- Include all gathered information
- Provide steps to reproduce