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. I'm sorry but I can't find this anywhere... (I probably fail at reading :x) How do I make it so the tool gets the log for the block you place/hit? I tried /lb tool area 1, but that makes it grab the logs of all blocks on that Y axis. I'd like to get precise information from the block I hit D:
     
  3. Offline

    DiddiZ

    I'm sorry, I stated it wrong everywhere :'(
    It has to be "area 0"
     
  4. Awesome, thanks! :D

    Could you make it default to that in the next version :p? And make it so you only have to type /lb toolblock chestaccess rather than /lb toolblock chestaccess area 0?

    I've just switched from BB to this and imo it's much better to have it defaulting to that :p.
     
  5. Offline

    DiddiZ

    It's easily possible ... why didn't I thought about? :D
     
  6. Offline

    mutiny


    further testing required to determine if it is hanging during rollback or mysql query, however i believe it is happening during the query stage. Everyone begins to time out and server scrolls read timed out messages. no way to stop server, must kill server. It should be noted that this is happening during fairly large queries. Such as 30 days etc. My server averages 50 people 24 hours a day, up to 85 on at once. database is stored for 4 days currently.
     
  7. Offline

    incrjaysen

    always get:

    Code:
    2011-06-26 16:33:01 [SEVERE] [LogBlock Lookup] Exception:
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'd0111917.lb-players.id' in 'on clause'
        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: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:2620)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570)
        at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1474)
        at de.diddiz.LogBlock.CommandsHandler$CommandLookup.run(CommandsHandler.java:356)
        at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
        at java.lang.Thread.run(Thread.java:636)
    when trying to rollback or hit with the wooden axe.
    my config:

    Code:
    tables:
    - lb-main
    - lb-nether
    loggedWorlds:
    - world
    - world_nether
    mysql:
        port: 3306
        host: CENSORED
        password: CENSORED
        user: CENSORED
        database: d0111917
    logging:
        logBlockCreations: true
        logBlockDestroyings: true
        logLeavesDecay: false
        logFire: false
        logLavaFlow: false
        logSignTexts: false
        logExplosions: false
        logCreeperExplosionsAsPlayerWhoTriggeredThese: false
        logChestAccess: false
        logKills: false
        logKillsLevel: PLAYERS
        hiddenPlayers: []
    clearlog:
        dumpDeletedLog: false
        keepLogDays: -1
    rollback:
        replaceAnyway:
        - 8
        - 9
        - 10
        - 11
        - 51
        dontRollback:
        - 10
        - 11
        - 46
        - 51
    consumer:
        delayBetweenRuns: 6
        forceToProcessAtLeast: 0
        timePerRun: 100
        useBukkitScheduler: true
    lookup:
        defaultDist: 20
        defaultTime: 30 minutes
        toolID: 270
        toolblockID: 7
        toolQuery: area 0 all sum none limit 15 desc silent
        toolBlockQuery: area 0 all sum none limit 15 desc silent
    questioner:
        askRedos: true
        askClearLogs: true
        askRollbacks: true
        askSavequeueBeforeRollback: true
    version: '1.10'
    
    my tables:
    tables.JPG


    any help on this would be highly appreciated

    edit: the plugin seem to write perfectly into my DB. why cant it load the stuff it writes?
     
  8. Oh how do you do a BB log import btw? It doesn't seem to be anywhere in the wiki?
     
  9. Offline

    DiddiZ

    Hm, It's a deadlock at the connection pool.
    Strange, i neither use an on clause nor an id column in lb-players.
    Maybe you should redownload lb.
    It's at the download section, but you're right, I should better write it to the wiki.
     
  10. Offline

    Livin in a box

    Why can't I rollback fire? I've enabled it in the config and when I use the command to rollback fire specifically it tells me that it can't find anything. Rolling back an area doesn't restore any burned blocks.
     
  11. Offline

    DiddiZ

    Do you use the time parameter for fires older than 30 minutes?
    /lb rb player fire area 15 since 1 hour
     
  12. Offline

    incrjaysen

    installed it already 3 times... each time this is happening
     
  13. Offline

    DiddiZ

    Hm, you could delete all tables and let them autocreate again.
     
  14. Offline

    Livin in a box

    Yes, but it still tells me that no damaged blocks could be found (words to that effect anyway).
     
  15. Offline

    incrjaysen

    thanks for your fast replies.

    unfortunately, same issue, same failure message.
    deleted all tables and let them recreate didnt solve it.
    wtf should on clause mean? when i hit a block with the wooden pickaxe it pops up in my log
     
  16. Offline

    DiddiZ

    Hm, try placing some blocks and burn these down to see whether fire gets logged at all.
    on clause is a part of mysql syntax.
    I really don't have I clue how it could got messaed up in a that strange way.
    But I should implement a debug mode, that displays the query
     
  17. Offline

    Livin in a box

    OK, I managed to fix it...I did something a noob would do and not enable it in the actual LogBlock config- I had enabled logging somewhere else...

    Thanks anyway!
     
  18. Offline

    DiddiZ

    @Kainzo @mutiny
    Tracked that deadlock down (thanks for that thread dump), and most likely fixed it. Tell me whether it works :D
     

    Attached Files:

  19. Offline

    Kainzo

    No problem - just wanted to make sure you knew about it ;)
     
  20. Offline

    mutiny

    Testing
     
  21. Offline

    rtcabooservb

    You need a dev site like ci.bukkit.org so we can track dev builds of logblock :p
     
  22. Offline

    zorro300

    hi,
    I am trying to install mysql on a mac (it worked)
    but when i try to access it with terminall (also works) i get this :

    i type : mysql -u root -p
    then i get
    Enter Password :

    but i can't type password
    I also ran a server on windows where i easily could type the pass
    what to do ? pls help
    thx
     
  23. Offline

    DiddiZ

    You can add the pw in command line:
    mysql -u root -pPASSWORD
     
  24. Offline

    zorro300

    well,
    i tried it 2 times and I am sure i typed all right but i get this error

    [SEVERE] [LogBlock] Error while fetching connection
    java.sql.SQLException: Access denied for user 'logblock'@'localhost' (using password: YES)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:931)
    at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4031)
    at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1296)
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2338)
    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:39)
    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.ConnectionImpl.getInstance(ConnectionImpl.java:378)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at de.diddiz.util.MySQLConnectionPool.getConnection(MySQLConnectionPool.java:64)
    at de.diddiz.LogBlock.LogBlock.getConnection(LogBlock.java:180)
    at de.diddiz.LogBlock.LogBlock.onLoad(LogBlock.java:68)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:121)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:89)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:52)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    02:26:54 [SEVERE] [LogBlock] Error while loading:
    java.lang.NullPointerException
    at de.diddiz.LogBlock.LogBlock.onLoad(LogBlock.java:68)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:121)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:89)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:52)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:132)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)


    I guess this says i have wrong password ? But I am sure i did all
    I did this

    mysql> create database logblock;
    Query OK, 1 row affected (0.00 sec)

    mysql> create user 'logblock'@'%' identified by 'logblock';
    Query OK, 0 rows affected (0.00 sec)


    mysql> grant all privileges on logblock.* to 'logblock'@'%';
    Query OK, 0 rows affected (0.00 sec)

    mysql> quit
    Bye

    and this is my config

    mysql:
    port: 3306
    host: localhost
    password: logblock
    user: logblock
    database: logblock

    what to do pls help
    thx
     
  25. Offline

    DiddiZ

    I'd say you are missing:
    FLUSH PRIVILEGES;
     
  26. Offline

    zorro300

    i dont get it
    what to do ?
     
  27. Offline

    DiddiZ

    mysql query, to make use of the changes u did (creating the user)
     
  28. Offline

    zorro300

    it keeps saying 0 rows affected
    even if i do flush privileges;
     
  29. Offline

    DiddiZ

    The '%' syntax is new to me, you could try 'localhost' instead
     
    zorro300 likes this.
  30. Offline

    zorro300

    with localhost still 0 rows affected
     
  31. Offline

    DiddiZ

    So:
    CREATE USER logblock IDENTIFIED BY 'password';
     

Share This Page