Inactive [INFO/ADMIN] LogBlock v1.54 - Enderdragon Logging! Tree Grow Logging! [1.4.5]

Discussion in 'Inactive/Unsupported Plugins' started by DiddiZ, Feb 15, 2011.

  1. Offline

    DiddiZ

    Version: 1.50​
    [​IMG]
    [​IMG]
    Find and Backroll those Damn Griefers
    LogBlock release are on DevBukkit:
    http://dev.bukkit.org/server-mods/logblock/

    LogBlock dev builds:
    http://ci.kitteh.org/job/LogBlock/

    Please read the installation guide

    I won't port LogBlock myself to mcAPI. Source code is available, so it shouldn't be to difficult for someone else to do it, also I'm still here. so I can answer questions. If there is more than one willing, that's up to you to handle that.




    The reasons I take this step, are the usual: I quit playing Minecraft about 5 months ago and lastly I was struggling to keep up with updates. The developement of Guardian made slow progress, so I fear it won't be ready to fully replace LB in time.


    Download latest dev build: Jenkins
    View the source code: GitHub
    Table of contents:
    1. Description
    2. Features
    3. Why to use LogBlock
    4. Example command
    5. Older versions
    6. Change log
    7. Todo list / feature requests
    8. Permission nodes
    9. Plugins supporting this
    10. Support the dev
    11. How to post error messages
    12. Advertizing
    Description:

    LogBlock logs block changes into a MySQL database. Block changes can be placed or destroyed block, explosions, burned blocks, sign text changes, chest access, leaves decay etc.
    It can be used as griefer identification tool, to find out who build a particular building, or even roll back changes by certain players. Other purposes can be e.g: Undoing of forest fires
    All additional features are optional, to keep the database as short as possible. All database actions run in their own threads to avoid server lags.
    The use of permissions plugin (or any clone) is possible, but not necessary.
    Uses Spout for chest logging (but it's fully optional, and there is no need for the client mod at all).

    Features:
    • Logging for block placing, block braking, fire, explosions, leaves decay, signtexts, lava flow and chest content
    • Very mighty commands system, not only allowing to rollback and redo, but also to tp to blockchanges, delete log ingame etc. Full list of commands.
    • Many parameters for lookup/rollback/redo/tp/clearlog commands: Block changes of one ore more player, in a specific area, in a world edit selection, specific block types only, block changes older or newer that a specific date, destroyed/created block only, in a different world and combinations of all these parameters. Full list of parameters.
    • Rebuilding map after importing a backup (/lb redo)
    • Last parameter to use the parameters of the last command
    • Quick ingame lookup of block history a wood pickaxe or a bedrock block.
    • All commands accessible from console (exept tools :D)
    • Custom queries for tools.
    • Different tool modes (lookup, rollback, redo, writelogfile and clearlog)
    • Saves block data like wool color, log type, torch adjustment, etc
    • Multiworld and multiserver support (some servers sharing the same database)
    • BigBrother log import
    • Loggable super pickaxe plugin (not to confuse with WorldEdit's super pickaxe)
    • API
    • Webstats
    Why to use LogBlock:

    Example commands: (thanks to tha d0ctor, read more about commands here)

    /lb rollback player fire since 1d3h – rolls back fire 1 day 3 hours
    /lb rollback player fire since 1d3h area 15 – rolls back fire 1 day 3 hours within a radius of 15 blocks

    /lb rollback player thad0ctor since 1h - rolls back thad0ctor 1 hour
    /lb rollback player thad0ctor since 1d area 5 – rolls back thad0ctor actions for the last day within 5 blocks
    /lb rollback area 10 since 1h30m - rolls back all modifications within 10 blocks since the list 1 hours and 30 mins
    /lb rollback area 10 before 06.11.2011 - roll back all changes in an area of 1o before June 11th, 2011
    /lb rollback player thad0ctor since 05:36:00 - roll back all changes of thad0ctor since 05:36 (server time)


    Download, Command, Configuration and Details:
    [​IMG]http://diddiz.insane-architects.net/logblock.php

    Changelog:
    -> Full changelog
    • LogBlock v1.50 # 81 (Dez. 13, 2011)
      Works with CraftBukkit 1.0.1-R1
      • Feature: /lb me shows the total block count
      • Feature: Chest logging without spout
      • Feature: Enderdragon logging
      • Feature: Logging for tree and mushroom grow (thanks to MD5 for the api)
      • Fix: Area param works again with default radius
      • Fix: Rollbacks got slowed down a bit to avoid rare server crashes
      • Fix: If mysql username, password or database only consist of unquoted numbers, LB will read them now
      • Config: World configs changed totally, some names changed and all logging options are now in an own section
    • LogBlock v1.41 #63 (Nov. 15, 2011)
      Works with CraftBukkit recommended build #1337
      • Fix: Players with spawnTools permission are no longer allowed to spawn all tools.
      • Fix: Added a check to avoid "The permission xy is already defined!" errors
    • LogBlock v1.40 #60 (Nov. 09, 2011)
      Works with CraftBukkit recommended build #1337
      • Feature: Custom auto ClearLog
      • Feature: Reduced error spam. Instead of like 40 line of error code, there is now just a warning stating the MySQL con
      • Feature: The queue will now be dumped after 10 tries even when the MySQL server is connected
      • Feature: Custom material names, allows naming custom blocks
      • Feature: LogBlock will now respond to messages when started without MySQL connection
      • Fix: Log import runs now async
      • Fix: Log import errors won't crash the server
      • Fix: Console commands work again
      • Fix: You can now use upper case letter in tool names (I don't know why you even should, but ...)
      • Config: Added clearlog.auto, clearlog.enableAutoClearlog in main config. Added materials.yml. Removed clearlog.keepLogDays
      • Permissions: Added 'logblock.spawnTools'
    • LogBlock v1.32 (Oct. 04, 2011)
      Works with CraftBukkit recommended build #1240
      • Feature: Player info logging: firstLogin, lastLogin, onlinetime, ip. No ingame lookup yet.
      • Feature: /lb queuesize to see the current queue size
      • Fix: Door logging logs now also fence gates
      • Fix: Bukkit api break in CB #1191
      • Fix: time restriction works now as intended. Thanks to xrobau
      • Fix: Players with insufficient permissions can't smuggle bedrock from one world to another
      • Config: Added logPlayerInfo
    • LogBlock v1.30 (Sep. 22, 2011)
      Works with CraftBukkit recommended build #1185
      • Feature: Chat lookup /lb chat player diddiz search +admin +sucks +dicks (more info)
      • Feature: Door logging
      • Feature: Dynamic tools, define your own tools
      • Feature: Use since and before to define a timespan
      • Feature: Enderman logging
      • Feature: cake logging (who ate it)
      • Config: Added logEndermen, logCakes and logDoors to world config and moved the tool section in main config.
      • Permissions: logblock.tool changed to logblock.tools.tool and
        logblock.toolblock to logblock.tools.toolblock.
    Todo List:

    https://github.com/LogBlock/LogBlock/issues

    Permission Nodes:
    https://github.com/LogBlock/LogBlock/wiki/Permissions

    Plugins supporting Logblock:
    List (open)

    When you want to appear your plugin here, tell me about



    Support the developer (that's me :D):
    If you want to support me writing plugins or want to thank me for the plugin/support, you can: Suggest features I missed, report bugs (best with fix :D), donate via PayPal, flattr my plugins, gift me The Witcher 2 (thanks to newyoukdaily), 2x 1GB DDR1 modules (thanks to HonestFlames), or send me the inner life of a laptop or netbook with a broken display (need it to build a model aircraft, so there is no need for parts like display and keyboard).

    [​IMG]


    How to post error messages:


    I won't aswer questions to general MySQL setup/installation/what is MySQL (there are lots of good tutorials out there, use google)
    Please read the installation guide before asking a question about installation problems.
    Please read the FAQ before posting a error report. It may be solved there.
    In case of rollback or lookup problems: Type /lb savequeue and try again (when it's fixed then, it was a consumer problem, see FAQ)
    When you post error messages, it's important to paste the whole stack trace!

    Advertizing:
    Newyorkdailys Plugin Support Buisness (open)
    Still can't get LogBlock working, or any other plugin? Are you getting errors in your console and cant figure out why? Newyorkdaily offers Basic/Advanced Plugin support.
    • General/Advanced troubleshooting: FREE!
    • Plugin Installations: 1-2 Plugins - FREE!
    • 3 or More Plugins - $2
    Click on the link below to connect to him now!
    http://wbe001.mibbit.com/?settings=7cb4fd3cdd72754df475fb92a0b65f6c&server=irc.Mibbit.Net&channel=#CBPluginSupport


    There is a LogBlock irc channel: #logblock at irc.esper.net.
    You can ask me on skype. My name is 'hawky.diddiz'.
     
  2. Offline

    DiddiZ

    There seems to be a problem with the connections. Make sure you enteres the url in the config properly.
     
  3. Offline

    swedish2011

    I run with. db4free.net
     
  4. Offline

    DiddiZ

    Make sure that this hoster provides remote access and you entered the url in config properly.
     
  5. Offline

    KazukiMutou

    Do I still need your connector? If so, I can't find it. I'm getting the following error:

    Code:
    2011-03-27 01:11:36 [SEVERE] [LogBlock] Exception while enabling
    java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:30)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)
        at bootswithdefer.JDCBPool.JDCConnectionDriver.<init>(JDCConnectionDriver.java:33)
        at de.diddiz.LogBlock.LogBlock.onEnable(LogBlock.java:66)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:118)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:451)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:217)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:92)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:70)
        at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:260)
        at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:196)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:221)
        at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:380)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:366)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    I'm on CraftBukkit #556. Database I'm using is empty.


    EDIT: Nevermind! Created a new database and it worked fine for some odd reason.
     
  6. Offline

    Spazmic

    I really need your webpage right now, I want to set permissions and I dont remember what to enter in the congig.yml xD
     
  7. Offline

    DiddiZ

    'logblock.lookup' - Lookup block history with woodpickaxe or bedrock block
    'logblock.me' - Access to "/lb me" command
    'logblock.area - Access to "/lb area", "/lb player", "/lb block" and similar commands
    'logblock.rollback' - Rollback commands

    The website comes later this day.
     
  8. Offline

    Spazmic

    Thank you, totally what I needed :p Sorry for ''rushing you'' to get those.
     
  9. Offline

    Madmonkey

    i mean as im using multiverse for multi world but when i go to the other world other than the main one it will say "world not logged"

    and btw how do i edit the config for worldnames in config file?
     
  10. Offline

    DiddiZ

    That's likely the reason :D
    List all the worlds you want to log:
    Code:
    worldNames:
    - world
    - nether
    - anotherworld
    and choose the table names:
    Code:
    worldTables:
    - lb-main
    - lb-nether
    - lb-anotherTableForAnotherWorld
     
  11. Offline

    Postbote

    Every time somone look in a chest, i got this error:
    Code:
    2011-03-27 12:30:30 [SEVERE] [LogBlock] SQL exception
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'intype' in 'field list'
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.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:406)
        at com.mysql.jdbc.Util.getInstance(Util.java:381)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2542)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1734)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2019)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1937)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1922)
        at de.diddiz.LogBlock.LogBlock$Consumer.run(LogBlock.java:595)
        at java.lang.Thread.run(Unknown Source)
    How 2 fix?
     
  12. Offline

    DiddiZ

    Hm, that's new. There could something be go wrong with the table autocreation. Please post which columns the -chest table contains. Maybe it could help to delete the -chest table (atm there isn't any data there).
     
  13. Offline

    Postbote

    Ok, here the structure in PHPmyadmin:
    cheststructure.JPG


    But Ingame the Chestaccess is logging?
    2011-03-27_14.19.08.png
     
  14. Offline

    DiddiZ

    Ah, there is the problem: the column names have uppercase letters
    Rename them, ot delete the table.
    Yes, this table is for given/taken items, which bukkit doesn't support atm, but the table alredy exists, so the table doesn't contains anything exept 0s,
     
  15. Offline

    swedish2011

    it goes but something was wrong.
     
  16. Offline

    DiddiZ

    Um, you've to make a few more words, I'm no visionary.
     
  17. Offline

    TheRec

    Hello,

    Your plugin is awesome, thanks a lot for your work ! :)
    The only reason I did not switch completely to LogBlock and I still use BigBrother is that it isn't possible to undo a rollback for the moment and I can't afford making "big" rollbacks and not being able to undo them if I made a mistake with the command. I hope that you will have time to implement this someday, it would be very useful :)

    Keep up the great work!
     
  18. Offline

    DiddiZ

    Website is working again :D
    "/lb redo" is planned :D Atm I'm completly rewriting all commands. Maybe this week.
     
  19. Offline

    TheRec

    Great :) Thank you for this information !
     
  20. Offline

    DiddiZ

    Wrote a new BB import.
    Including created, destroyed, burned, exploded blocks and even signtexts and chest logging

    Will add a command "/lb import bigbrother" some day.
     
  21. Offline

    ManBearWaffle

    The crashes weren't fixed in the latest update. I rolled a player back and there were about 2000 changes. The server crashed.
     
  22. Offline

    DiddiZ

    huh? 2k is rather little. There shouldn't be even a noticeable lag.
    What exception?
     
  23. Offline

    ManBearWaffle

    [SEVERE] [LogBlock Rollback] java.lang.NullPointerException
     
  24. Offline

    DiddiZ

    And the server crashed? Not just showed the error?
     
  25. Offline

    ManBearWaffle

    Yeah. I had to restart it.
     
  26. Offline

    rakiru

    Same happened for me. Still getting the same problems as before: that error message and server freezing. Could still run console commands, but everyone timed out and i had to restart.
     
  27. Offline

    DiddiZ

    I'm working on it, once more ...
    I still wonder why nothing happened when I tested LB before releasing v0.9d.

    Fixed rollbacks again
    Added a auto downloader for the mysql connector (and moved the jar to lib/)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 9, 2016
  28. Offline

    Kane

    @DiddiZ

    Hello, Just to let you know recommended is now 602 of this post :)

    http://ci.bukkit.org/job/dev-CraftBukkit/

    Thanks for no more SQL updates so far again hehe. We have like 30mil rows now haha. I was wondering would there be any slow down if it was even 1000mil rows as long as there was space? For example if I check a block would it get slower and slower?
     
  29. Offline

    DiddiZ

    Thanks, but devs get an extra notification for RCs. I waited for it, and will update today.
    I'm also optimizing the indexes. Nearly all current indexes aren't used anyway. Most colums have a way too low cardinality. If you want to save some space(nearly the half!), you can drop all keys except coords and date maybe. I overtook the indexes from bootswithdefer, but they are no good. So looking up a specific block works fast and due to the index mostly independant from the row count. Sadly, all other lookups (area, player, rollback etc.) can't or don't use indexes, so their time is depending on the row count. I made already some improvements, but it's not official yet.
     
  30. Offline

    Kane

    That is cool. I don't use rollbacks and don't mind the size really just worry about the database size as in maybe 10gigs would end up causing mysql to crash I don't know haha.

    My server only uses pick for mods and of course logging basic blocks for now. I was thinking of logging chest doors and such I think you had all the features but then again I was also worried that might be to much of a hit.

    Thanks and looking forward for the update later :)
     
  31. Offline

    THEK

    Hi,

    What would recommend as the maximum amount of records in a database? Or should this not affect performance too much?.
     

Share This Page