New: see how many SpigotMC listing viewers end up running your plugin →
Free plan and up

Error tracking for Minecraft plugins

See every exception your plugin throws on every server, grouped into issues, before server owners give up and uninstall it.

The problem

When your plugin throws on a server, the console shows a stack trace and the server keeps running. The owner might send it to you; usually they don't. You find out from a one-star review, weeks later, with no version and half a stack trace.

How it works

  1. Add the SDK and call PluginAnalytics.start(this, key) in onEnable.
  2. Every exception that goes through your plugin's code is captured on the server: event handlers, commands, tasks and anything you log with an exception.
  3. Player names, IP addresses and UUIDs are replaced before anything is sent, and errors arrive in your dashboard grouped by stack trace.
try {
    database.save(arena);
} catch (SQLException e) {
    analytics.captureError(e); // errors you catch yourself, too
}

What you see

  • Issues grouped by cause, with how many times and on how many servers
  • The plugin versions where each issue was first and last seen
  • Full stack traces, readable even for ProGuard-obfuscated plugins
  • Regressions: an issue you resolved that comes back in a newer version notifies you
  • Your plugin's own log lines from every server, grouped by message (Pro)

Questions

Do I have to change my code?

No. Exceptions that reach the server's log through your plugin are captured automatically. captureError() is only for errors you catch and swallow yourself.

Is any player data sent?

No. Player names, UUIDs and IP addresses are replaced in messages and stack traces on the server, before anything is sent.

Does it work with obfuscated plugins?

Yes. Upload the ProGuard mapping of each version and stack traces show your real class and method names.

How is it different from Sentry?

Sentry is built for web apps: you'd scrub player data, handle Bukkit's threads and watch your event quota yourself. This is built for plugins, with versions, platforms and regressions per release.

Try it on your plugin

Free for your first plugin. One line in onEnable.