Ekran Kartlı Sunucu Satışları Başladı. İncele
Sunucu Bakımı ve İleri Yönetim

Minecraft Sunucu Logları Nasıl Okunur?

latest.log satır biçimi, INFO/WARN/ERROR ayrımı, hangi uyarılar önemsizdir, hangi satır gerçek sorunu gösterir?

  • 9 dk okuma
  • Güncelleme:
  • Yayın:
  • Batihost Teknik Ekibi

Kısaca Özet

  • Sunucu logu logs/latest.log dosyasındadır; her yeniden başlatmada sıfırlanır ve öncekiler logs/2026-08-12-1.log.gz biçiminde sıkıştırılarak arşivlenir.
  • Satır biçimi [04:18:33] [Server thread/WARN]: mesaj şeklindedir. Satırda tarih yoktur, yalnızca saat vardır; tarih dosya adında bulunur.
  • Teşhiste en değerli sütun iş parçacığı (thread) adıdır: [Server thread] ana oyun döngüsüdür, oradaki hata oyunu doğrudan etkiler.
  • Paper varsayılan olarak debug.log üretmez. O dosyayı görüyorsanız Forge/NeoForge veya özel bir log4j2 yapılandırması kullanıyorsunuz demektir.

Minecraft sunucu logu, sunucunuzda olan biten her şeyin zaman damgalı kaydıdır ve hemen her sorunun cevabı orada yazılıdır. Dosyanın adı logs/latest.log, yeri sunucu klasörünüzün içindeki logs dizinidir. Sorun çözmenin ilk adımı forumda arama yapmak değil, bu dosyayı açıp doğru satırı bulmaktır.

Log ilk bakışta okunamaz bir metin yığını gibi görünür. Oysa her satır aynı kalıba uyar ve o kalıbı bir kez öğrendiğinizde dosyayı taramak saniyeler sürer. Bu sayfada satır biçimini, seviye ayrımını, hangi uyarıların gürültü olduğunu ve gerçek sorunu hangi satırın gösterdiğini adım adım anlatıyoruz. Örnekler Paper 26.2 üzerinden verildi.

Log Dosyaları Nerede Durur?#

logs/latest.log
Aktif oturumun tam kaydı. Sunucu her başladığında sıfırlanır.
logs/2026-08-12-1.log.gz
Önceki oturumların sıkıştırılmış arşivi. Sondaki sayı o günün kaçıncı oturumu olduğunu belirtir.
crash-reports/
Yalnızca sunucu tamamen çöktüğünde dosya oluşur. Logdan ayrı bir kaynaktır.
Konsol penceresi
Canlı akış. Biçimi dosyadakinden biraz farklıdır; iş parçacığı adını göstermez.

Bir tuzağa dikkat: Paper sunucularında logs/debug.log diye bir dosya oluşmaz. Paper’ın log4j2 yapılandırmasında böyle bir appender tanımlı değildir; yalnızca latest.log ve arşivleri yazılır. İnternette “debug.log dosyasına bakın” diyen rehberlerin çoğu Forge veya NeoForge sunucularını anlatıyor; o platformlar kendi yapılandırmalarıyla ayrı bir hata ayıklama dosyası üretir.

BilgiPaper’da gerçekten ayrıntılı log istiyorsanız kendi log4j2 yapılandırma dosyanızı hazırlayıp başlatma komutuna vermeniz gerekir: java -Dlog4j.configurationFile=log4j2.xml -jar paper-26.2-112.jar --nogui. Bu, günlük kullanım için gerekli değildir; yalnızca bir geliştiriciyle sorun ayıklarken işe yarar.

Bir Log Satırının Anatomisi#

Paper’ın dosyaya yazdığı satır deseni sabittir:

[%d{HH:mm:ss}] [%t/%level]: %stripAnsi{%msg}%n%xEx{full}

Bu desen pratikte şöyle görünür:

