Troubleshooting
This guide covers common issues you may encounter when running Lavalink and how to resolve them.Lavalink Won’t Start
If Lavalink fails to start, work through these checks:Verify Java version
Check Lavalink version
Make sure you have downloaded the latest
Lavalink.jar from the GitHub releases page.Verify the file is not corrupted by checking its size and ensuring the download completed successfully.Validate configuration
Check your
application.yml file for syntax errors. Common issues include:- Incorrect indentation (YAML requires consistent spacing)
- Missing required fields
- Invalid values
Check port availability
Ensure the port Lavalink is configured to use (default: 2333) is not already in use:If another process is using the port, either stop that process or configure Lavalink to use a different port.
If you’re still having issues, check the startup logs for specific error messages.
Docker-Specific Issues
If you’re running Lavalink in Docker:Container exits immediately
Check the container logs:- Configuration file not found or invalid
- Permission issues with mounted volumes
- Incorrect user/group ID in volume permissions
Fix volume permissions
Ensure directories have the correct permissions for the Docker user:Configuration file not found
Verify the volume mount in yourcompose.yml:
application.yml exists in the same directory as your compose.yml.
Systemd-Specific Issues
If you’re running Lavalink as a systemd service:Service fails to start
Check the service status:- Incorrect paths in the service file
- User doesn’t have permission to access Lavalink files
- Java not in the system PATH
Fix file permissions
youruser with the user specified in your service file.
Service file changes not applied
After modifying the service file, always reload systemd:Lavalink Won’t Connect to Discord
If Lavalink starts but won’t play audio or connect to Discord voice channels:Verify voice server data
Ensure you’re forwarding the
sessionId, token, and endpoint from Discord to Lavalink via the player update endpoint.These values come from Discord’s VOICE_SERVER_UPDATE and VOICE_STATE_UPDATE events.Check bot permissions
Verify your bot has the following Discord permissions:
CONNECT- Join voice channelsSPEAK- Transmit audioUSE_VAD- Use voice activity detection
Verify region compatibility
Some Discord voice regions may have connectivity issues. Try a different voice region if possible.
Enabling Detailed Logging
For troubleshooting, enable more detailed logging by adding this to yourapplication.yml:
application.yml
TRACE- Very detailed, includes all operationsDEBUG- Detailed information for debuggingINFO- General informational messages (default)WARN- Warning messagesERROR- Error messages onlyOFF- No logging
Audio Playback Issues
Audio is choppy or stuttering
- Increase memory allocation: Add more RAM with
-Xmxflag - Check CPU usage: Ensure the server isn’t overloaded
- Network latency: Test connection between Lavalink and Discord
Audio cuts out randomly
- Enable auto-reconnect: Ensure your client library handles reconnection
- Check network stability: Look for packet loss or connection drops
- Review logs: Look for exceptions or connection errors
No audio but no errors
- Verify volume: Check that volume isn’t set to 0
- Check filters: Ensure no filters are muting audio
- Test with different sources: Try a different audio source to isolate the issue
Plugin Issues
Plugins not loading
Check the plugins directory configuration inapplication.yml:
- The plugins directory exists and is writable
- Plugin JAR files are in the correct location
- Plugins are compatible with your Lavalink version
Plugin errors on startup
View startup logs for plugin-specific errors:- Plugin version incompatibility
- Missing dependencies
- Conflicting plugins
Reverse Proxy Issues
If you’re using a reverse proxy (Nginx, Apache, Caddy):WebSocket connection fails
Ensure WebSocket headers are properly forwarded. For Nginx:Connection timeouts
Increase proxy timeout values:Getting Help
If you’re still experiencing issues after trying these solutions:FAQ
Check the FAQ for common questions
Discord Support
Join the Lavalink support Discord
GitHub Discussions
Ask questions in GitHub Discussions
Report a Bug
Report bugs on the issue tracker
Providing Helpful Information
When asking for help, include:- Lavalink version: Check with
curl http://localhost:2333/version - Java version: Run
java -version - Operating system: Linux, Windows, macOS, and version
- Deployment method: Binary, Docker, or Systemd
- Relevant logs: Include error messages and stack traces
- Configuration: Share your
application.yml(remove sensitive data like passwords) - Steps to reproduce: What you did before the issue occurred