Quick Diagnostics Checklist
Before diving into specific issues, run through this checklist:Common Issues
Dashboard Not Rendering
Component shows blank or nothing renders
Component shows blank or nothing renders
Symptoms:
- Empty space where dashboard should be
- No errors in console
- Component seems to load but shows nothing
- Ensure plugin is imported before rendering:
- Check for web component support:
- Verify container has height:
- Check z-index conflicts:
Dashboard loads then disappears
Dashboard loads then disappears
Symptoms:
- Dashboard appears briefly then vanishes
- May happen on route changes or re-renders
- React: Prevent re-renders destroying the component:
- Vue: Use v-show instead of v-if:
- Check for parent component unmounting: Add key prop to prevent recreation
Spinner loads infinitely
Spinner loads infinitely
Symptoms:
- Loading spinner never stops
- Dashboard never renders
- Invalid token:
- Wrong dashboard ID:
- Network blocked:
- Check browser extensions (ad blockers, privacy tools)
- Verify no corporate firewall blocking
- Check CORS settings
Authentication & Token Errors
401 Unauthorized Error
401 Unauthorized Error
Token Expired Error
Token Expired Error
Symptoms:
- “Token has expired” message
- Dashboard stops working after some time
- Set appropriate expiry time:
- Implement token refresh:
- Handle token expiry event:
CORS Errors
CORS Errors
Symptoms:
- “Access to fetch blocked by CORS policy”
- Cross-origin errors in console
- Generate tokens from backend (not frontend):
- Whitelist your domain:
- Go to Data App settings
- Add your domains to allowed origins
- Include all environments (dev, staging, prod)
- Check for mixed content (HTTP/HTTPS):
Display & Styling Issues
Dashboard overlaps or z-index issues
Dashboard overlaps or z-index issues
Symptoms:
- Dashboard hidden behind other elements
- Modals or dropdowns don’t appear correctly
- Set appropriate z-index:
- Check parent container:
- Use isolation:
Responsive layout issues
Responsive layout issues
Symptoms:
- Dashboard doesn’t fit screen
- Charts overlap on mobile
- Scrolling issues
- Ensure container is responsive:
- Set viewport meta tag:
- Use responsive theme:
Theme not applying
Theme not applying
Symptoms:
- Custom colors not showing
- Font changes not working
- Theme options ignored
- Stringify theme object:
- Check theme structure:
- Verify CSS specificity:
Performance Issues
Slow loading dashboard
Slow loading dashboard
Symptoms:
- Dashboard takes long to load
- Metrics render slowly
- Poor performance with large datasets
- Enable caching in workspace settings:
- Go to Workspace Settings → Cache Settings
- Enable query result caching
- Set an appropriate TTL (start with 3600 seconds / 1 hour)
- Choose DataBrain Caching for quick setup, or BYOC if you have your own Redis
- See the Cache Settings guide for detailed setup
- Apply filters to limit data:
- Optimize metrics:
- Reduce number of data points
- Use aggregations
- Limit table rows
- Consider pagination
- Lazy load dashboards:
Memory leaks
Memory leaks
Symptoms:
- Page slows down over time
- Browser tab crashes
- Increasing memory usage
- Clean up on unmount:
- Remove event listeners:
- Limit re-renders:
Cache & Redis Issues
Stale data displayed after data updates
Stale data displayed after data updates
Symptoms:
- Dashboard shows old data after an ETL run or manual data update
- Different users see inconsistent data
- Reset cache after data updates:
- Go to Workspace Settings → Cache Settings and click Reset Cache
- This flushes all cached query results for the workspace
- Reduce cache TTL:
- If your data updates frequently, lower the cache expiration time
- For hourly updates, set TTL to
3600(1 hour) or less
- Verify cache is the cause:
- Temporarily disable caching in Workspace Settings → Cache Settings
- If the data is now correct, caching was serving stale results
BYOC Redis connection failures
BYOC Redis connection failures
Symptoms:
- Cache settings fail to save with “Invalid Redis credentials” error
- Caching enabled but no speed improvement on repeat dashboard loads
- Check network connectivity:
- Your Redis must be reachable from DataBrain’s cloud
- Verify your security group allows inbound on the Redis port (default
6379) from DataBrain’s IP (see Allow Access to our IP) - If your Redis is in a private network, contact DataBrain support for connectivity options
- Verify credentials:
- Double-check the host, port, and AUTH token
- Ensure the AUTH token matches what’s configured on your Redis instance
- Try connecting to your Redis from another client to rule out credential issues
- Check Redis is running:
- Ensure your Redis/Elasticache instance is in an “Available” state
- Check for maintenance windows or failover events
- Connection timeout:
- DataBrain uses a 5-second connection timeout
- If your Redis has high network latency (e.g., cross-region), connections may time out
Cache not improving performance
Cache not improving performance
Symptoms:
- Caching is enabled but dashboards aren’t loading faster
- Every request seems to hit the database
- Verify caching is enabled:
- Go to Workspace Settings → Cache Settings and confirm the toggle is on
- Confirm you’ve set a TTL greater than 0
- Check cache mode:
- If using Databrain Caching, it should work automatically
- If using BYOC, verify your Redis connection was validated successfully (save must succeed)
- Understand cache key behavior:
- Cache keys include the full query, filters, workspace ID, and datasource ID
- Changing any filter or parameter generates a new cache key
- Dashboards with many dynamic filters may have lower cache hit rates
- Check TTL is reasonable:
- Very short TTLs (e.g., 10 seconds) mean cache entries expire before they can be reused
- Start with
3600(1 hour) and adjust based on your needs
Framework-Specific Issues
- React
- Vue
- Angular
Issue: Component not updating on prop changesIssue: TypeScript errorsIssue: Next.js SSR errors
Debugging Tips
Enable Debug Mode
Add debug logging to your implementation:Inspect Component State
Monitor Network Requests
Error Messages Reference
| Error Message | Cause | Solution |
|---|---|---|
Token is invalid or expired | Expired or malformed guest token | Regenerate token from backend |
Dashboard not found | Wrong dashboard ID | Verify dashboard-id attribute |
Unauthorized access | No permission to view dashboard | Check Data App permissions |
CORS policy error | Frontend trying to call API directly | Generate tokens from backend |
Failed to fetch | Network or firewall issue | Check network connectivity |
Invalid data app | Wrong dataAppName in token request | Verify Data App name |
Rate limit exceeded | Too many API calls | Implement rate limiting/caching |
Getting Help
If you’re still stuck after trying these solutions:Test Harness
Use our test environment to isolate issues
Sample Implementation
Check working examples in playground
API Documentation
Review complete API specs
Support
Contact our support team
Best Practices to Avoid Issues
Always generate tokens server-side
Always generate tokens server-side
Never expose API tokens in frontend code. Use your backend to generate guest tokens.
Implement error handling
Implement error handling
Always handle token generation failures and network errors gracefully.
Use TypeScript
Use TypeScript
Type safety helps catch issues during development.
Test across browsers
Test across browsers
Verify your implementation works in Chrome, Firefox, Safari, and Edge.
Monitor in production
Monitor in production
Set up error tracking (Sentry, LogRocket) to catch issues early.