[04:18:31] [Server thread/INFO]: Starting minecraft server version 26.2
[04:18:33] [Server thread/INFO]: Preparing level "world"
[04:18:41] [Server thread/WARN]: Kagan007 moved too quickly! 12.4,0.0,-3.1
[04:18:52] [Craft Scheduler Thread #2/ERROR]: Error executing task on Server
[04:19:07] [Server thread/INFO]: Kagan007 joined the game

Parçaları tek tek ayıralım:

ParçaÖrnekNe anlatır?
Saat[04:18:31]Saat:dakika:saniye. Tarih yoktur, tarih dosya adındadır.
İş parçacığıServer threadMesajı basan thread. Teşhiste en değerli sütun.
SeviyeWARNINFO, WARN, ERROR, FATAL, DEBUG.
Mesajmoved too quickly!Asıl içerik. Hata varsa altında yığın izi gelir.
latest.log satır biçiminin bileşenleri

Konsol penceresindeki biçim biraz farklıdır: [04:18:31 INFO]: mesaj. İş parçacığı adı görünmez. Bu yüzden ciddi bir teşhis yapacaksanız konsolu değil, dosyayı okuyun. Konsoldan komut çalıştırma tarafını merak ediyorsanız sunucu konsol komutları sayfamız ayrı bir referans sunuyor.

Seviyeler: INFO, WARN, ERROR, FATAL#

Her satırın bir seviyesi vardır ve önceliklendirmeyi bu belirler.

INFO#

Normal işleyiş. Açılış, kapanış, oyuncu giriş-çıkışı, eklenti yükleme mesajları. Sorun ararken bunları atlayın; ama hatanın hemen üstündeki INFO satırları o anda ne olduğunu söylediği için değerlidir.

WARN#

Bir şeyler ters ama sunucu çalışmaya devam ediyor. Bir kısmı gerçek sorun, bir kısmı gürültü. Ayrımı aşağıda anlatıyoruz.

ERROR#

Gerçek bir başarısızlık. Bir eklenti görevini yapamadı, bir dosya okunamadı, bir olay işlenemedi. Yığın izi genelde buraya iliştirilir.

FATAL#

Sunucu kapanıyor. Nadirdir ve ciddidir. Bu satırı gördüğünüzde altındaki yığın izinin tamamını okuyun.

İş Parçacığı Sütunu Neden Kritik?#

Seviyeden sonra bakacağınız yer thread adıdır:

  • [Server thread] — ana oyun döngüsü. Buradaki hatalar tick’i doğrudan etkiler, TPS düşürür ve sunucuyu çökertebilir. En yüksek öncelik.
  • [Craft Scheduler Thread #N] — eklentilerin asenkron görevleri. Buradaki hata genelde tek bir eklentiyi ilgilendirir, sunucu ayakta kalır.
  • [Netty Server IO #N] — ağ katmanı. Bağlantı kopmaları ve paket hataları burada görünür.
  • Eklenti adı taşıyan thread’ler — suçlu doğrudan yazılıdır, aramaya gerek kalmaz.

Açılış Logunun İlk 30 Saniyesi#

Sunucu açılışındaki ilk otuz saniye, logun en bilgi yoğun bölümüdür. Sıra hemen her zaman aynıdır ve bu sırayı bilmek, hangi aşamada takıldığınızı anında gösterir:

  1. Sürüm ve ortam bildirimi#

    Starting minecraft server version 26.2 satırı hangi sürümü çalıştırdığınızı kesin olarak söyler. Yükseltme yaptığınızı sanıp eski jar’ı başlattıysanız burada anlarsınız.

  2. Bellek ve yapılandırma satırları#

    Ayrılan heap miktarı ve okunan yapılandırma dosyaları listelenir. server.properties içinde yazım hatası varsa uyarı tam burada basılır.

  3. Eklenti yükleme turu#

    Her eklenti için bir satır düşer. “Could not load”, “Unsupported API version” ve eksik bağımlılık uyarıları bu blokta çıkar ve gözden kaçması çok kolaydır.

  4. Dünya hazırlığı#

    Preparing level "world" ve spawn chunk yükleme satırları. Bozuk region dosyaları ilk kez burada rapor edilir.

  5. Açılış tamamlandı#

    Done (12.482s)! For help, type "help" satırı sunucunun bağlantı kabul etmeye hazır olduğunu bildirir. Bu satırı görmediyseniz sunucu ayakta değildir.

Bu sıradaki bir kopukluk teşhisin yarısıdır. Örneğin “Preparing level” satırından sonra hiçbir şey yazılmıyorsa sorun dünya verisindedir; eklenti turunda takılıyorsa sorun bir jar dosyasındadır.

Hangi Satırlar Gürültü, Hangileri Gerçek Sorun?#

Yeni sunucu sahiplerinin en çok vakit kaybettiği yer burasıdır. Aşağıdaki WARN satırları çoğu sunucuda normaldir ve tek başına bir arıza göstermez:

  • “moved too quickly” ve “moved wrongly” — oyuncu hareketiyle sunucunun hesabı uyuşmadı. Lag, elytra, at zıplaması veya lifta benzer mekanizmalar bunu tetikler.
  • Köylü ve isimli yaratık ölüm bildirimleri — çiftliği olan her sunucuda logu doldurur.
  • Tek seferlik “Can’t keep up! Is the server overloaded?” satırları — yedek alırken veya chunk üretirken görülmesi olağandır. Sürekli tekrarlıyorsa gerçek bir performans sorunu vardır ve bu uyarıyı ayrıntılı inceleyen sayfaya bakmalısınız.
  • Eklentilerin kendi bilgilendirme mesajları — sürüm kontrolü, lisans bildirimi, istatistik gönderimi.

Gürültüyü kaynağında azaltmak isterseniz spigot.yml üzerinden birkaç eşiği yükseltebilirsiniz:

settings:
  moved-too-quickly-multiplier: 10.0
  moved-wrongly-threshold: 0.0625
  timeout-time: 60
  log-villager-deaths: false
  log-named-deaths: false
commands:
  log: false
DikkatBu ayarlar uyarıyı susturur, nedenini ortadan kaldırmaz. Sunucunuzda hile şüphesi varsa “moved too quickly” satırlarını kapatmadan önce anti-cheat tarafını değerlendirin. Yapılandırma dosyalarının tamamı için paper.yml, spigot.yml ve bukkit.yml optimizasyon rehberine bakabilirsiniz.

Logu Filtreleme ve Arama#

Binlerce satırlık bir dosyayı gözle taramayın. Önce hataları süzün, sonra bulduğunuz satırın çevresini okuyun.

# Sadece hata ve olumcul satirlar:
grep -E '/(ERROR|FATAL)\]' logs/latest.log

# Arsivlenmis loglarda ayni arama:
zgrep -E '/(ERROR|FATAL)\]' logs/*.log.gz

# Arsivi bastan sona okuma:
zcat logs/2026-08-12-1.log.gz | less

# Bulunan satirin oncesi ve sonrasi (en cok ise yarayan):
grep -n -B 3 -A 12 "Caused by:" logs/latest.log

# Belirli bir oyuncunun izini surme:
grep -i "Kagan007" logs/latest.log
# Windows sunucularda ayni islemler:
Select-String -Path .\logs\latest.log -Pattern "ERROR","FATAL"
Select-String -Path .\logs\latest.log -Pattern "Caused by:" -Context 3,12
Get-Content .\logs\latest.log -Tail 50 -Wait

Son komut özellikle işe yarar: -Wait (Linux’ta tail -f) logu canlı izler. Bir hatayı yeniden üretebiliyorsanız, logu canlı izlerken hatayı tetikleyin; ekranda beliren ilk satırlar tam olarak aradığınız satırlardır.

Windows’ta log okumak için
  • Notepad++Önerilen Windows.exeÜcretsiz
    İndir
  • 7-Zip.log.gz açmak için Windows / Linux.exeÜcretsiz
    İndir

Not Defteri büyük log dosyalarında donar; satır numarası ve arama özellikleri için Notepad++ kullanın.

Oyuncu Şikayetini Logdan Doğrulama#

Log yalnızca çökme araştırmak için değildir; günlük moderasyonun da temel aracıdır. Bir oyuncu “eşyalarım kayboldu” ya da “sunucudan atıldım” dediğinde yapacağınız ilk iş, olay saatini öğrenip logda o aralığa bakmaktır.

# Belirli bir saat araligini cikar (20:00 - 20:15 arasi):
grep -E '^\[20:(0[0-9]|1[0-5]):' logs/latest.log

# Oyuncunun giris-cikis kayitlari:
grep -E "Kagan007 (joined|left) the game" logs/latest.log

# Atilma nedenini bul:
grep -i -E "disconnect|kicked|lost connection" logs/latest.log

Log satırındaki saatin sunucunun saat dilimine göre yazıldığını unutmayın; oyuncunun bildirdiği saat kendi ülkesine göre olabilir. Sunucunun saatini date (Linux) veya Get-Date (Windows) ile doğrulayıp aradaki farkı hesaplayın.

Bağlantı kesilme mesajları oyuncunun ekranında İngilizce belirir ve logdaki karşılığıyla eşleştirilebilir. Örneğin oyuncu Timed out gördüyse logda o oyuncunun bağlantı kaybı satırı bulunur; You are not white-listed on this server! gördüyse whitelist kaydı eksiktir. Bu eşleştirme, “sorun bende mi sunucuda mı” sorusunu tek bakışta çözer.

Sık Görülen Log Satırları ve Anlamları#

Aşağıdaki satırların hepsi gerçek sunucu loglarından alınmış tiplerdir. Karşınıza çıkan metni buradan eşleştirip ilgili sayfaya geçebilirsiniz.

[00:00:00] [Server thread/WARN] Could not load 'plugins/MyAwesomePlugin-1.0.0.jar' in folder 'plugins'
[00:00:00] [Server thread/WARN] org.bukkit.plugin.UnknownDependencyException: Unknown/missing
dependency plugins: [Vault]. Please download and install these plugins to run 'MyAwesomePlugin'.

Bu blokta altın kural şudur: her zaman ikinci satırı okuyun. Birinci satır sadece “yüklenemedi” der, nedeni bir alttaki satır söyler. Burada eksik bağımlılık var. Diğer varyantlar için “Could not load plugin” hatası sayfasına bakın.

Log satırıAnlamıNereye bakmalı?
UnsupportedClassVersionError ... class file version 69.0Jar Java 25 ile derlenmiş, sunucu daha eski Java ile çalışıyorJava sürüm hatası
NoSuchMethodError / NoClassDefFoundError26.1 unobfuscation sonrası yeniden derlenmemiş eklentiSürüm yükseltme
Unsupported API version 1.21Eklentinin api-version değeri sunucunun desteklediğinden yeniEklentiyi güncelleyin
Region file ... has invalid sector at indexBozuk region (.mca) dosyasıBozuk dünya kurtarma
Can’t keep up! Is the server overloaded?Tick süresi aşıldı; sürekli tekrarlıyorsa performans sorunuTPS ve donanım kontrolü
java.lang.OutOfMemoryError: Java heap spaceHeap doldu; sunucu bellek yetersizliğinden düşüyorOut of Memory hatası
Legacy plugin ... does not specify an api-versionÇok eski eklenti; çalışabilir ama risklidirEklentiyi değiştirin
Sunucu logunda sık görülen satırlar ve karşılıkları

Yığın İzi (Stack Trace) Nasıl Okunur?#

ERROR satırlarının altına eklenen uzun blok yığın izidir. İçinde kaybolmamak için tek kural yeter: asıl neden en alttaki Caused by: bloğundadır, ilk satırda değil. Yukarıdaki satırlar sonucu, aşağıdakiler sebebi anlatır.

Yığın izinde net.minecraft ve org.bukkit dışında bir paket adı görüyorsanız — örneğin com.ornek.eklenti.listener.JoinListener.onJoin — suçlu bulunmuş demektir; satır numarası bile yazılıdır. Yalnızca Minecraft paketleri görünüyorsa nedeni bellek, disk ya da bozuk dünya verisinde arayın.

Sunucu tamamen çöktüyse logun yanında crash-reports/ klasöründe ayrı bir dosya da oluşur. İkisini birlikte okumak gerekir; ayrıntılı yöntem için crash report okuma rehberimize geçin.

Log Yönetimi ve Disk Alanı#

Aktif bir sunucuda logs/ klasörü aylar içinde yüzlerce arşiv biriktirir. Bu dosyalar küçüktür ama sayıları arttıkça yedek arşivlerinizi şişirir ve dosya yöneticisini yavaşlatır.

# 30 gunden eski log arsivlerini sil:
find logs/ -name "*.log.gz" -mtime +30 -delete

# Klasorun toplam boyutunu gor:
du -sh logs/
İpucuAktif latest.log dosyasını sunucu çalışırken silmeyin. Linux’ta dosya silinse bile süreç aynı tanıtıcıya yazmaya devam eder; disk alanı sunucu yeniden başlatılana kadar boşalmaz. Yer açmak istiyorsanız yalnızca .log.gz arşivlerini temizleyin.

Destek talebi açarken logun tamamını yapıştırmak yerine ilgili 30–50 satırı ve varsa yığın izinin tamamını gönderin. Web panelinden çalışıyorsanız log dosyasını panel dosya yöneticisi üzerinden indirip inceleyebilirsiniz.

Özetle#

Minecraft sunucu logu okumak öğrenilmesi yarım saat süren, sonra her gün işinize yarayan bir beceridir. Dört şeyi aklınızda tutun: dosya logs/latest.log içindedir, satırda tarih değil yalnızca saat vardır, iş parçacığı sütunu hatanın ne kadar ciddi olduğunu söyler ve yığın izinde asıl neden en alttaki Caused by: satırındadır.

Paper’da debug.log aramayın, o dosya oluşmaz. Gürültüyü spigot.yml eşikleriyle azaltabilirsiniz ama önce neyi susturduğunuzu bilin. Çözemediğiniz bir hata kalırsa Minecraft sunucu hataları ve çözümleri sayfası en sık görülen senaryoları tek tek ele alıyor; performans şüphesi varsa spark ile profil çıkarmak logun ötesine geçmenizi sağlar.

Sıkça Sorulan Sorular#

Minecraft sunucu logu nerede bulunur?

Sunucu klasörünüzdeki logs/ dizininde. Aktif oturumun kaydı logs/latest.log dosyasındadır ve sunucu her başladığında sıfırlanır. Önceki oturumlar logs/2026-08-12-1.log.gz biçiminde tarihli ve sıkıştırılmış olarak aynı klasörde saklanır. Web paneli kullanıyorsanız dosya yöneticisinden aynı klasöre ulaşabilirsiniz.

latest.log her başlatmada siliniyor, eski kayda nasıl bakarım?

Silinmez, arşivlenir. Sunucu kapanırken önceki latest.log dosyası tarihli bir .log.gz arşivine dönüştürülür. Linux’ta zcat logs/2026-08-12-1.log.gz | less komutuyla doğrudan okuyabilir, Windows’ta 7-Zip ile açabilirsiniz. Aynı gün içindeki birden fazla oturum sondaki sayıyla ayrılır.

debug.log dosyası nedir, bende neden yok?

Paper varsayılan olarak debug.log üretmez; log4j2 yapılandırmasında böyle bir appender yoktur. Yalnızca latest.log ve arşivleri yazılır. debug.log gördüyseniz Forge veya NeoForge sunucusu çalıştırıyorsunuzdur; bu platformlar kendi log4j2 yapılandırmalarıyla ayrı bir hata ayıklama dosyası oluşturur.

WARN satırlarının hepsi sorun mu?

Hayır. WARN “bir şeyler ters ama ölümcül değil” demektir. “moved too quickly”, “moved wrongly” ve köylü ölüm bildirimleri çoğu sunucuda normal gürültüdür. Gerçek sorunu ERROR ve FATAL satırları ile yığın izi (stack trace) içeren bloklar gösterir. Önce onları süzün, sonra WARN satırlarına bakın.

Log satırındaki Server thread ne anlama geliyor?

Mesajı basan iş parçacığının adıdır. [Server thread] ana oyun döngüsüdür; buradaki hatalar tick’i etkiler ve sunucuyu çökertebilir. [Craft Scheduler Thread #3] gibi asenkron iş parçacıklarındaki hatalar genelde tek bir eklentiyi ilgilendirir. Eklenti adı taşıyan iş parçacıkları doğrudan suçluyu gösterir.

Logda hangi eklentinin hata verdiğini nasıl bulurum?

Yığın izinde net.minecraft ve org.bukkit dışındaki paket adlarını arayın. com.ornek.eklenti.Listener.onJoin gibi bir satır eklentiyi ve metodunu birlikte söyler. Hatanın hemen üstündeki INFO satırları da o anda ne olduğunu gösterdiği için değerlidir; sadece hata satırını değil çevresini de okuyun.

Log dosyası çok büyüdü, temizleyebilir miyim?

Evet. logs/ klasöründeki eski .log.gz arşivlerini silmek sunucuyu etkilemez. Aktif latest.log dosyasını sunucu çalışırken silmeyin; Linux’ta dosya silinse de süreç yazmaya devam eder ve disk boşalmaz. 30 günden eski arşivleri düzenli silen bir görev tanımlamak en pratik çözümdür.

Sunucu Bakımı ve İleri Yönetim — Tüm Rehberler#

  1. Minecraft Sunucusu Yeni Sürüme Nasıl Yükseltilir?
  2. Minecraft Sunucu Logları Nasıl Okunur?
  3. Minecraft’ta Chunk Ön Üretimi (Pregeneration)
  4. Minecraft Dünya Dosyasını Küçültme (Trim)
  5. Minecraft Sunucusunda Dünya Nasıl Sıfırlanır?
  6. Minecraft Sunucusuna MySQL Nasıl Bağlanır?
  7. Minecraft RCON Kurulumu ve Güvenli Kullanımı
  8. Minecraft Sunucusunda Oyuncu İstatistikleri Nasıl Takip Edilir?

Bu rehber Batihost teknik ekibi tarafından hazırlanmış ve tarihinde güncellenmiştir. Eksik veya hatalı bulduğunuz bir bilgi varsa bize bildirin.

Başa dön