Skip to content

Instantly share code, notes, and snippets.

@leonsodhi
Last active February 18, 2020 22:06

Revisions

  1. Leon Sodhi revised this gist Feb 11, 2016. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions 01papertrail.config
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,5 @@
    # IMPORTANT: this example is potentially out of date. The latest version can be found here: https://github.com/papertrail/remote_syslog2/blob/master/examples/remote_syslog.ebextensions.config

    # See http://help.papertrailapp.com/kb/hosting-services/aws-elastic-beanstalk/
    # Usage:
    # - replace <VERSION> with the version of remote_syslog2 you want to use. Example: .../download/v0.14/remote_syslog_linux_amd64.tar.gz
  2. Leon Sodhi revised this gist Nov 17, 2015. 1 changed file with 5 additions and 0 deletions.
    5 changes: 5 additions & 0 deletions 01papertrail.config
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,9 @@
    # See http://help.papertrailapp.com/kb/hosting-services/aws-elastic-beanstalk/
    # Usage:
    # - replace <VERSION> with the version of remote_syslog2 you want to use. Example: .../download/v0.14/remote_syslog_linux_amd64.tar.gz
    # - replace <YOUR-TRACKED-FILES> with the files you want to monitor for new log lines. Example: - /var/log/httpd/access_log
    # - replace <YOUR-APP-NAME> with the name of the application
    # - replace <YOUR-LOG-DESTINATION> and <YOUR-PORT-NUMBER> with the values shown under log destinations: https://papertrailapp.com/account/destinations

    sources:
    /home/ec2-user: https://github.com/papertrail/remote_syslog2/releases/download/<VERSION>/remote_syslog_linux_amd64.tar.gz
  3. Leon Sodhi revised this gist Feb 12, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion 01papertrail.config
    Original file line number Diff line number Diff line change
    @@ -16,7 +16,7 @@ files:
    destination:
    host: <YOUR-LOG-DESTINATION>
    port: <YOUR-PORT-NUMBER>
    protocol: tls
    protocol: tls

    "/etc/init.d/remote_syslog":
    mode: "00555"
  4. Leon Sodhi revised this gist Dec 4, 2014. 1 changed file with 4 additions and 0 deletions.
    4 changes: 4 additions & 0 deletions 01papertrail.config
    Original file line number Diff line number Diff line change
    @@ -152,6 +152,10 @@ files:
    exit $RETVAL

    commands:
    00_stop_service:
    command: "/sbin/service remote_syslog stop"
    ignoreErrors: true

    01_install_remote_syslog_binary:
    command: "cp /home/ec2-user/remote_syslog/remote_syslog /usr/local/bin"

  5. Leon Sodhi created this gist Jul 21, 2014.
    163 changes: 163 additions & 0 deletions 01papertrail.config
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,163 @@
    # See http://help.papertrailapp.com/kb/hosting-services/aws-elastic-beanstalk/

    sources:
    /home/ec2-user: https://github.com/papertrail/remote_syslog2/releases/download/<VERSION>/remote_syslog_linux_amd64.tar.gz

    files:
    "/etc/log_files.yml":
    mode: "00644"
    owner: root
    group: root
    encoding: plain
    content: |
    files:
    - <YOUR-TRACKED-FILES>
    hostname: <YOUR-APP-NAME>
    destination:
    host: <YOUR-LOG-DESTINATION>
    port: <YOUR-PORT-NUMBER>
    protocol: tls

    "/etc/init.d/remote_syslog":
    mode: "00555"
    owner: root
    group: root
    encoding: plain
    content: |
    #!/bin/bash
    #
    # remote_syslog This shell script takes care of starting and stopping
    # remote_syslog daemon
    #
    # chkconfig: - 58 74
    # description: papertrail/remote_syslog \
    # https://github.com/papertrail/remote_syslog2/blob/master/examples/remote_syslog.init.d

    ### BEGIN INIT INFO
    # Provides: remote_syslog
    # Required-Start: $network $local_fs $remote_fs
    # Required-Stop: $network $local_fs $remote_fs
    # Should-Start: $syslog $named ntpdate
    # Should-Stop: $syslog $named
    # Short-Description: start and stop remote_errolog
    # Description: papertrail/remote_syslog2
    # https://github.com/papertrail/remote_syslog2/blob/master/examples/remote_syslog.init.d
    ### END INIT INFO

    # Source function library.
    . /etc/init.d/functions

    # Source networking configuration.
    . /etc/sysconfig/network

    prog="/usr/local/bin/remote_syslog"
    config="/etc/log_files.yml"
    pid_dir="/var/run"

    EXTRAOPTIONS=""

    pid_file="$pid_dir/remote_syslog.pid"

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

    RETVAL=0

    is_running(){
    # Do we have PID-file?
    if [ -f "$pid_file" ]; then
    # Check if proc is running
    pid=`cat "$pid_file" 2> /dev/null`
    if [[ $pid != "" ]]; then
    exepath=`readlink /proc/"$pid"/exe 2> /dev/null`
    exe=`basename "$exepath"`
    if [[ $exe == "remote_syslog" ]]; then
    # Process is running
    return 0
    fi
    fi
    fi
    return 1
    }

    start(){
    echo -n $"Starting $prog: "
    unset HOME MAIL USER USERNAME
    $prog -c $config --pid-file=$pid_file $EXTRAOPTIONS
    RETVAL=$?
    echo
    return $RETVAL
    }

    stop(){
    echo -n $"Stopping $prog: "
    if (is_running); then
    kill `cat $pid_file`
    RETVAL=$?
    echo
    return $RETVAL
    else
    echo "$pid_file not found"
    fi
    }

    status(){
    echo -n $"Checking for $pid_file: "

    if (is_running); then
    echo "found"
    else
    echo "not found"
    fi
    }

    reload(){
    restart
    }

    restart(){
    stop
    start
    }

    condrestart(){
    is_running && restart
    return 0
    }

    # See how we were called.
    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    status)
    status
    ;;
    restart)
    restart
    ;;
    reload)
    reload
    ;;
    condrestart)
    condrestart
    ;;
    *)
    echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
    RETVAL=1
    esac

    exit $RETVAL

    commands:
    01_install_remote_syslog_binary:
    command: "cp /home/ec2-user/remote_syslog/remote_syslog /usr/local/bin"

    02_enable_service:
    command: "/sbin/chkconfig remote_syslog on"

    03_start_service:
    command: "/sbin/service remote_syslog restart"
    ignoreErrors: true