6 Simple Android Apps for Monitoring and Managing Your Linux Server
If you're running a Linux server you probably want to know when there are any issues the moment the incident happens so you can address it sooner and minimize any service outage. This is why mobile server monitoring and management apps can be very useful. They allow you to check on things wherever you are.
Of course, there are many server monitoring services available that require you to sign up and possibly pay a monthly fee to use. They can notify you through email or they offer an app of their own that integrates with the service. If you're using a VPS provider such as Linode you may have a service like this built in, and can use their own app.
If you don't want to sign up or pay for such a service, or simply want a different or additional solution, these 7 Android apps are excellent considerations.
They've been picked out and checked to ensure that they are easy to set up, don't require registration, are free, and work well.
ConnectBot is a simple app that lets you easily log in to your server via Secure Shell (SSH) and access your server's command line. From there you can run any command your server user account is allowed to run just as if you logged in from a PC. ConnectBot allows you to manage multiple connections, and also supports public key authentication and key management. Connections can also be assigned colors if you've got multiple accounts so you can more easily identify each.
It's also got a bunch of other neat features like the ability to set the background color of the terminal, which terminal emulation mode to use (like screen, xterm, xterm-color etc.), scrollback size, managing screen rotation, full screen option, and so on. It doesn't look like much when you start it up, but it's actually quite powerful.
With a straight up access to your secure shell command line you can check up on your server anywhere you are. For example you can run various system monitoring commands like htop or nmon to check up on running processes and their resource usage. And if you notice any issues you've got full access so you can fix them immediately. It's great to use in combination with another monitoring solution, one that's capable of notifying you as soon as a problem arises so you can immediately connect and get it fixed.
Server Auditor has the same basic function as ConnectBot, and the same benefits, but it has a nice modern user interface and easier to use virtual keyboard controls. For example it provides you quick access to function keys, Ctrl, Tab, Escape, PageUp, PageDown, Home, End, and arrow keys.
Like ConnectBot it allows you to manage multiple connections, and they also persist so even if you leave the view of a connected server you can get back to it, and it will remain logged in and running whatever it is running (if anything). Public key authentication and key management is also built in. Server Auditor also supports adding and managing port forwarding rules.
Settings that are available include customizing the color scheme and font of the terminal, pinch to zoom option, ability to set the pin code, length of the buffer size, and so on. All in all it is on par with ConnectBot in terms of functionality, but has some things ConnectBot and misses a few things ConnectBot does have. So which you use will come down to your preferences in terms of needed features and user interface style.
This app, named like a bunch of others just "Server Monitor" (which is why we include the name of the developer), is simple but quite useful for basic server monitoring.
You can add a server by simply specifying its host name (or domain name) and IP address and it will ping it to check if it's online. Then you can add components to each server, supporting TCP and TCP over SSH, which allow you to check on specific ports running on a given server. Settings allow you to set the polling frequency (default being 15 minutes), sound and vibrate notifications, and whether to start te service automatically or not.
It will run in the background and notify you if something goes offline. It's a pretty simple and effective way to monitor for service downtimes.
The function of httpmon is somewhat similar to that of the Server Monitor above as it can also be used to check on specific hosts and ports, but it goes much further than that.
Besides the server host and port (specified under the "Request" option) you can set up a number of conditions for which it should check as well. Besides simply checking if the service is online by pinging it you can also add conditions that check for a specific response code, response time, content of the header and content of the actual content sent over HTTP.
If a certain condition is not met it can send a push notification (alert sound, flash or vibrate) or send you a text message. It will also log all of the requests into a log you can view for full details of each request.
If neither of the above suit your needs and preferences another one to try is HostEye, a neat looking app that allows you to keep an eye on the uptime of various hosts and ports of running services and notify you if something's gone down. It can alert you through a phone call or by sending an email, and you can also add a widget on the home screen showing the status of your services.
The lite version is free with the basic functionality, which may be enough for most. Pro version adds push notifications and some extra settings. You may like HostEye for its ability to notify via email and phone calls, its widget, and its look & feel.
Monyt is a bit different from previous apps. While it allows you to monitor the online status of your server it's mostly useful if you want to check on various details about the current state of your server, things like response time, CPU load, memory usage, storage use, and bandwidth.
It's got three tabs for each added server. The info tab shows your server's operating system version, exact kernel used, and CPU model. The status tab shows you the current uptime, load averages, RAM usage, and space usage at the time of its last check. The history tab shows graphs depicting your server's bandwidth, memory, and CPU usage over time giving you an excellent overview of how your server is doing with regards to its resource use and performance.
Monyt has only one small caveat in that you've got to download a PHP script in a publicly accessible directory on your server, and then point the app to it. This script collects all of that information and the app picks it up and displays it.
Considering that none of this kind of information is exactly a secret, and the access is read-only, this probably doesn't pose any real security concerns.
Install at least two of these apps and use them in combination.
Use one of the three service monitoring apps depending on your needs and preferences to make sure you know when something isn't online and working. The httpmon app will give you the most detail if you're concerned about performance of your services, and not just whether it's online.
Use ConnectBot or Server Auditor for quick access when you need to check on details or fix issues when you are notified of a problem.
And use Monyt to periodically check on how your server's resource usage is going to see if there are any weird spikes or other anomalies, and to make sure it's running within its means.
With just three tiny, free, simple apps you've got yourself a pretty decent server monitoring and management solution on your phone.