Ninja Pumpkin Mutants

    apptime

    0.2.10 • Public • Published

    apptime

    Server uptime monitoring linked to a mailer. You can run any type of command to check that something is up/down.

    image

    Quickstart

    $ sudo apt-get install g++ zlib1g zlib1g-dev autoconf # for ejdb 
    $ npm install apptime
    $ pico /tmp/config.coffee # edit config file 
    $ PORT=6661 CONFIG=/tmp/config.coffee apptime

    You can leave the PORT empty. If you do not provide a CONFIG it will default to the example one in the app directory. The path to CONFIG is relative to the app directory unless the path starts with a / in which case it is absolute.

    Config

    The .coffee file (think of it as a JSON file on steroids) exports the following:

    timeout

    How often to monitor the servers (in minutes). Each batch will run in a queue with a concurrency of 1.

    email.active

    Shall we actually send an email? You can still use the web interface.

    email.fields

    For config of these follow instructions at Nodemailer.

    email.smtp

    For config of these follow instructions at Nodemailer.

    email.templates

    An object with Eco templates for building emails to be sent. Use HTML, plaintext is auto-generated.

    handlers

    Each key is a type of a job to run. Just a way to allow you to run monitor the same server in more ways than one.

    handlers.command

    A command to execute. All commands are run relative to the scripts directory (of course you can run commands linked to your /bin directory).

    An err or stderr on child_process.exec of the command means the server is down.

    Command uses Eco syntax and is passed arguments from handlers.jobs (see below).

    handlers.success

    Not required. Can be a string or a RegExp that will be used to check if command was succesfull. This happens after we check whether the command throws err or stderr (see above).

    handlers.jobs

    Keys represent names of servers. The values are arguments to be passed to the commands (see above).

    Client-side app

    Install dev dependencies (component etc.):

    $ npm install -d

    Install components:

    (cd src/dashboard/app ; ../../../node_modules/.bin/component install)

    Re-build the sources:

    $ coffee src/dashboard/build.coffee

    Keywords

    none

    Install

    npm i apptime

    DownloadsWeekly Downloads

    1

    Version

    0.2.10

    License

    none

    Last publish

    Collaborators

    • radekstepan