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

    Greenborg

    When used commands /lb rb player (name) since 5 days or changed since to time.
    Then i get the following i red text SQL exception
    What is wrong, i got a grifer i can not undo his changes i get the error every time
     
  3. Offline

    DiddiZ

    What does the console say?
     
  4. Offline

    Zarius

    Howdy, absolutely love the plugin :) It's been working well in my CB820 server and just upgraded to 1.01, no problems so far.

    One thing though - is it possible to get LogBlock working with alternate drop plugins? I use OtherBlocks to allow glass to drop glass (and have tried a couple of other alternate drop plugins) however when this is enabled the destruction of the blocks is not recorded in logblock. Is this able to be fixed from your side or purely the alternate drop plugins side of things?
     
  5. Offline

    DiddiZ

    LogBlock has an API to queue block breaks. You just have to make the dev using it :D
    -> https://github.com/DiddiZ/LogBlock/wiki/API
     
  6. Offline

    thommy169

    Hello.
    The /lb writelogfile command doesnt work for me. I always get an "IO exception" I think i wrote the command right, (for example /lb writelogfile player xyz or /lb writelogfile area 10)
     
  7. Offline

    DiddiZ

    Hm, what's the error message in the console?
     
  8. Same here! (cb818, lb1.01) Console log:
     
  9. Offline

    DiddiZ

    Hm ... fails to create a new file.
    Will check that.
     
  10. Offline

    Greenborg

    The consol show the following when used the command
    Code:
    [SEVERE] [LogBlock Rollback] SQL exception
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        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:1052)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3603)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3535)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1989)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2150)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570)
        at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1476)
        at de.diddiz.LogBlock.CommandsHandler$CommandRollback.run(CommandsHandler.java:441)
        at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
        at java.lang.Thread.run(Thread.java:679)
    
     
  11. Offline

    DiddiZ

    That one is new to me, but after a while googling I found it:
    Your mysql server uses max_join_size and so permits the query.
    You should set it to default again, or you'll have to clear out your table to reduce the temp table size.
    -> http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_join_size
     
  12. Offline

    xPaw

    Hm. Netstats was using lib thingy too, but he succesfully used the one from craftbukkit. You should look into it.
     
  13. Offline

    ledhead900

    This is not loging Half blocks well not the news anyway like wood halfblock and the cobbel halfblock.

    The air tool nor the normal tool will pick it up as modified and sometimes it wont log door destruction
    CB 839

    LB 1.01
     
  14. Hey, I seem to be having some issues getting this installed. It just doesn't seem to want to connect to my remote MySQL server, I have allowed the IP of my minecraft server to access the databases and the information in the config is correct.

    Code:
    2011-06-08 14:10:35 [INFO] [LogBlock] Connecting to chrisb_logblock@jdbc:mysql://206.51.xxx.xxx:3306/chrisb_logblock...
    2011-06-08 14:10:35 [SEVERE] [LogBlock] Error while fetching connection
    com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
    
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
        at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2334)
        at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371)
        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163)
        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
        at java.sql.DriverManager.getConnection(DriverManager.java:620)
        at java.sql.DriverManager.getConnection(DriverManager.java:200)
        at de.diddiz.util.MySQLConnectionPool.getConnection(MySQLConnectionPool.java:64)
        at de.diddiz.LogBlock.LogBlock.getConnection(LogBlock.java:171)
        at de.diddiz.LogBlock.LogBlock.onLoad(LogBlock.java:61)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:106)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:327)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:193)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
        at java.net.Socket.connect(Socket.java:546)
        at java.net.Socket.connect(Socket.java:495)
        at java.net.Socket.<init>(Socket.java:392)
        at java.net.Socket.<init>(Socket.java:235)
        at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:254)
        at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
        ... 23 more
    2011-06-08 14:10:35 [SEVERE] [LogBlock] Error while loading:
    java.lang.NullPointerException
        at de.diddiz.LogBlock.LogBlock.onLoad(LogBlock.java:61)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:106)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    I've filtered part of the IP on purpose.

    Could you please advise me in where I am going wrong?

    Thanks,
    Chris
     
  15. Offline

    DiddiZ

    Will have a look on it.
    Will check that.
    Assumed that's correct, the MySQL server could refuse tcp connections.
     
  16. Offline

    Double0negative

    Is there a way to bring the old functionality of /lb area <largenumber> back where it showed a total per player and not everything that happened? (or am i getting teh commands confused :S)

    Thanks
     
  17. Offline

    Flatliner

    Just curious, is it possible to do a rollback but only for certain blocks?

    I just ran this command

    /lb rb player playername block glass since 7d

    and got a sql exception. From the logs it seems to be complaining about sign texts...

    2011-06-09 00:22:18 [SEVERE] [LogBlock Rollback] SQL exception
    java.sql.SQLException: Column 'signtext' not found.
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    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.ResultSetImpl.findColumn(ResultSetImpl.java:1144)
    at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5616)
    at de.diddiz.LogBlock.CommandsHandler$CommandRollback.run(CommandsHandler.java:444)
    at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    at java.lang.Thread.run(Unknown Source)

    Also, how does one specify blocks with a space? For instance, gold block. If I do

    /lb block "gold block"

    then it tells me that gold isn't a valid material or something similar, even though it's quoted.
     
  18. Offline

    MJE

    Is there a way to see what chest (or coords) someone took something out of? I write out to log file and it just says "player1 tool 5 dirt from chest". I'd like to know where the chest was at.. :)

    Any way to do this?

    Thanks!
     
  19. Offline

    ThorSve33

    Permissions 3.X? (sorry if I'm asking the same Q as 125710515 other ppl, but my new server host won't allow BB and I can't just let people use LB willy-nilly)
     
  20. Offline

    Rebeljah

    Hey could you add a permanent hidden list so that I dont have to type /lb hide every time I join? Great plugin btw :)
     
  21. Offline

    DiddiZ

    /lb area <radius> sum players
    Hm, I messed up rollbacking block types, damnit. Will fix that :D
    I should add them. By now you only cn use "/lb tp"
    LB works with permissions 3.x
    It's alredy there :D
    Add your name to logging.hiddenplayers
    Seems like I forgot to mention some things in the changelog :oops:
     
  22. Offline

    ThorSve33

    Horray :D
     
  23. Offline

    Zodiac

    I just wanted to tell you that LogBlock has got a problem with the name "Intheline".
    I hope you can fix it.
     
  24. Offline

    DiddiZ

    Um, you'll have to tell me more.
    What caused it? What's the console output like?
     
  25. Possible a noobish question but, I don't know if I'm missing it but is there a tutorial for converting your BB logs into LB logs cause i don't not know how.
     
  26. Offline

    DiddiZ

    You only need a way to execute SQL queries, like phpMyAdmin or MySQL Workbench. Then, download/open the converter file, read the instructions and follow them. Then execute the queries seperately.
     
  27. Offline

    dompie

    Hi, I have searched the forum and read in the wiki on github. Even tried to understand the new ingame commands but they seem pretty complicated to me compared to version 0.15...what's the command to find out WHERE (coordinates) a player changed some blocks? I can port there (sometimes dieing) and see when he changed them, but not where. I had to open phpmyadmin to find that out, on 0.15 this was more straightforward to me.

    Still looking for a reason why you changed commands in a such radical way...I'm sure I'll get it someday.
     
  28. Offline

    Rebeljah

  29. Offline

    Kainzo

    Build 839+
    Lb 1.01
    I'm attempting to roll someone back its prompting me for a /yes /no - I do /yes but nothing happens.
     
  30. Offline

    DiddiZ

    Hm, I could add a coords parameter to display them.
    You just found a bug. Was reading the wrong config node. Fix will be in next update.
    Hm, maybe a problem with the command preprocess event. If it doesn't work at all, you can disable the questions.
     
  31. Offline

    rtcabooservb

    How does logblock compare to bigbrother in performance impact on a server?
     

Share This Page