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 6, 2012@ragan262
youll have to use phpmysql or the mysql workbench an write your own query to see that info ragan.
-
View User Profile
-
Send Message
Posted Apr 6, 2012How to access logged kills ? I see LB adding to db but i can't find any command to list kills ingame.
Thanks for help.
-
View User Profile
-
Send Message
Posted Apr 6, 2012@deleted_6837836
Hello! I'm also having this issue.... its seems to stop the whole logging in that world and causes a huge backlog to the server! -eeep-
2012-04-06 21:51:15 [INFO] [LogBlock Consumer] Queue overloaded. Size: 1710
2012-04-06 21:51:15 [SEVERE] [LogBlock Consumer] SQL exception on INSERT INTO `lb-Survival` (date, playerid, replaced, type, data, x, y, z) VALUES (FROM_UNIXTIME(1333744352), 26, 5, 0, 0, '49961', 96, '23');:
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value for column 'x' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3591)
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:2620)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:779)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:622)
at de.diddiz.LogBlock.Consumer.run(Consumer.java:292)
at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
at java.lang.Thread.run(Thread.java:662)
Anyone got a solution to this?
-
View User Profile
-
Send Message
Posted Apr 6, 2012@nate302
Yep, that's the only error I can see.
plugin list: http://pastebin.com/Fu6NJaNi
-
View User Profile
-
Send Message
Posted Apr 5, 2012I'm having trouble, this error keeps on spouting:
20:53:31 [WARNING] [LogBlock] Error while importing: 'INSERT INTO `lb-world` (date, playerid, replaced, type, data, x, y, z) VALUES (FROM_UNIXTIME(1332032083), 3, 10, 49, 0, '-1035', 66, '-873');': No operations allowed after statement closed.
says a ton of these things (with only the co-ords changed). And finally it says
20:53:31 [WARNING] [LogBlock] Error while importing: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. at sun.reflect.GeneratedConstructorAccessor8.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 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:1013) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927) at com.mysql.jdbc.ConnectionImpl.throwConnectionClosedException(ConnectionImpl.java:1213) at com.mysql.jdbc.ConnectionImpl.getMutex(ConnectionImpl.java:3101) at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1632) at de.diddiz.util.MySQLConnectionPool$JDCConnection.commit(MySQLConnectionPool.java:146) at de.diddiz.LogBlock.DumpedLogImporter.run(DumpedLogImporter.java:51) at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34) at java.lang.Thread.run(Thread.java:680)
I guess it's a problem with saving it in the database? Though I don't know, and that's why I'm asking.
I'm using bukkit 1.2.5 - R1
-
View User Profile
-
Send Message
Posted Apr 4, 2012Does anyone know if there is a build service for the questioner? I struggle with compiling on my own.
-
View User Profile
-
Send Message
Posted Apr 4, 2012@nate302
I'd also add that the world name is case sensitive and also check the world name in the server.properties file.
-
View User Profile
-
Send Message
Posted Apr 4, 2012@deleted_7554077
when a world is not logged, with the tool, it will seem like there is no plugin there. You can verify if the world isn't logged by doing an area command.
./lb area 5 since 30m
If the world isn't logged, it will give you an error something like:
"world_nether isn't being logged" or something to that effect.
if this is the case, in your logblock config, add "world" and any other worlds you want logged to the config. This list is case sensitive.
-
View User Profile
-
Send Message
Posted Apr 3, 2012@winter4w Do you have your mysql database set up correctly?
Any errors in console?
What LogBlock version?
What CB version
Are you left or right clicking?
Have you set up right permissions? try OPing yourself
Do you have your world name in the logged worlds list?
-
View User Profile
-
Send Message
Posted Apr 3, 2012When I do /lb tool i get an pickaxed and when I use it on a block Nothing happen and I do have it enable.
-
View User Profile
-
Send Message
Posted Apr 3, 2012@DoctorBoyd
is that the only error you get? And also, what plugins are you running?
-
View User Profile
-
Send Message
Posted Apr 2, 2012@nate302
Yes, it only happens right after someone quits the server.
I tried deleting the lib folder but it still happens.
-
View User Profile
-
Send Message
Posted Apr 2, 2012@erdrickk
it is an option. LBQuestioner for the plugin to work requires Logblock. It would be like loading a world edit plugin, without worldedit! LB questioner doesn't work on its own :)
@deleted_7554077
I think you are stating the obvious, Captain ;)
@frenchfries999
glad to see you got it working. I hadn't originally thought about what we were compiling with, as our build server runs the same as our minecraft server for java. Originally, it was intended only for us.
-
View User Profile
-
Send Message
Posted Apr 1, 2012@nate302
Did what you said and it worked!
If anyone needs it (got enough space on my dropbox):
LogBlockQuestioner.jar
LogBlock.jar
Not sure if you need both, but I compiled both just to be sure. All credits go to DiddiZ and bootswithdefes, I only downloaded the source and compiled it with JRE-1.7
-
View User Profile
-
Send Message
Posted Apr 1, 2012@frenchfries999
LOL
Questioner asks you stuff like if you want to delete rolled back data from mysql database and stuff.
It doesn't deal with rollbacks or any lb params
-
View User Profile
-
Send Message
Posted Apr 1, 2012@erdrickk
LogBlock is the plugin that tracks all the block changes LogBlockQuestioner is a plugin that uses the LogBlock API to allow you to rollback, lookup, etc (it handles all the /lb commands - except /lb hide). You can consider it optional, but then you'd need another plugin that uses the LogBlock API and can perform rollbacks.
-
View User Profile
-
Send Message
Posted Mar 31, 2012I thought LogBlock Questioner wasn't really required for the plugin to work, it was just an option.
-
View User Profile
-
Send Message
Posted Mar 31, 2012@Mzaq
This isn't caused by a failed dependency. This is caused because our build service is building for the latest java, and compiling for that. This means you are running a java version older than this jar was built for. Our build server runs the latest 1.7 JDK. It is failing for you because you are most likely running 1.5 or 1.6.
@DoctorBoyd
I'd try deleting the "lib" folder located in:
yourserver/lib <- contains jars automatically downloaded
That bug is a symptom of logblock failing to connect to the mysql server. Does this only happen when players log off?
-
View User Profile
-
Send Message
Posted Mar 31, 2012I've been getting this when someone quits the server.
http://pastebin.com/uGkxPUs0
I'm using the latest dev build with RB craftbukkit.
Is there anything I can do to fix it?
Thanks.Great plugin.
-
View User Profile
-
Send Message
Posted Mar 31, 2012@Mzaq
Download latest development build for LogBlock here - http://diddiz.insane-architects.net:8080/job/LogBlock/
Download latest custom compile of the LogBlockQustioner here - Link Removed: http://www.mediafire.com/?tpp2bzllwltp472