Mineuniverse
Log in Register
Mods

Tick Watchdog

Configurable watchdog that captures thread dumps when server is suffering from TPS lag
by _haise0_
Download Claim this project
350 downloads
0 likes
Updated Jul 6, 2026
0 hypes
Performance Server Utility Utility & QoL

Tick Watchdog

Summary

I was tired of the "server running behind" messages not offering any other useful information. This mod provides said useful information by dumping it into a text file and printing a notification in console.


What Tick Watchdog Does

Every server tick is timed, and when a tick takes longer than your configured threshold:

  • A thread dump is written to logs/tickwatchdog/dump-YYYY-MM-DD_HH-mm-ss.txt
  • The server thread is shown first, with mod package annotations to help identify culprits
  • Lock and monitor info is included
  • Deadlock detection runs automatically
  • Rolling TPS averages(1m / 5m / 15m) are logged alongside the dump

A configurable cooldown prevents log spam during sustained lag events.


Reading a Dump

Open the dump file and look at the SERVER THREAD section first. Stack frames are annotated with their origin:

>>> SERVER THREAD (RUNNABLE)
    at net.minecraft.world.level.chunk.ChunkSource.tick(...)  [Minecraft]
    at somemod.world.TickHandler.onTick(...)  [Mod? (somemod.*)]

If a mod class appears near the top of the stack, it's likely responsible for the spike. The 1m vs 15m TPS gap is also useful as a large difference points to something event-triggered rather than a steady per-tick cost


Configuration

Created automatically at config/tickwatchdog.txt on first launch.

Default configuration is as follows:

# Trigger a thread dump if a tick takes longer than this (ms)
# Normal tick = 50ms. 100ms = ~10 TPS or worse.
threshold_ms=100

# Minimum seconds between dumps (prevents log spam during sustained lag)
cooldown_seconds=30

# Log rolling TPS averages to console periodically
log_tps=true

# How often to log TPS (seconds)
tps_log_interval_seconds=60
tickwatchdog-1.0.0.jar
MC 1.21.1, NeoForge, Server
Release 2026-03-03 Get

More from _haise0_

Sysout Filter
93
Contraband
526
PackReport
51

You Might Also Like

APTweaks: Items (11.x Classic)
Item clustering (fallen blocks, experience orbs, ...) and garbage cleanup.
9,884,514
VanillaDeathChest (Fabric)
Places containers when players die that contain their items.
994,762
Styled Nicknames
Simple, but configurable nicknaming mod allowing your server's players (and admins) to change their nickname with full formatting support
989,499
Tiquality
Make server lag the problem of the source player.
99,489
Blame (Fabric)
Those gosh darn crashlogs not saying which worldgen feature is crashing!
99,012
Weathering with You
Forecast Minecraft weather with a radar or a hat!
98,579