New Relic Reporting
This Bukkit plugin allows people with a free or paid New Relic account to send performance data about their Minecraft server and details about core events that occur on their server to New Relic's platform for analysis and graphing.
Installation
- Create a New Relic account, if you don't have one.
- Download the latest New Relic Java Agent for manual installs from New Relic's Web Site.
- Unzip the archive in the root directory of your minecraft server. The same location as your Craftbukkit jar.
- Add "-javaagent:newrelic/newrelic.jar" to the java launch command that you use for your server.
-
Add the newrelic-api.jar to your launch classpath with something like "-cp craftbukkit.jar:newrelic/newrelic-api.jar"
- Note: that if you were using "-jar craftbukkit.jar" to launch craftbukkit, you will want to remove this and replace it with "-cp craftbukkit.jar:newrelic/newrelic-api.jar org.bukkit.craftbukkit.Main"
- We don't include this as you might already be using New Relic, and we must ensure the newrelic jar and the newrelic-api jar are the same version.
- Edit newrelic/newrelic.yml and at a minimum ensure that your licensekey and appname are set appropriately.
What can I do with this data?
- Track the availability and performance of your Minecraft server and the underlying JVM. Performance data for the JVM is automatically collected by the New Relic jar. Things like: Thread Count, Heap Memory Usage, Garbage Collection CPU time, Class count, etc.
- Create charts tracking things, like blocks placed by type, player deaths by cause, etc.
- To see examples of the sorts of charts that you can create and see, take a look at this blog I wrote for New Relic as a Proof-of-Concept about this work.
Features
- Enable and disable reporting
- Control which events you want to submit data about.
Commands
- /nrenable - enable reporting to New Relic
- /nrdisable - disable reporting to New Relic
- /nrcheck - check for an updated New Relic plugin
- /nrupdate - download and install an updated New Relic plugin
Permissions
-
newrelic.admin: false
- Allows you to enable or disable reporting, and check for updates.
Configuration
enabled: true updates: apply: true progress: true track: entity: death: true creature: spawn: true player: death: true join: true kick: true quit: true respawn: true teleport: true block: place: true break: true server: command: true remotecommand: true chunk: load: true unload: true
Acknowledgements
-
This plugin is the results of a lot of things, including:
- Being the father of 3 children, 2 of which play Minecraft.
- Working at New Relic
- The Reddit admincraft community's encouragement to create a real plugin.
- StromCoreFilms great Bukkit Tutorials on YouTube
Notes
- Comments can be posted on bukkit.org
- Source code is on Github
Comments