New addition to the Snap! Websites: snapwatchdog

Just made a new addition to the project: snapwatchdog.

This is a daemon running in the background used to gather statistics about each server running in a Snap! cluster.

The statistics are saved in an XML file1 and already include the following information:

  • CPU usage
    • Average load for 1, 5, and 15 minutes
    • Total usage in User, System, Idle modes
    • Total count of Page Cached and Swap Cache
    • Time when the system was last rebooted
    • Total number of processes, number of running and blocked processes
  • Memory usage
    • Total memory, free memory, memory used by user, buffers, cache
    • Swap memory available and total
  • Disk usage
    • List partition with their total size and used blocks
  • Process existance
    • Return whether the process is missing or is running, if running also give:
    • Instant CPU usage
    • Total size (virtual memory) allocated for this process
    • Total space of memory in use (resident)
    • Whether the process is connected to a TTY
    • Amount of time used up so far (user and system)

This information is saved in a file and in the database. It will also be communicated between servers at some point. I am planning to write a plugin that will display all of that information to the end user within the website. This way it will be really easy to monitor your cluster without having to log in each computer one by one.

The daemon is expected to be a stand alone process, although it requires the Snap! C++ library to run.

The service also comes with a plugin used to display the results to the end user.

  • 1. Ready to be processed by an XSLT stylesheet to present the results to the end user.

Snap! Websites
An Open Source CMS System in C++

Contact Us Directly