Application RemoteToolkit - Restarts + crash detection + auto saves + remote console!

Discussion in 'Bukkit Tools' started by drdanick, Jan 15, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    drdanick

    Minecraft RemoteToolkit
    -Less downtime, more fun for your players, more power to you!

    Are you a Minecraft server administrator? Do you value up-time and stability? Do you fancy the ability to remotely control your server, both in-game and out of game, in a myriad of useful ways from a plethora of different devices?
    If you answered yes to any of the above, then the Minecraft RemoteToolkit is for you!


    What the Minecraft RemoteToolkit Plugin and Wrapper do for you:
    • Provides almost perfect server uptime with no need for action from an owner/administrator!
    • Have your server save and restart at any time period with configurable restart warnings!
    • The Toolkit guarantees a restart within the set restart period, even if your server crashes, becomes unresponsive, or encounters a "SEVERE" exception!
    • Remotely control every function of the Toolkit, even from your smart phone!
    • Full remote console access via telnet with support for multiple terminal types!
    • Telnet daemon conforms to current Telnet related RFCs!
    • Customizable alert messages!
    • Fully extendable though 3rd party modules!
    • Full feature set works with most craftbukkit builds!
    • Most features work with any Minecraft server variation, even vanilla!
    • Telnet can be disabled!
    For server administrators
    Download - Release 10, Alpha 15.3 [CB 1.7.2-R0.2] (wget friendly)
    Instructions & Documentation

    For developers
    UDP API REV 8 | Documentation
    Module API | Coming soon!

    For everyone
    Official IRC channel
    #remotetoolkit @ irc.esper.net


    "Help! I've downloaded it, but I do not know how to get it working!"
    Stop! Before you give up or ask for help, make sure you have read the step-by-step installation instructions on the wiki page. If you are still having problems, please do not be hesitant to post a request for help on this thread or in the IRC channel - no matter how simple your problem seems.


    Todo


    [​IMG][​IMG]
    Any donation would be very much appreciated. I'm but a poor University student, and I sacrifice quite a lot of unpaid time to keep the Toolkit updates and support flowing.

    Thank you to the following who have chosen to support the Toolkit through a donation:
    Deren909, marshall007, Vittek, clanslots, meee, KyneSilverhide, szoller, hungoverfurball, Lama_0, Viet, acc1dent, joby890, Liger_XT5
     
    Last edited: May 6, 2017
  2. Offline

    Satros

    Great kit, increased my server up time by a lot, but there is still one thing that happens to a bunch of people where the server doesn't really crash but just stops allowing connections and stuff.

    Basically it just gives Read Timed Out errors over and over and no body can connect until its restarted.

    There is a whole thread on it here:
    http://forums.bukkit.org/threads/read-timed-out.16065/

    Here is a screencap of my console running your tool kit with the error.
    Show Spoiler
    [​IMG]

    http://i.imgur.com/TLJuw.png

    Sometimes Read Timed Out error happens randomly once and the server keeps going fine, but other times it happens many times in a row and wont restart or allow people to play. It is essentially crashing without crashing.

    This could be easily fixed if say if there was 3 Read Timed Out errors in a row, restart the server

    Hope you implement this, if you do i'm pretty sure my server and many others would never go down again.
     
  3. Offline

    bradgillap

    I already have a wrapper through multicraft for my server.

    Is there a way I could use this existing wrapper to get this going? I'm really interested in IOS functionality.

    Code:
    #To create a custom config for a mod create a file with the same name
    # as the jar file and append ".conf", for craftbukkit this would be
    # "craftbukkit.jar.conf".
    #The following config is an example that lists all possible options,
    # without actually changing anything (it remaps the commands on
    # themselves)
    #
    #General configuration. If this contains a setting called "file" the
    # [commands], [start] and [parse] sections will be loaded from this
    # other file
    [config]
    name=Mod: Craftbukkit
    source=http://ci.bukkit.org/job/dev-CraftBukkit/promotion/latest/Recommended/artifact/target/craftbukkit-0.0.1-SNAPSHOT.jar
    configSource=http://www.multicraft.org/download/conf/?file=craftbukkit.jar.conf
    
    #encoding used for strings sent to and received from the server
    [encoding]
    ## The encoding to use to send data to the Minecraft process
    ## Use "system" for your current locale.
    ## default: system
    encode=latin-1
    ## The encoding to use to decode data received from the Minecraft process
    ## Use "system" for your current locale.
    ## default: system
    decode=system
    
    ##command line customization
    ## Available variables
    ## - {JAVA}
    ## - {START_MEMORY}
    ## - {MAX_MEMORY}
    ## - {JAR_DIR}
    ## - {JAR_FILE}
    ## - {JAR} -> {JAR_DIR}/{JAR_FILE}
    ## - {MULTICRAFT_DIR} The Multicraft installation directory
    ## - {BASE_DIR} The directory containing all the servers
    ## - {SERVER_DIR}
    ## - {WORLD}
    ## - {IP}
    ## - {PID_FILE}
    [start]
    command="{JAVA}" -Xmx{MAX_MEMORY}M -Xms{START_MEMORY}M -Djline.terminal=jline.UnsupportedTerminal -jar "{JAR}" nogui
    
    #command remapping
    [commands]
    say=say
    list=list
    save-on=save-on
    save-off=save-off
    save-all=save-all
    stop=stop
    tell=tell
    give=give
    tp=tp
    deop=deop
    op=op
    pardon-ip=pardon-ip
    ban-ip=ban-ip
    pardon=pardon
    ban=ban
    kick=kick
    help=help
    
    #adjust message parsing, contact us if you require this
    [parse]
    clean=(^[>\r]+|\x1b\[[0-9;]+m)
    hide=(There are |\d+ players are)
    players=^\s*(?:Connected\s*players|Online \([\d]+[^)]*\)): (.*)$
    
     
  4. Offline

    e_zach

    whats happening exactly, saying nothing works doesn't give us much to work with, is the wrapper exiting straight away, throwing errors what?
    i have personally thrown a heap of ram at the server (6gig) and restart daily, so i haven't personally seen this problem in a long while. it's due to notches leaky code. but i too agree that the wrapper should catch this and restart after a few in a row.

    if it's getting to that point, then it's found java correctly, it's an issue with the argument format of the main username : password
     
  5. Offline

    Switch0r

    Hey i am trying to get this plugin working for 3 days now.
    I tried everything, thats why i am here for one more try.
    If i start the rtoolkit.bat then the server starts and hangs with this:
    -----------------------------------------------------------------
    Minecraft Remote Toolkit R10 Alpha 10.31
    Initializing...
    Loading toolkit properties...Done.
    Loading toolkit modules...Done.
    Wrapper is running on: Windows 2003 5.2 x86
    Starting wrapper...
    Starting UDP listen server on port 25561
    18:23:13 [INFO] Starting minecraft server version Beta 1.7.3
    18:23:13 [INFO] Loading properties
    18:23:13 [INFO] Starting Minecraft server on *:25570
    18:23:13 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-945-
    g73697a4-b1000jnks (MC: 1.7.3)
     
  6. Offline

    ewized

    Im Having a problem where it do not tell the chat that the server is restarting and i have the plugin and the wraper installed.
     
  7. Offline

    e_zach

    does the server run fine without the wrapper? what OS are you running the wrapper on? whats in your wrapper properties? (paste your config here in a code block or on pastie.bin or similar.)
    what do you have the intervals set to notify the player to? does any errors pop up in the console? (like a invalid command error?)
     
  8. Offline

    RG_PankO

    My server sometimes goes in a Read time out, Connection Lost loop and until the next autorestart comes it will be offline.

    I am searching for a way to fight that off.

    What are these settings for:
    severe-exception-detection-level - Sets the aggressiveness of the severe exception detection algorithm. Aggressiveness is defined by an integer between 1 and 3 (inclusive), where 1 is the least aggressive and 3 is the most.

    server-heartbeat-threshold - Sets the amount of time the Toolkit wrapper waits before sending a heartbeat request to the Toolkit plugin.

    failed-heartbeat-restart-count - Sets the number of unanswered heartbeat requests required before a server restart is forced.

    They have their description but I am not sure what does that mean.
    failed-heartbeat-restart-count - the default value is 5, I set it to 2 - isn't this somekind of freezed server detection? Like my problem?
    server-heartbeat-threshold - and this is?
    severe-exception-detection-level - if I want the server to restart on any problems that may make him crush this should be 1 or 3?
     
  9. Offline

    Switch0r

    Does the server run fine without the wrapper? Yes
    What OS are you running the wrapper on? Windows 2003 5.2 x86
    Whats in your wrapper properties?
     
  10. Offline

    drdanick

    There should be a backup module for R11.

    Can you post the body of wrapper.properties?

    That is printed when the UDP server periodically refreshes itself. You shouldn't need to worry about it, unless it starts printing the error excessively in under a minute.

    Can you post the command you are trying to use to start the wrapper? (or post the body of the .bat/.sh if you're using one)

    R11 will has a capable API in place, such that a module could be developed to perform this. If I have time, I will write the module myself. Other developers will also be welcome to write it, if I am too busy.

    I'm not sure how well the toolkit will fare being run underneath a wrapper, but to get it working, you should simply need to use this for 'command=':
    Code:
    command="{JAVA}" -Xmx40M -Xms40M -jar Minecraft_Rkit.jar [plain]username:password[/plain]
    
    There have been a few issues with getting Windows XP/2003 to work correctly with the toolkit. The log you posted should help me pinpoint the issue, so thank you for that. In the mean time, try pressing the enter key a few times as the server starts. I am told it works if you do this before it appears to hang.
    This is quite an odd workaround, but sadly it's all that can be done at this time.

    severe-exception-detection-level defines what [severe] errors it tries to match console output with. As I recall, a value of 1 will only have it restart on "unexpected exceptions", 2 will have it restart on errors marked as [severe]. I do not exactly remember what the 3rd level does, but it is not recommended as it will generally restart the server too often. This was always a dirty fix, and I would like to have something better made for release 11.

    For the heartbeat settings, you should understand how the system works:
    -After a set amount of time (defined by server-heartbeat-threshold) the wrapper sends a command through the console. (In the same way any other command is sent)
    -The plugin picks up that this command was sent, and prints a response back to the console.
    -The wrapper listens for a response from the plugin. If the wrapper has sent 5 (the number can be changed with failed-heartbeat-restart-count) "heartbeat commands" through the console without receiving any response from the plugin, the wrapper assumes the server is unresponsive, and thus attempts to restart it.

    Generally, the default heartbeat settings I have provided will be adequate for most users. Although, some may favour a smaller threshold but larger restart count. This may, in some cases, more accurately convey the responsive state of the server. Just remember, that the time it takes to restart an unresponsive server is always at least the restart threshold multiplied by the restart count. By default, it is 5*(1 minute), which is 5 minutes.

    This may be a little much to read, so tell me if I need to explain anything more a little clearer than this.

    I recommend sticking with the default heartbeat settings, and if you want, set the severe detection level to 1.
     
  11. Offline

    slodominator

    link is not working. in fact that whole website is down.

    please fix link i need this! :)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 2, 2016
  12. Offline

    drdanick

    The files are now being hosted on a temporary server. Sorry for the inconvenience.
     
  13. Offline

    Nboy

    Hi there,

    I have a problem trying to install this Server Remote Toolkit.png

    So i am trying to start the script using this: java -Xmx30M -Xms30M -XX:MaxPermSize=40M -jar Minecraft_RKit.jar USER:pASS
    But I only get this: "Unable to access jarfile..." :(
    Even though I've specified where my craftbukkit.jar is in wrapper.properties....

    Help please!!
     
  14. Offline

    drdanick

    Have you tried placing the toolkit jar in the same folder as craftbukkit.jar, and running it with minecraft-server-jar=craftbukkit.jar? Though, i'm not sure why an absolute path wouldn't work, java is clearly trying to use it. My only other suggestion is to check that you have permission to access the jar, but being OS X, you shouldn't already have permission.
     
  15. Offline

    Nboy

    Yes I have, the weird thing is that even if i change minecraft-server-jar=craftbukkit.jar to anything, it always says the same path when I am trying to start the script "unable to access jarfile..."
     
  16. Offline

    Puma D. Ace

    I'm using this with milkAdmin.

    Why do I always get this message:

    14:22:21 [INFO] Unknown console command. Type "help" for help.
    14:23:21 [INFO] Unknown console command. Type "help" for help.
    14:24:21 [INFO] Unknown console command. Type "help" for help.



    Is this normal?

    EDIT: I really forget the Plugin...
     
  17. Offline

    kerelious

    Hey please get your website back up!! My server is down and since you don't an android app the site is my only means of adminning my server while I'm on vacatiin. Wrapper usually works threw
     
  18. Offline

    Nboy

    Have you checked that the script and all stuff is compatible with the new mac os x Lion 10.7? Maybe it is that that is causing my problem!?
     
  19. Offline

    Nori_Silverrage

    Thanks for making this wrapper. Its a very nice tool to have! I'm really looking forward to the API so we can have custom modules. That will be really sweet. Oh and of course backups. :)
     
  20. Offline

    Switch0r

    Ok thanks i got it working now with that "enter" fix, could it be that it eats alot of cpu and memory ?
     
  21. Offline

    drdanick

    Make sure that when you launch the toolkit, you're doing so from the same location to all of the jar files. It may be an issue that craftbukkit.jar isn't actually the relative path to the server jarfile. The problem shouldn't be with 10.7, as I have not noticed any problems with it.

    Make sure that the plugin jarfile is in your plugins directory.

    It's up again. Sorry for the inconvenience.

    No, it's something quite a lot more convoluted. The problem may be partly to do with Bukkit itself, but I haven't really had the chance to track down the issue.
     
  22. Offline

    Scarnick

    Hey Guys My Hoster Wont Let Me Use .bat Files and wonder if you have a workaround? its for the lwrkit.bat thing
    . Thanks
     
  23. Offline

    Switch0r

    Well it uses 2 times more ram with the remote toolkit running on our windows server 2003 with 4GB RAM, but maybe i have my config wrong?
    If theres 1 player or 40 players on the server the mc server always stays at 1.6GB
    [​IMG]
    Code:
    #Minecraft Remote Toolkit Properties File
    #Fri Jul 29 22:31:50 CEST 2011
    forced-restart-delay=5m
    maximum-heap-size=1512M
    toolkit-autoshutdown-alerts=10m,5m,1m
    restart-on-severe-exception=true
    server-saveall-period=0
    extra-runtime-arguments=-Djline.terminal\=jline.UnsupportedTerminal
    force-save-on-restart=false
    server-heartbeat-threshold=1m
    server-restart-alerts=10m,5m,1m
    minecraft-server-jar=craftbukkit.jar
    initial-heap-size=1512M
    overridden-process-arguments=
    failed-heartbeat-restart-count=5
    severe-exception-detection-level=1
    server-arguments=nogui
    toolkit-autoshutdown-delay=0
    import-properties=false
    server-restart-delay=5h
     
  24. Offline

    TwistedFae

    Continue getting:
    Code:
    Error: Console input stream closed unexpectedly. Attempting to re-open stream in 20 seconds...
    \
    Every ten seconds or so. Startup command is as follows:


    Code:
    #Minecraft Remote Toolkit Properties File
    #Thu Jul 28 16:25:31 UTC 2011
    forced-restart-delay=5m
    maximum-heap-size=4000M
    toolkit-autoshutdown-alerts=10m,5m,1m
    restart-on-severe-exception=false
    server-saveall-period=0
    extra-runtime-arguments=-Djline.terminal=jline.UnsupportedTerminal
    force-save-on-restart=true
    server-heartbeat-threshold=1m
    server-restart-alerts=240m,120m,60m,30m,10m,5m,1m
    minecraft-server-jar=craftbukkit.jar
    initial-heap-size=4000M
    overridden-process-arguments=java -server -Xmx4G -XXermSize=128m -XX:MaxPermSize=256m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XXarallelGCThreads=3 -XX:MaxGCPauseMillis=5 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -Xnoclassgc -XX:UseSSE=3 -XX:+UseLargePages -XX:+UseFastAccessorMethods -XX:+UseStringCache -XX:+UseCompressedStrings -XX:+OptimizeStringConcat -XX:+AggressiveOpts -Djline.terminal=jline.UnsupportedTerminal -cp BiomeBukkit.jar:craftbukkit.jar org.bukkit.craftbukkit.Main
    failed-heartbeat-restart-count=5
    severe-exception-detection-level=1
    server-arguments=nogui
    toolkit-autoshutdown-delay=0
    import-properties=false
    server-restart-delay=6h
    Any ideas?
     
  25. Offline

    Nboy

    Do I need to have the craftbukkit.jar at the same place as where the world file, plugins-folder etc. is to get this to work?
     
  26. Offline

    Ben1002

    That is because initial-heap-size is the MINUMUM memory, You have it set to 1.5gb, So the minimum the minecraft server can use is 1.5gb. Thats how I have mine set, I prefer it like that, If you want it how it was before use this

    Code:
    #Minecraft Remote Toolkit Properties File
    #Fri Jul 29 22:31:50 CEST 2011
    forced-restart-delay=5m
    maximum-heap-size=1512M
    toolkit-autoshutdown-alerts=10m,5m,1m
    restart-on-severe-exception=true
    server-saveall-period=0
    extra-runtime-arguments=-Djline.terminal\=jline.UnsupportedTerminal
    force-save-on-restart=false
    server-heartbeat-threshold=1m
    server-restart-alerts=10m,5m,1m
    minecraft-server-jar=craftbukkit.jar
    initial-heap-size=100M
    overridden-process-arguments=
    failed-heartbeat-restart-count=5
    severe-exception-detection-level=1
    server-arguments=nogui
    toolkit-autoshutdown-delay=0
    import-properties=false
    server-restart-delay=5h
    Kind regards
    Ben
     
    drdanick likes this.
  27. Offline

    drdanick

    Who is your hoster?

    Are you using any external wrappers/scripts to start the toolkit? Try launching the server with the default toolkit settings and see if the problem persists.

    Generally the world and plugin directories are both subdirectories of the deirectory that craftbukkit.jar resides in. How is your folder layout actually set up? Can you give me example absolute paths to the main resources of bukkit and the toolkit on your system?

    I'll look into it. However, if java is having problems with the standard input file descriptor, there is likely an issue with the way java is set up. What is the output of java -version when entered into the command line?

    My mistake. I said that was related to the standard input file descriptor, when in actual fact it appears that that error is thrown by the file descriptor related to the bukkit server process. It appears the process is being killed without the toolkit process being correctly notified. I will try to work on a fix for this in Release 11. One more thing, when this happens again, can you give me the output of the following bash command (substituting USERNAME for your username):

    Code:
    ps -u USERNAME | grep java
    
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 2, 2016
  28. Offline

    Switch0r

    Thanks Ben that helped me alot :) , our mc server is running great.
    So the max RAM i can use for mc on a Windows 2003 32Bit server is 1,5GB ?
    The only solution is to change to 64Bit ?
    And how much RAM do i need for 64 player because i had like 50 players on it with no lag.
     
  29. Offline

    Scarnick

    Xenonservers.com
     
  30. Offline

    drdanick

    Unfortunately, they do not seem to allow you to change the arguments used to launch the server. I reccomend getting in contact with them about this (don't mention a .bat or.sh, it's not technically needed to start the toolkit, and as far as i've heard, .bat/.sh is a buzzword that generally results in a "we won't support that" reponse)
     
  31. Offline

    Zen9400

    This wrapper does not force my server to end properly after a read timed out error. I have to normally kill the process with SIGKILL (9). If i sent it SIGTERM (15) it does nothing. Maybe you could make forcing shutdown more forceful. Although I do run my server root, which I probably shouldn't do. Would it be possible to fix this?
     
Thread Status:
Not open for further replies.

Share This Page