LogBlock
Works 100% with 1.7 / 1.8
The best block logging and rollback solution for the savvy server administrator.
LogBlock is the best block logging plugin for Bukkit server. Not only is it awesomely powerful, it’s blazing fast! Everything is logged into a MySQL database, allowing developers to hook in and produce things such as player stats and even administrative panels. Every loggable action can be logged with LogBlock: WorldEdit, leave decay, fire, sign changes, explosions, chest changes, player and animal deaths, chat, commands and more!
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
LogBlock will very rarely break between Minecraft / Bukkit updates, however if you find it does, please be sure to try a development build from above, as we generally test new releases there until deemed stable.
What is LogBlock?
LogBlock is a tool which allows you to keep track of almost everything on your server, while also giving you the ability to rollback (revert) or redo changes made by users and natural occurrences such as liquid flow or leaf decay. Additionally, LogBlock is able to log and rollback chest contents, sign text and more! LogBlock was originally created by bootswithdefer for HMod, ported to Bukkit by DiddiZ and is now actively maintained by md_5, ammar2 and the community of developers on Bukkit. We accept pull requests on GitHub frequently which means that community developers can add features they wish to see quicker than LogBlock developers are able to from tickets. All database actions are run not only in their own threads, but are queued into a consumer to minimize lag on the main thread. This is great for larger servers! All optional features (not dependencies below) are enabled and disabled from within the config file allowing complete control over what is logged thus ensuring database size is kept to a minimum.
Notices
Most virtual chest plugins are not compatible with LogBlock. Because they do not set the player who is opening the “chest”, LogBlock can’t do what it’s meant to be able to do, thus, making errors in your console. Please report these issues to the fake-chest plugin developer, NOT LogBlock developers.
Issues are read more frequently on the GitHub Issues page as compared to the comments below. When updating to LB1.57, if you already have a large database and have changed your columns to MEDIUMINT, INT or LARGEINT, you do not need the updater to fix this for you automatically. To stop this behaviour, simply change “version” in the configuration to ‘1.57’.
If you are experiencing an error such as this please read the FAQ for answers.
If you're receiving errors regarding players from the consumer such as "[Consumer] Failed to add player <playername>" then change all `playerid` columns to MEDIUMINT or INT in each table that contains them. This may take a long time if you have a lot of rows.
Optional Dependencies
- WorldEdit (Recommended)
- Permissions plugin
- LogBlock Questioner
Need help?
Found a bug or an issue? Please report it (and attach code if you know how to squash it) on our ticket manager.
Just need help in general or have an urgent, more private bug? Join us on IRC at irc.esper.net #LogBlock and ping a +o or +v for faster help. Webchat is available here if you don't have a client, or prefer to use it.
As always, check if your question is on the FAQ before asking!
Installation
More Information
- FAQ (read me first!)
- Command reference
- Configuration
- Helpful Commands
- MySQL Connection Problems
- MySQL Schema
- SQL Queries
- Parameters
Are you a Developer?
If you wish to contribute to the LogBlock project, head on over to the GitHub page, fork the project and submit your pull request(s).
If you wish to develop a plugin that interacts with LogBlock in some way, read up on the API here. Support for API and more can be found in the IRC channel, which is listed above.
Developer builds can be found here. (These builds have not been approved by the BukkitDev staff. Use them at your own risk.)
Still need help? Join us on IRC at irc.esper.net #LogBlock and ping a +o or +v for faster help.
Please do not post comments requesting support. Report bugs here or, alternatively, talk to a real person. Commenting below is a surefire way to not receive help.
-
View User Profile
-
Send Message
Posted Apr 23, 2013Since you can add in custom id blocks is there a way to add in custom mobs so we log golems,ogres etc from mo creatures the same way we would with creepers this way when someone triggers it, it comes off as if they did the damage?
-
View User Profile
-
Send Message
Posted Apr 23, 2013Is it normal that we Owners, who have Operator to give the rest of the power, are, if LB is conffed to ask on ban whether to roll too, the only ones who're actually auto-asked whether to roll ? Only our Admins (not Mods nor TrialMods) in addition to Owners can use LB to roll ...
I mean, I can't find any perms to assign to Admins so that they'd be asked too, and we don't wanna give Admins Op cuz they'd get almost exactly absolute power, although not even Owners have absolute power; Op is given for Owners only since we work on the computer and the server software.
-
View User Profile
-
Send Message
Posted Apr 22, 2013@deancohen1994
You may have a plugin conflict. Lots of other plugins use the same tools. Use the toolblock instead of the tool. I never have a problem with it.
-
View User Profile
-
Send Message
Posted Apr 22, 2013I'm looking to move hosts and I don't want to lose my LogBlock database. I'm not a DB guy, but I'm looking for an idiot-proof way to backup my MySQL-based LogBlock DB and move it to the new host. Can anyone give me a kick in the right direction?
-
View User Profile
-
Send Message
Posted Apr 21, 2013okay ive had a greif and when i right click with the tool (set to wooden pick in my case nothing happens) i did /lb tool on still nothing.. any ideas?
-
View User Profile
-
Send Message
Posted Apr 21, 2013@xDeeKay
It was never needed.... LogBlockQuestioner just lets you confirm before applying a rollback, redo.. etc
-
View User Profile
-
Send Message
Posted Apr 21, 2013Hello! I'm getting this error spammed in my console (several days ago). Using LogBlock 1.70, Java7, and last craftbukkit. I have tried to refresh database, plugin - and error still appear. 2013-04-20 22:29:18 [INFO] [Consumer] Queue overloaded. Size: 49988 2013-04-20 22:29:18 [SEVERE] [Consumer] SQL exception on insertion: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '68844' for key 1 at sun.reflect.GeneratedConstructorAccessor54.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) at com.mysql.jdbc.Util.getInstance(Util.java:382) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1039) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2407) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2325) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2310) at de.diddiz.LogBlock.Consumer$BlockRow.executeStatements(Consumer.java:474) at de.diddiz.LogBlock.Consumer.run(Consumer.java:294) at java.util.TimerThread.mainLoop(Unknown Source) at java.util.TimerThread.run(Unknown Source)
-
View User Profile
-
Send Message
Posted Apr 19, 2013@The_Loyal_One
THANKS! That was what I'm looking for :)
-
View User Profile
-
Send Message
Posted Apr 19, 2013Is LogBlockQuestioner even needed to use this plugin anymore?
-
View User Profile
-
Send Message
Posted Apr 19, 2013@GoF3
You can find it under your worldname.yml file in the Logblock folder. Most likely it will be called world.yml
-
View User Profile
-
Send Message
Posted Apr 19, 2013@Jojodmo2010
I believe it's because your using an old version, 1.6.0.
Try downloading the most recent dev build: http://ci.md-5.net/job/LogBlock/200/artifact/target/LogBlock.jar
-
View User Profile
-
Send Message
Posted Apr 17, 2013I'm getting this error spammed in my console, I'm on Java version 7 update 21, and the most recent version of logblock:
[SEVERE] Could not pass event EntityChangeBlockEvent to LogBlock v1.60 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at org.bukkit.craftbukkit.v1_5_R2.event.CraftEventFactory.callEntityChangeBlockEvent(CraftEventFactory.java:464) at org.bukkit.craftbukkit.v1_5_R2.event.CraftEventFactory.callEntityChangeBlockEvent(CraftEventFactory.java:459) at net.minecraft.server.v1_5_R2.EntityFallingBlock.l_(EntityFallingBlock.java:107) at net.minecraft.server.v1_5_R2.World.entityJoinedWorld(World.java:1356) at net.minecraft.server.v1_5_R2.WorldServer.entityJoinedWorld(WorldServer.java:597) at net.minecraft.server.v1_5_R2.World.playerJoinedWorld(World.java:1337) at net.minecraft.server.v1_5_R2.World.tickEntities(World.java:1225) at net.minecraft.server.v1_5_R2.WorldServer.tickEntities(WorldServer.java:463) at net.minecraft.server.v1_5_R2.MinecraftServer.r(MinecraftServer.java:560) at net.minecraft.server.v1_5_R2.DedicatedServer.r(DedicatedServer.java:225) at net.minecraft.server.v1_5_R2.MinecraftServer.q(MinecraftServer.java:474) at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java:407) at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.NoSuchMethodError: org.bukkit.event.entity.EntityChangeBlockEvent.getEntity()Lorg/bukkit/entity/LivingEntity; at de.diddiz.LogBlock.listeners.EndermenLogging.onEntityChangeBlock(EndermenLogging.java:19) at sun.reflect.GeneratedMethodAccessor340.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 16 more
-
View User Profile
-
Send Message
Posted Apr 16, 2013@SnowPatch
I also have a one.com host. One.com databases are not public. They can only be modified by the website it self nothing outside of it...
Gjosse
-
View User Profile
-
Send Message
Posted Apr 16, 2013In Update 1.70, it says "WorldEdit logging" but how? Do I need to create a new config? Or where is the enable-thingy? I just don't find it.. :(
-
View User Profile
-
Send Message
Posted Apr 16, 2013I have a MySQL database hosted by one.com, and no matter what i do, LogBlock won't connect to the database... I have alot og php codes that can easily interact with the database, but for some reason, the plugin just can't connect to the database... Any ideas?
-
View User Profile
-
Send Message
Posted Apr 14, 2013@yanniclord
do u do /lb tool ? cause it works for me :) one thing it does work is if i put the database on a website mysql and do /rollback like /lb rollback player creeper since 1m or so it says queue size : some numner but then it says 0 entries found cancel rollback but if i do /lb player creeper it will show me all the block it destroyed so it doesnt work but then when i bring the database to my pc where mc server is the WAMP folder i do the same thing and it will WORK the rollback so maybe im missing something XD thanks for the HELP if anyone has an idea :)
-
View User Profile
-
Send Message
Posted Apr 14, 2013@ViscousSummer88
when i do /lb it shows me commands and everything. I can rollback everything. Just not use the tool.
-
View User Profile
-
Send Message
Posted Apr 14, 2013@ronaldsss Make sure you're using the correct parameters /lb rb player <playername> time <time> area <area>... more can be found here: https://github.com/LogBlock/LogBlock/wiki/Params
@SnowPatch There should not really be any reasons for LogBlock to not connect to a remote SQL Server. Ensure you're using all the correct mysql info to connect to. Also, what errors do you receive in your server logs... if you're 100% sure there is no error in the config.yml.
@yanniclord In the case of this... when you do /lb does it do anything? If not then their is an error somewhere, which will mean you will have an error upon start-up, please provide that.
-
View User Profile
-
Send Message
Posted Apr 14, 2013@Shad0wSpl1c3r
I have ALL permissions set. For me i added the - logblock.* permission. Still doesnt work. The tool only does nothing.
It would be nice if you can show me your config.yml file so i can check whats wrong. Thank you.
-
View User Profile
-
Send Message
Posted Apr 13, 2013@yanniclord
Sounds like a setup issue. LogBlock works perfectly when installed on a server properly. I've used it for years with not so much as a single problem.
Using OP doesn't always work per version of LB; be sure you have the proper permissions nodes set up as well.