LagMeter
Lets you check the server lag, in ticks-per-second.
Bukkit version does not matter for this plugin.
Description
A lot of plugins tell you that something happens "every X seconds, depending on lag." That's because when the server is overworked, there are less than 20 ticks per second. This plugin will measure the number of ticks per second, and output it on your screen as a "Lag Meter." The plugin can also output the amount of memory free, alert those with a specific permission node when the ticks per second or free RAM goes down too far, and even measure the server's ping to google.com.Tutorials and Reviews
LagMeter 1.9.3: Review By: UltiByteLagMeter 0.1: Review By: BrandonHopkins
LagMeter 0.1: Review By: ValBGaming
Some of them are a little out of date, but you get the idea.
Download
CI/build (Jenkins) serverYou can always pick up the latest compiled version of LagMeter on my CI server. Note that BukkitDev doesn't warrant the safety of these builds, etc, but it's all pulled from GitHub anyways, so you could compile it yourself or look at the commits. Lagmeter is more stable than Lagmeter-bleed.
Jenkins: latest builds
Stable
Version: 1.17.0
Build date: 3 March 2016
BukkitDev Download: Latest Build
Javadocs
Version: 1.15.0
Build date: 23 November 2013
Dropbox Download (zipped; standard doclet)
Source Code
GitHub: TheLunarFrog's SourceGitHub: Original Source by DemmyDemon (v.0.4)
Bugs and Feature Requests
Bug reports & Feature RequestsFeatures
- Simple, minimum-fuzz installation
- Configurable without drowning you in options
- Checks the server performance
- Ability to check the ping between the server and Google.com
- When someone says "GAH! LAG!", you can /lag, and tell them "Dude, it's your computer sucking."
- Supports Bukkit's built-in permissions system, for example via [the official plugin](http://forums.bukkit.org/threads/permissionsbukkit-official-default-groups-plugin-1000.26785/)
- Support for the "old-school" Permissions, as well as PermissionsEX
- Logging of the lag, if you want it.
- Logging of players online, with the above, if wanted.
- Suggestions?
Change Log
Change LogCommands & Permissions
Commands & PermissionsConfiguration Explanation
ConfigurationExample output:
[####################] 20.0 TPS
...or if your server isn't doing so hot...
[##########__________] 10.0 TPS
@TheLunarFrog
OMG, really mine attention wasnt to troll its just not thing i do,. It did happened. Several times. Only thing i could say thats possible it happened due remote missed actual key-press packet. Im managing server with TeamViever and it could be that did it itself. Connection bad probably.
Im so sorry for misled you, really wasnt mine intention to do that.
Sorry im really feeling bad.
@ha11oga11o
Please don't waste my time. It is severely obvious that this is a troll, as your pastie shows all the exact same times, except for the first command (1 second earlier than all the blank commands). Next time, at least try to troll correctly.
You aren't even typing lm... The first time where it succeeded, you entered "lm" and pressed enter. The following times, you just pressed enter. The line that has a greater than symbol on it (>) is your input. All except the first are blank.
When i do /lm on console i got this:
http://pastie.org/7452550
Well i have it in 80% of times.
Cheers!
@NovaViper
It means you must be running Java 7 or I must create the plugin with Java 6. The plugin is already being retrograded to Java 6 due to many, many confusions about this; so, when Bukkit releases a 1.5.1 recommended build, you will be able to use Java 6 with this plugin. Until then, you must use Java 7.
Im getting this error as it loads
16:43:10 [SEVERE] Could not load 'plugins\LagMeter.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError : main/java/com/webkonsept/minecraft/lagmeter/LagMeter : Unsupported major.minor version 51.0 at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j ava:184) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager. java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager .java:230) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.loadPlugins(CraftServer.ja va:239) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.<init>(CraftServer.java:21 7) at net.minecraft.server.v1_5_R2.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_5_R2.DedicatedPlayerList.<init>(SourceFile:11 ) at net.minecraft.server.v1_5_R2.DedicatedServer.init(DedicatedServer.jav a:105) at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java :379) at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:5 73) Caused by: java.lang.UnsupportedClassVersionError: main/java/com/webkonsept/mine craft/lagmeter/LagMeter : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader .java:80) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader. java:53) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j ava:173) ... 9 more
What does this mean?
@harryjamesuk
Thanks. Added them.
Hello!
You added the new ping permission to the latest version but forgot to put it in Command & Permissions up there - Just letting you know ;)
@CalledHarry
Anything you get that error for just means it's made with a later Java version than you're running - for example, my plugin is created with Java 7, and you're likely running Java 6.
The only fixes are:
This applies to all Java programs, not just Bukkit plugins.
I have already decided to retrograde LagMeter and FrogAnnounce, starting with FA-2.2.1 and LagMeter 1.13.1 (unreleased, will be released with Bukkit's first 1.5.1 recommended build).
Hey, I am getting a nasty error. I seemed to be getting this on quite a few plugins. Like TabAPI and HealthBar. I've tried removing all my other plugins, but I still get the error. Please help :D
http://pastie.org/7335738
I have 1.5.1 R01 Beta Release btw.
@TheLunarFrog
Thank you :)
Edit: YEEEHA!! Collor is back :) Awesome!!
@andrewkm
Fixed in next version.
@ha11oga11o
Configuration for this will be added for next version.
Both of these changes have been pushed to github.
Latest release 1.13.0 has the following issue on server stop: http://pastie.org/7327101
hello,
many thnx for new version and new features, but I and i believe many of us xould have problem with feature:
Added /ping and /lping commands, where the server will ping google.com
Thing is that i have strong firewall which doesnt alow ping outside machine at all until I manually white-list that IP. Can you please create nod in config which IP or domain will be pinged when you type /ping ??
Please that will be really help, because in this environment of mine i have no use of /ping command.
You could set it ping 8.8.8.8 which is Google DNS if i remember correctly?
Thnx
LagMeter 1.13.0 (built with CB-1.5.1-R0.1) is awaiting approval. To those of you who would like to read the changes before the version is approved, they are available on the changelog page.
Well, to those of you who asked me to add ping support to actually ping (NOT just return "Pong!" or something of that sort) a location, I've added that in 1.13. Finishing up testing now.
Unfortunately, due to constraints of Bukkit's API, you can only ping google.com, because there is no way for me to get the player's IP after they are logged in. Could create a login listener to grab this and store it in a map, but that would get messy and would be a memory hog.
Could also allow users to specify a ping location instead of just google.com (not implemented). Let me know what you guys think.
Permission nodes will be lagmeter.command.ping (for basic command functionality, allowing for 1 packet) and lagmeter.command.ping.unlimited (not really unlimited, as the ping function becomes exponentially more server intensive as you add more and more hops, but allows you to specify the amount of hops to perform, giving you a better idea of the average ping). The hard cap of ping hops is 10.
@andrewkm
Not only can I not reproduce that error, but you're using both a dev build of Bukkit, which I don't support, but you're also using an unreleased version of LagMeter. I dunno how you got that version of LagMeter, but 1.12 works fine. If you modified my code which is on GitHub to get that, then it's your problem - not mine. I don't support modified versions. If you got it off my Jenkins before it went down (back when nothing was different from 1.12), I would suggest switching to a release, as I can't provide support for those, as you can't tell me what jenkins build it was.
Latest CB breaks this during stop command: http://pastie.org/7267719 Commit: https://github.com/Bukkit/CraftBukkit/commit/052e955ed71a30516a5e9cfd76649daaba4ae7d8
@Crafter6432
Maybe you should read the configuration documentation. There's a way to remove it.
I wont want, that my userers can see loaded Chunks and the other stuff, they should only see TPS + RAM can you remove Chucks etc. from /lag or add a option for that?
@TaxConsumption
I don't update until a beta comes out. It works fine as is with 1.5/1.5.1.