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.
Please update for Minecraft version 1.9.4.
Hello, I keep getting this error spamming my log: [18:03:14] [Craft Scheduler Thread - 60/WARN]: Exception in thread "Craft Scheduler Thread - 60" [18:03:14] [Craft Scheduler Thread - 60/WARN]: org.apache.commons.lang.UnhandledException: Plugin LogBlock v1.94 generated an exception while executing task 12 at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player; at de.diddiz.LogBlock.Metrics.postPlugin(Metrics.java:324) at de.diddiz.LogBlock.Metrics.access$400(Metrics.java:46) at de.diddiz.LogBlock.Metrics$1.run(Metrics.java:212) at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftTask.run(CraftTask.java:71) at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) ... 3 more
Any help ?
@SureWay
Page is down :/
@ARX7Arbalest
Yes, the development build see http://ci.md-5.net/job/LogBlock/changes Build #270
A little Question is this Plugin compatible with 1.9 ?
@Danny : Nothing ever gets fixed or responded to.
The only reason I still have logblock is because of a 4 year old database using 800 GIGS of Logging with every block ever placed on the server. It remembers all the kills but simply cannot roll them back...
Never worked 100% with any version.
/lb rb kills etc etc
returns this error in 1.6, 1.7 and 1.8 !!! All versions of logbock !!
Column replaced not found !!!
Logblock does not roll back kills no matter what I do.
[09:28:41 INFO]: Fahrferknukken issued server command: /lb rollback kills area 10 since 3h [09:28:41 ERROR]: [Rollback] SELECT x, y, z FROM `lb-claims-kills` WHERE x in (-2401,-2400,-2399,-2398,-2397,-2396,-2395,-2394,-2393,-2392,-2391,-2390,-2389,-2388,-2387,-2386,-2385,-2384,-2383) AND y in (55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73) AND z in (-765,-764,-763,-762,-761,-760,-759,-758,-757,-756,-755,-754,-753,-752,-751,-750,-749,-748,-747) AND date > date_sub(now(), INTERVAL 180 MINUTE) ORDER BY date DESC, id DESC : java.sql.SQLException: Column 'replaced' not found. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:959) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:862) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1076) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2580) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at com.zaxxer.hikari.proxy.HikariResultSetProxy.getInt(HikariResultSetProxy.java) [LogBlock.jar:?] at de.diddiz.LogBlock.CommandsHandler$CommandRollback.run(CommandsHandler.java:674) [LogBlock.jar:?] at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftTask.run(CraftTask.java:71) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) [spigot-R0.1-5d4e372f482-99f22a5c59d-db1761e3c9d.jar:git-Spigot-5d4e372-99f22a5] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_73] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_73] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_73]
Reminder: Please do not post here for help. click Report Bugs above instead!!!!!
@windoffreedom
I'm using the latest devbuild with no errors.
[10:17:37] [Server thread/INFO]: [LogBlock] Enabling LogBlock v1.10.0-dev-SNAPSHOT (build #271)
[10:17:37] [Server thread/INFO]: [LogBlock] Scheduled consumer with bukkit scheduler.
@seema23
Yes, this error on the latest version: '1.10.0-dev-SNAPSHOT (build #271)'
@windoffreedom
Do you use the latest dev Build? click
Plugin does not work on Spigot 1.9:
im haveing this error any info or help on how to fix would be great or even to no what it is thank you in advance http://pastebin.com/aQ9zakvT
@mat41997
Update to the latest build of NametagEdit. We have resolved this issue. :)
logblock not work on the NametagEdit plugin.
@pepper82
no not in "everyday" use
it can happen that it takes a lot of resources, but thats only if you enable worldedit logging, and someone does >1.000.000 blocks changes, then logblock will read all the logging info into memory and send it slowly to the SQL server
@unclemark
Hey
You can edit how logblock shows the date, in logblock config find
lookup:
dateFormat: MM-dd HH:mm:ss
and change it to something like
lookup:
dateFormat: YY-MM-dd HH:mm:ss
and it will only show the 2 last number of the year (14-15-16)
or do
lookup:
dateFormat: YYYY-MM-dd HH:mm:ss
then it will show the "full" year :3 (2014-2015-2016)
i would recommend this one, as it is easy with the top one to confuse the year with the day.
you can also mess around with the date display and add it in any order you want
Isn't this plugin a performance eater?
year - feel free to consolidate this. I'm sorry but I can't look up grif from last year or 2 years ago - because it has no date (as in YEAR)
and if I'm lucky enough to live hundreds of years, don't make the year xx .. make it XXXX 2015 2101 2558 8192
hmmm
Anything over a 9999 year calendar is too soon to call. Please add a date specifier to logblock lookup , rb etc