Short answer
Find the moment the problem started and scroll up to the first ERROR or WARN; everything after it is usually a consequence. Learn the line anatomy once, and the six recurring messages below cover most incidents you will meet as an administrator.
The log is the most complete record your server keeps and the least readable document a new administrator owns. A startup log is thousands of lines of joins, plugin announcements and saved chunks, with the one line that matters buried somewhere in the middle.
This guide is a reading method, not a list of errors: where the log lives, what each part of a line means, how to work backwards from a symptom to its first error, and how to hand an excerpt to someone else without the guesswork round trips.
Before you start
- Access to the console or to
logs/latest.log - One real problem to practise on
- The approximate time it started
1. Open the log file, not the console
The console streams and scrolls, so evidence leaves while you read it. The file keeps everything. latest.log holds the current session, and the previous sessions are archived alongside it, gzipped, with the timestamp in the name. Find the file for the session in which the problem happened.
On PufferHost, the console and the log file show the same text, and the panel keeps previous sessions. Either is fine, as long as you can scroll back to the moment of the failure.
logs/
latest.log
2026-10-15-1.log.gz
2026-10-14-1.log.gz2. Learn the anatomy of a line
Every line has the same skeleton. The timestamp says when. The bracketed words say how serious it is and which thread wrote it. The logger name says who wrote it, which for plugins is the plugin. Then the message.
Once you can take a line apart at a glance, a log stops being a wall and becomes a table you can scan for the moment things changed.
[12:31:04 ERROR]: [EconomyPlugin] Could not save player data: java.io.IOException
java.io.IOException: Disk full
at com.example.economy.Data.save(Data.java:88)3. Search for the severity, not for the word you expect
Search for ERROR to find what broke, and WARN for the warning that preceded it. Ignore INFO: joins, leaves, saves and chunk loads are the server working normally, and they make up most of the file. FATAL is rare and precedes shutdown.
Red does not mean relevant. A plugin can log an ERROR every boot for months without anyone noticing, and the plugin may still work. What matters is timing: does the line appear at the moment the problem started, and does the behaviour actually break?
ERROR: something failed. Act on it if it lines up with the symptom.WARN: a problem is coming, not yet here. Read it before your next restart.INFO: normal life. Use it only to confirm a player joined or a chunk saved.
4. Work backwards to the first error
Go to the moment of the failure and scroll up. The first error is the cause; everything after it is fallout. A plugin that fails to enable produces dozens of errors from other plugins that depended on it, and fixing the last one wastes the evening.
Take the first error and about ten lines around it as your excerpt. That is what you will read, paste into a search engine, or send to support.
5. Recognise the six patterns
Most incidents are one of these six messages with different words around them. Learn the shape and you will know which chapter to open.
Could not load pluginorInvalid plugin.yml: the JAR is corrupt, or it is not a plugin. Download it again.NoSuchMethodErrororNoClassDefFoundErrorduring startup: a plugin built for a different Minecraft version, or it is missing another plugin. Update it to a build for the server's version.OutOfMemoryErrororGC overhead limit exceeded: the heap ran out. Fix memory.- "Failed to bind to port": another process already holds 25565, most often a second copy of the server. Stop every instance, then start one.
Caused by: java.io.IOException: Disk full: the disk is full. Free space; on PufferHost, raise the storage limit for the server.UUID of player ... is this, possibly an attempt to impersonate?: an authentication attempt from a player whose name changed since they last joined. Usually harmless, but read the line that follows it.
Good to know
- Logs contain player IP addresses and chat. Treat other people's data as you would your own, and trim private lines before posting anything publicly.
- Keep one known-good startup log. Diffing a broken boot against a healthy one shows the new errors immediately, and "new" is almost always the answer.
- Verbose logging is for one question at a time. Turn it on, watch, turn it off: a chatty log fills space and buries the line you needed.
- Timestamps are in the server's local time. When matching a report to an event with players in a different timezone, convert before you accuse anyone of breaking something at the wrong time.
Common questions
Where are the Minecraft server logs?
In the logs folder next to the server JAR: latest.log for the running session, with previous sessions archived alongside it. The console shows the same text live, and the panel keeps the earlier sessions.
My log is full of red errors and the server works fine. Do I need to worry?
Probably not. Some plugins log non-fatal errors on every startup and have for years. Act on the lines that line up with when the behaviour changed; note the rest and move on.
What does "Failed to bind to port" mean?
Something else already holds 25565, usually a second server process that survived a crash or a stop. Stop every instance fully, check that nothing is listening on the port, and start exactly one server.
How much of the log should I send when asking for help?
The first error with about ten lines around it, the exact versions, what changed recently, and what you already tried, pasted as text. Screenshots of a console lose the exact wording that a search needs.
Can I delete old logs?
Yes. Compressed sessions older than a month are rarely needed. Keep the ones around the time of a problem, and keep at least one known-good startup log as the baseline for comparison.
Sources
Official documentation this guide was checked against.
Rather not run this on your own machine? PufferHost gives every player a free Minecraft server with 3 GB of RAM and 10 slots. Create a free server.