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

    ephesian

    so you can stop and start the server remotely?
     
  3. Offline

    TheShadow777

    hey i love this plugin, but can you make please a possibility to save the user, password and ip in the udp client !? :) and a possibility to make the "console say" with the remote toolkit would be very nice too :)
     
  4. Offline

    ephesian

    ill still cant get this to work. ive tried and read carefully, perhaps a YouTube clip is in order.
     
  5. Offline

    drdanick

    Open the .bat in notepad and replace 'java' with:
    Code:
    "%ProgramFiles(x86)%\Java\jre6\bin\java.exe"
    
    It is a known problem with bukkit. The wrapper should force a restart after about 5 minutes, but since I have not encountered that problem with bukkit before, I cannot verify anything.

    Yes, that is one of its features.
    And where are you stuck in the setup process?


    I'll look into having the UDP client data persistent. I may add the ability to issue commands (like 'say') over UDP, but I am still split on that decision. For the mean time, you should be able to log into the console via telnet and issue 'say' commands that way.


    @Fuzzwolf @virtualism What OS are you using? Also, how common is the problem and does it correct itself without restarting the wrapper?
     
  6. Offline

    Fuzzwolf

    I think that the Unknown Command is due to the periodic saves. The saves seem to work (as tested by an accidental server shutdown), yet they don't display a message besides "Unknown Command." I am using Windows 7. My plugins are:
    Citizens
    CommandBook
    iConomy
    iConomyChestShop
    LWC
    MagicCarpet
    MineQuest
    WorldEdit
    WorldGuard

    To the best of my knowledge, none of these plugins manipulate saves (I think ... ?).
     
  7. Offline

    virtualism

    Debian 6 64bit.
    http://pastebin.com/mjVqRQNe
    10 min, 10 times. Not been able to get rid of it. (With the timing, fuzzwolfs idea seems pretty reasonable :p)
     
  8. Offline

    drdanick

    @Fuzzwolf @virtualism What craftbukkit build are you using? Make sure the plugin component is up to date, and also try deleting the jar from the plugins folder.

    I think it is more likely that it is a problem with the periodic heartbeats.
     
  9. Offline

    virtualism

    760. 766. Yeah, i did see your 740 in the title, but i was stubborn. I can't restart the server right now, but i remember from last time i stopped using it that the message disappeared. I'll try updating it to be sure and getting rid of it, and running it on a virginal server, once people go to bed and I won't have to deal with the moaning about five minutes downtime.
     
  10. Offline

    SVoyager

    Would it be possible to add the ability to reboot the computer itself on a schedule like we currently can for the minecraft service. Or have the ability to shutdown the minecraft service completly and not restart? (I would then use window's scheduler for rebooting the machine).

    I am currently running the server on a not too powerful machine but this is temporary. I have noticed that it has hard time after maybe a week of use. Minecraft is set to restart every mornings via your wrapper but seems like the computer would also needs to restart too for optimal performance. So either this could be done via your wrapper? or I would do it via window's scheduler service (but it would be best if minecraft would not be running when that happens, don't want to endup with corrupted data or things like that). I can at least set the reboot to happen just after minecraft has rebooted (it would have saved before the reboot) but still, ending minecraft improperly is not very recommended i guess.

    Think you can have a solution?

    Thanks!!
     
  11. Offline

    Fuzzwolf

    Hm, I am using 740 yet I still have the same issue. Virtualism, are you using any of the same plugins that I am using?

    CommandBook
    iConomy
    iConomyChestShop
    LWC
    MagicCarpet
    MineQuest
    WorldEdit
    WorldGuard
     
  12. Offline

    virtualism

    see above.
     
  13. Offline

    drdanick

    @Fuzzwolf @virtualism Your problem appears to be that the plugin component is not enabled.
    Make sure that MinecraftRKitPlugin.jar is in the plugins directory of your server. Your problem is consistent with exactly what would happen if the wrapper attempted to send heartbeat requests if the plugin was not active.
     
    virtualism likes this.
  14. Offline

    Zane B.

    umm sir there is an auto-save plugin, it's even called Auto-save.
     
  15. Offline

    drdanick

    That post was made months before this supported auto-saves, and before that other plugin even existed....
     
  16. Offline

    Zane B.

    oh ok my bad
     
  17. Offline

    Mighty Mackinac

    Love this plugin. absolutely awesome.

    I do have a question though. Is there anyway that something like THIS could be added? basically, if someone tries to get into the server will its being held or is down, the RTK will display a message telling them to wait.

    Also, are there any GUI modules for the RTK? if not, do you think that running THIS with the RTK would work?

    Thanks again!
     
    BurnseyBoi likes this.
  18. Offline

    ephesian

    how do i enable my startup bat, i got

    Code:
    @ECHO OFF
    IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="64" "%ProgramFiles(x86)%\Java\jre6\bin\java.exe" -Xincgc -Xmx1024M -jar "%~dp0craftbukkit-0.0.1-snapshot.jar"
    IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="86"  java -Xincgc -Xmx1024M -jar "%~dp0craftbukkit-0.0.1-snapshot.jar"
    PAUSE
    when i start it this why the client doesnt connect. but when i use

    @echo off
    java -Xmx30M -Xms30M -XX:MaxPermSize=40M -jar Minecraft_RKit.jar ****:****

    the client works, how do i add the rtoolkit.bat info to my customer server starter?
     
  19. Get this quite often while server is on .hold, harmless?

    java.io.IOException: Stream closed
    at java.lang.ProcessBuilder$NullOutputStream.write(ProcessBuilder.java:434)
    at java.i:confused:utputStream.write(OutputStream.java:116)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at com.drdanick.McRKit.Wrapper$4.run(Wrapper.java:376)
     
  20. Offline

    Combat Wombat

    My server randomly crashes and restarts with no error messages at all. :S

    Gives the error "Internal exception: Java.net.SocketException: Connection reset by peer: socket write error" when it crashes and restarts.
     
  21. Offline

    drdanick

    I'm exploring the idea of having it send messages to people connecting to the server while held. It will likely be in a future update.
    As for the GUI, i'm almost certain it could work. I cannot give any instruction until i've tested it myself, though.

    I'm not sure about exactly how your custom server starter works, could you give me an idea?
    If you wanted to, say, have it start with a similar .bat format to the other startup bat, you can use this code:

    Code:
    @ECHO OFF
    IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="64" "%ProgramFiles(x86)%\Java\jre6\bin\java.exe" -Xincgc -Xmx1024M -jar "%~dp0Minecraft_RKit.jar USER:PASS"
    IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="86"  java -Xincgc -Xmx1024M -jar "%~dp0Minecraft_RKit.jar USER:PASS"
    PAUSE
    That should be normal. I'll work on suppressing it in a future update.

    That is a problem on Bukkit's end. It is restarting because either the server process crashed entirely, or it became unresponsive.
     
  22. Offline

    Mighty Mackinac

    Awesome, thanks dude! I'll give it a try and let you know what happens.
     
  23. Offline

    amunro

    Quick scenario! I run my server off an amazon micro instance, that seems to throttle my IO if it is overused. However, with this plugin, my server can run pretty smoothly if i disable minecrafts auto-save. Problem is that everytime the server restarts, i need to re-enter the command 'save-off' into the console or it will continue having lag spikes when it trys to save.

    Anyone know how i can perminantly disable the minecraft auto-save and use this plugin to save instead?
     
  24. Offline

    herschel

    trying to get this working with jrockit, but i get this error:

    Code:
    Minecraft Remote Toolkit V1.0_b19_23 ALPHA
    Initializing...
    Loading toolkit properties...Done.
    Loading toolkit modules...Done.
    Wrapper is running on: Linux 2.6.18-028stab070.14 i386
    Starting wrapper...
    Starting UDP listen server on port 25561
    May 17, 2011 4:27:42 PM net.wimpi.telnetd.net.PortListener run
    INFO: Listening to Port 25,561 with a connectivity queue size of 5.
    Exception in thread "Main Thread" java.lang.NoClassDefFoundError:
    Caused by: java.lang.ClassNotFoundException:
            at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:305)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:246)
    Could not find the main class: .  Program will exit.
    Restarting...
    jrockit launches fine with this command

    Code:
     /home/minecraft/jrockit-jdk1.6.0_24-R28.1.3-4.0.1/bin/java -Xms1024M  -Xmx1024M -jar /home/minecraft/craftbukkit-0.0.1-SNAPSHOT.jar
    need to make changes to wrapper.properties in order to accomidate jrockit

    Code:
    #Minecraft Remote Toolkit Properties File
    #Tue May 17 16:17:19 SGT 2011
    minecraft-server-jar=/home/minecraft/craftbukkit-0.0.1-SNAPSHOT.jar
    severe-exception-detection-level=1
    server-saveall-period=0
    maximum-heap-size=
    import-properties=false
    server-restart-delay=03\:00
    server-heartbeat-threshold=1m
    restart-on-severe-exception=false
    server-arguments=
    overridden-process-arguments=/home/minecraft/jrockit-jdk1.6.0_24-R28.1.3-4.0.1/bin/java -Xms1024M  -Xmx1024M
    failed-heartbeat-restart-count=5
    server-restart-alerts=10m,5m,1m
    forced-restart-delay=5m
    initial-heap-size=
    extra-runtime-arguments=
    
    input appreciated, thanks
     
  25. Offline

    THEK

    Is there a command to see how long it is till the next restart?
     
  26. Have not had much success with crash recovery, generally end up having to killall java.

    Stuff like: http://pastie.org/1915687

    Java just endlessly using CPU, never actually killing the server and restarting it.
     
  27. Offline

    virtualism

    For shame, Virtualism. Why do they let people like me administrate servers?

    Thanks. :3
     
  28. Offline

    amunro

    Guys how can i make it so everytime it does a world save, it does this:

    /save-on
    /save-all
    /save-off


    when you do a save-all while auto save is off, it doesnt work :S
     
  29. Offline

    Jutle

    Is there a way to STOP the server at like 19:00 instead of RESTARTING the server?
     
  30. Offline

    drdanick

    Working on a solution to that.

    Ah, you didn't specify the jar file when you overrode the process arguments. Use the following config:

    Code:
    #Minecraft Remote Toolkit Properties File
    #Tue May 17 16:17:19 SGT 2011
    minecraft-server-jar=/home/minecraft/craftbukkit-0.0.1-SNAPSHOT.jar
    severe-exception-detection-level=1
    server-saveall-period=0
    maximum-heap-size=
    import-properties=false
    server-restart-delay=03\:00
    server-heartbeat-threshold=1m
    restart-on-severe-exception=false
    server-arguments=
    overridden-process-arguments=/home/minecraft/jrockit-jdk1.6.0_24-R28.1.3-4.0.1/bin/java -Xms1024M  -Xmx1024M -Djline.terminal=jline.UnsupportedTerminal -jar /home/minecraft/craftbukkit-0.0.1-SNAPSHOT.jar
    failed-heartbeat-restart-count=5
    server-restart-alerts=10m,5m,1m
    forced-restart-delay=5m
    initial-heap-size=
    extra-runtime-arguments=
    
    That will be in the next update.

    Did you issue the forced restart manually, or was it triggered automatically? When/if this happens again, note down how many java processes are running and the resources each is using.

    I am currently working on that.
     
  31. Offline

    Zarius

    Great plugin/tool.

    Just a quick questions - is there anyway to cancel a pending restart? (eg. scheduled restarts every 6 hours, server's running fine and players are in the middle of something - perhaps ".skipscheduledrestart").
     
Thread Status:
Not open for further replies.

Share This Page