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

    JSmoove98

    so like /lb rollback tnt 5 minutes? but wouldn't that rollback all tnt within 5 minutes? what if i want to rollback a spesific tnt explosion?

    and also when i rollback players it doesnt rollback ladders that have been destroyed. and also, when will rollbacks include (if ever) chest rollbacks?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  3. Offline

    DiddiZ

    This or next weekend, depending on progress with chest rollbacks, cake eating isn't logged atm
    /lb rpllback playerarea tnt 5 minutes.
    Hm, will check ladders, chest rollbacks will come with v1.00.
     
  4. Offline

    MatCat

    Not sure if this is the case or not, I need to do some experimenting, but I was running logblock on the bukkit scheduler, which seemed to work well, but to be honest I thought I set it to false, and while I was trying to find out what was eating CPU cycles I figured it would atleast help the situation, to my surprise there was a massive difference in CPU use, much much less, however now I notice really bad lag in spikes, sometimes into the many many seconds (30 or so). Got me to thinking as I noticed that now though my cpu locking issue from before has gone away, but with the cost of odd lags. I am thinking maybe your threading isn't safe with java's parallel garbage collector maybe? As the threads that blow up cpu usage is the java garbage collector threads from what I can tell, and it's not doing it since I changed logblock to use its own scheduling, however now these wierd lag issues are occuring, yet cpu and ram usage show way less then normal.

    Any ideas? :)
     
  5. Offline

    DiddiZ

    Um, strange. Theoretically, there should be no real differences, but that's only theoretically :D
    Problem with the gc is unlikely, since I initializate the consumer once and work all the time with the same instance.
    The lag can be either be caused by a too low or too high delayBetweenRuns value.
    What consumer settings are you using, and how many players are average on your server?

    v1.00 progress news:
    Rollback of signs works

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  6. Offline

    ledhead900

    Request!
    1. Alias for commands like Rollback and player​
    example "/lb rb plyr "name" "something else"​
    Maybe even ability to change it per user with /lb alias "command" "newalias"​


    2. In game toggle for Item tools On/Off, for switching checking on and off for the item​
     
  7. Offline

    MatCat

    I average 30+ players, though the lag issue is there whether its 1 person on or 40, and the settings are default.

    yeah I had to put it back on the bukkit scheduler, now I am not getting ANY lag, nor is anyone else, however when bukkit scheduler is used I think it results in memory leak or something, as after a while the cpu ussage will just peg across many CPU's (I think the GC trying to cleanup objects not properly closed out, but failing?)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  8. Offline

    macman

    umm for some reason its not rolling back changes why is this?
     
  9. Offline

    DiddiZ

    Hm, aliases are a bit circumstantial now, but i can add rb as fixed alias. (undo is alredy there, but noone seems to know :D)
    Yup, alredy done, comes with v1.00.
    Hm, it's possible that the timer and the bukkitscheduler thread gets different priority. Adjust some of the consumer settings, set delay to 3 for testing purposes :D
    Again, I'm not closing anything, so it's most likely not the gc. The consumer stays the same, and the connections return to the pool.
    Well, could you describe that a bit more?
     
  10. Offline

    macman

    Well i can rollback changes that i just did but old stuff wont rollback

    this is the command im useing

    /lb rollback playername NAME 10 999 days

    thanks
     
  11. Offline

    DiddiZ

    /lb rollback playerarea NAME 10 999 days
     
  12. Offline

    macman

    sorry i ment i ran that command
    it did not roll anything back
     
  13. Offline

    SpiiderPig

    I got following error

    Code:
    21:57:49 [SEVERE] [LogBlock] Error while fetching connection
    java.sql.SQLException: Failed to validate a brand new connection
            at de.diddiz.util.ConnectionPool.getConnection(ConnectionPool.java:58)
            at de.diddiz.LogBlock.LogBlock.getConnection(LogBlock.java:533)
            at de.diddiz.LogBlock.Consumer.run(Consumer.java:204)
            at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
            at java.lang.Thread.run(Thread.java:636)
    
    Logblock still works it seems, the Server shares the same MySQL DB with my other server and there was no error in the log. Do i need to worry about that ? :)
     
  14. Offline

    rtcabooservb

    Great job so far. Any ETA when we can expect 1.0 yet? No rush ^_^
     
  15. Offline

    MatCat

    Diddiz, I think its a threading issue more then anything, have you tried running LogBlock with parallel GC? Its one setting that isn't very common on most servers, so you would never know of the conflict issues with GC, especially with threading. It's as if logblock is doing its thing, and the main thread's are waiting on logblocks threads to talk back, which would explain many seconds of delay. The server gets the input instantly, processes it, but the output of the server doesn't go to the client for many seconds, and it's not doing it to everyone, just some people off and on. For now I am running it on the bukkit scheduler, but I have to keep restarting the server every so often once the threads lock up, and I have confirmed it is LogBlock doing it.
     
  16. Offline

    JSmoove98

    also rails
     
  17. Offline

    MangoStarr

    Hey just something really small I noticed in the First Post, you have a link for "Originally written by bootswithdefer for hMod" but the hey0 website is no longer up :p

    Just thought I'd bring that to your attention
     
  18. Offline

    DiddiZ

    Well, what did lb say?
    When it only occured once: no, just a random connection break.
    Next week, most likely.
    The server is never fored to wait for LB threads, only the rollback thread is fored to wait for the rollback performer thread. The consumer spawns no threads, only many block changes in the queue. You may contact me on skype, makes asking easier. I'm not really versed with the java gc, so I'm thankful for each advise :)
    Maybe it just get randomly fixed with v1.00 :D
    Hm, I should link his git repo instead ...
     
  19. Offline

    macman

    well it sayed rolling back but it did not do anything, it said undoing 20 actions and no errors
     
  20. Offline

    MatCat

    Yeah it's odd behavior, I generally test settings during light server load (10 to 15 players at night), one thing I did notice was that with 10 or so players, cpu usage using the bukkit scheduler is about 60% to 80% CPU usage on main MC Thread, with your own scheduler it runs about 30%, however again the major lags make it better to have a taxed CPU with minor lags, then a idle CPU with 30 second lag :D I don't use skype, you hang out on irc at all?
     
  21. Offline

    macman

    should i remove the database and start again?
     
  22. Offline

    DiddiZ

    Hm, rails work for me, and ladders get rolledback as invisible ladder block ... I've to check the stored data.

    k, what does the block history ot these blocks look like?
    Shouldn't be necessary.
    Hm, what kind the laggs are of? Until now I thought It was only a delayed block history, but by now it sounds like real server laggs?
    No, no irc at all.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jul 18, 2016
  23. Offline

    Micze

  24. Offline

    ledhead900

    Yea the only real beef I have with this is that the commands are really long even if the alias options was set in stone to be red only by plugin.yml I'm happy to edit that file to add new a new alias.

    It does not really need to be config but just really need to shorten down the commands to acronyms.


    Also V1.00 is looking nice looking fwd the the options and uses escp like the abiliy for it to remember the player name im working wtih and auto fill playername in using that new command and the sign rollback is nice.


    I know about the undo feature btw :p and the redo :), comming from a person who likes to find those two as standard options in any essential server security plugin.
     
  25. Offline

    DiddiZ

    v1.00 progress update:
    Content of broken chests/furnaces/dispensers gets logged
    next step: rollback of chest accesses :D
     
  26. Offline

    MangoStarr

    I would like to thank you, on behalf of my server for making this plugin! :)

    I just had someone burn down my spawn town and I was able to find who it was within seconds, and fix everything! :D

    One thing I noticed, it didn't roll back the torches! :eek:

    Still though, thank you very much! :) :) :)
     
  27. Offline

    Ptonjalken

    Nothing at all comes up for me :/ it knows i have the /lb commands since it says so in help. but nothing at all with any cmds :/
     
  28. Offline

    Koxk

    Hey!

    Im trying to find out who stole from my chest. So I get a wooden pickaxe and rightclick the chest. Only thing is, it only shows who entered it today. And as it just changed day like 2 hours ago... I can't see who opened it. Is there a way to make it show more then 1 day ?
     
  29. Offline

    DiddiZ

    Yes, bukkit never fires block break hooks on torches/sign/etc which are attached to broken blocks.
    Well, seems like logblock got an error at sratup and disabled itself. Look into the serverlog at startup.
    Hm, it should ...
    2 things:
    ATM it's not possible to show older history than the 15 showed (with v1.00 it will).
    But that's not the matter as I read you post, so:
    What's you value for keepLogDays?
     
  30. Offline

    Drageer

    Uh not rolling back creeper explosions?
    My worlds are all listed in the config and I have all the permissions
    using RB 766
    here's a pic:
    [​IMG]

    Using Multiverse and I went from the world listed in server properties to my other world [if that helps]
     
  31. Offline

    DiddiZ

    Did you enable explosion logging?
     

Share This Page