Dashboard
The system home screen displays configurable widgets with portfolio KPIs:
- Total registered applications
- Assessments by status (Draft, In Progress, Completed, Approved)
- Average portfolio readiness scores
- Migration plans by phase
- Open blocking risks
- Distribution of recommended strategies
Widgets can be reordered by drag and drop and reset to the default layout.
Technology Catalog
Go to Settings → Technology Catalog (requires catalog.view). The catalog centralizes the inventory of technologies recognized by the system:
- Programming languages
- Frameworks and runtimes
- Databases
- Message brokers
- Web servers
- Infrastructure tools
Each technology has: name, vendor, category, description, whether it is stateful, and Kubernetes compatibility. Administrators can add new technologies to the catalog (requires catalog.manage).
Audit Logs
Go to Settings → Audit Logs (requires audit.view). All create, edit and delete events are logged automatically via Spatie ActivityLog.
Each log entry contains:
- User who performed the action
- Affected model and record ID
- Event: created, updated, deleted
- Before and after values (diff)
- Timestamp
- IP address and user agent
Useful Artisan commands
# Clear application cache
php artisan cache:clear
php artisan config:clear
php artisan view:clear
php artisan route:clear
# Recompile assets (production)
npm run build
# Check system status
php artisan about
# Process queue manually
php artisan queue:work --once
# View pending queue jobs
php artisan queue:monitor database:default
# Retry failed jobs
php artisan queue:retry all
# List routes
php artisan route:list
Health probes
The system exposes Kubernetes-compatible endpoints for monitoring:
GET /healthz → 200 OK if the application is alive
GET /readyz → 200 OK if database and dependencies are accessible
GET /metrics → metrics (requires authentication token)
Configure in your Kubernetes / OKD cluster:
livenessProbe:
httpGet:
path: /healthz
port: 8080
initialDelaySeconds: 30
periodSeconds: 10
readinessProbe:
httpGet:
path: /readyz
port: 8080
initialDelaySeconds: 15
periodSeconds: 5
Database maintenance
# Run migrations
php artisan migrate
# Rollback last migration
php artisan migrate:rollback
# Migration status
php artisan migrate:status
# Seed initial data
php artisan db:seed
# Run a specific seeder
php artisan db:seed --class=AssessmentTemplateSeeder
Session and cache configuration
| Driver | Recommendation |
|---|---|
| Development | SESSION_DRIVER=file, CACHE_STORE=file |
| Production (Docker) | SESSION_DRIVER=redis, CACHE_STORE=redis |
| Production (no Redis) | SESSION_DRIVER=database, CACHE_STORE=database |
Backup and recovery
# PostgreSQL database dump
pg_dump -h localhost -U tainux tainux > backup_$(date +%Y%m%d).sql
# Restore
psql -h localhost -U tainux tainux < backup_20240315.sql
# Backup report files
tar -czf reports_$(date +%Y%m%d).tar.gz storage/app/reports/
System update
-
Enable maintenance mode
php artisan down --secret="your-bypass-token" -
Pull the new version
git pull origin main -
Install dependencies and run migrations
composer install --no-dev --optimize-autoloader php artisan migrate --force npm run build -
Clear cache and disable maintenance mode
php artisan cache:clear php artisan config:cache php artisan route:cache php artisan view:cache php artisan up
Application logs
# View logs in real time (development)
php artisan pail
# Logs in Docker
docker compose logs -f web
docker compose logs -f worker
# Log file
tail -f storage/logs/laravel.log
Support
For technical support, contact the TAINUX team:
- Email: support@tainux.io
- Website: tainux.io
- GitHub: github.com/tainux