4337 links
  • Arnaud's links
  • Home
  • Login
  • RSS Feed
  • ATOM Feed
  • Tag cloud
  • Picture wall
  • Daily
Links per page: 20 50 100
page 1 / 1
1 results tagged source x
  • thumbnail
    Init script for Graphite carbon-cache

    ! /bin/sh

    BEGIN INIT INFO

    Provides: carbon-cache

    Required-Start: $remote_fs $syslog

    Required-Stop: $remote_fs $syslog

    Default-Start: 2 3 4 5

    Default-Stop: 0 1 6

    Short-Description: carbon-cache init script

    Description: An init script for Graphite's carbon-cache daemon.

    END INIT INFO

    Author: Jeremy Chalmer

    #

    This init script was written for Ubuntu 11.10 using start-stop-daemon.

    Note: Make sure you set the USER field in /opt/graphite/conf/carbon.conf to be the same

    user that owns the /opt/graphite/storage/ folder. Carbon-cache will be invoked as that

    username on start.

    #

    Enable with update-rc.d carbon-cache defaults

    Source init-functions:

    #source /lib/lsb/init-functions
    . /lib/lsb/init-functions

    PATH should only include /usr/* if it runs after the mountnfs.sh script

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

    Path to Graphite

    GRAPHITE_HOME=/opt/graphite

    Name of executable daemon

    NAME=carbon-cache
    DESC=carbon-cache

    #Carbon has its own logging facility, by default in /opt/graphite/storage/log/carbon-cache-*

    Path to Executable

    DAEMON=$GRAPHITE_HOME/bin/carbon-cache.py

    NOTE: This is a hard-coded PID file, based on carbon-cache.py. If you have more the one carbon-cache

    instance running on this machine, you'll need to figure out a better way to calculate the PID file.

    PIDFILE=/opt/graphite/storage/carbon-cache-a.pid

    SCRIPTNAME=/etc/init.d/$NAME

    Exit if the package is not installed

    if [ ! -x "$DAEMON" ]; then {
    echo "Couldn't find $DAEMON or not executable"
    exit 99
    }
    fi

    Load the VERBOSE setting and other rcS variables

    [ -f /etc/default/rcS ] && . /etc/default/rcS

    #

    Function that starts the daemon/service

    #
    do_start()
    {

    Return

    #   0 if daemon has been started
    #   1 if daemon was already running
    #   2 if daemon could not be started
    
        # Test to see if the daemon is already running - return 1 if it is. 
    start-stop-daemon --start --pidfile $PIDFILE \
        --exec $DAEMON --test -- start > /dev/null || return 1
    
        # Start the daemon for real, return 2 if failed
    start-stop-daemon --start --pidfile $PIDFILE \
        --exec $DAEMON -- start > /dev/null || return 2

    }

    #

    Function that stops the daemon/service

    #
    do_stop() {

    Return

    #   0 if daemon has been stopped
    #   1 if daemon was already stopped
    #   2 if daemon could not be stopped
    #   other if a failure occurred
    log_daemon_msg "Stopping $DESC" "$NAME"
    start-stop-daemon --stop --signal 2 --retry 5 --quiet --pidfile $PIDFILE
    RETVAL="$?"
    [ "$RETVAL" = 2 ] && return 2
    
        # Delete the exisitng PID file
    if [ -e "$PIDFILE" ]; then {
        rm $PIDFILE
    }
        fi
    
        return "$RETVAL"

    }

    Display / Parse Init Options

    case "$1" in
    start)
    [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
    do_start
    case "$?" in
    0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
    2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
    stop)
    [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
    do_stop
    case "$?" in
    0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
    2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
    esac
    ;;
    restart)
    log_daemon_msg "Restarting $DESC" "$NAME"
    do_stop
    case "$?" in
    0|1)
    do_start
    case "$?" in
    0) log_end_msg 0 ;;
    1) log_end_msg 1 ;; # Old process is still running
    ) log_end_msg 1 ;; # Failed to start
    esac
    ;;
    )

    Failed to stop

    log_end_msg 1
    ;;
    esac
    ;;
    status)
    if [ -s $PIDFILE ]; then
    pid=cat $PIDFILE
    kill -0 $pid >/dev/null 2>&1
    if [ "$?" = "0" ]; then
    echo "$NAME is running: pid $pid."
    RETVAL=0
    else
    echo "Couldn't find pid $pid for $NAME."
    RETVAL=1
    fi
    else
    echo "$NAME is stopped (no pid file)."
    RETVAL=1
    fi
    ;;
    *)
    echo "Usage: $SCRIPTNAME {start
    stop restart status}" >&2
    exit 3
    ;;
    esac
    September 11, 2014 at 4:00:51 PM GMT+2 - permalink - archive.org - https://gist.github.com/chalmerj/1492384
    carbon graphite init
Links per page: 20 50 100
page 1 / 1
Shaarli - The personal, minimalist, super-fast, database free, bookmarking service by the Shaarli community - Help/documentation