Merge branch 'master' of git://github.com/rackspace/stacktach into exists_verifier
This commit is contained in:
commit
ef5dd0a23f
@ -2,6 +2,7 @@ export STACKTACH_DB_NAME="stacktach"
|
||||
export STACKTACH_DB_HOST=""
|
||||
export STACKTACH_DB_USERNAME="root"
|
||||
export STACKTACH_DB_PASSWORD="password"
|
||||
export STACKTACH_DB_PORT="3306"
|
||||
export STACKTACH_INSTALL_DIR="/srv/www/stacktach/"
|
||||
export STACKTACH_DEPLOYMENTS_FILE="/srv/www/stacktach/stacktach_worker_config.json"
|
||||
|
||||
|
17
manage.py
17
manage.py
@ -1,14 +1,9 @@
|
||||
#!/usr/bin/env python
|
||||
from django.core.management import execute_manager
|
||||
import imp
|
||||
try:
|
||||
imp.find_module('settings') # Assumed to be in the same directory.
|
||||
except ImportError:
|
||||
import sys
|
||||
sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n" % __file__)
|
||||
sys.exit(1)
|
||||
|
||||
import settings
|
||||
import os, sys
|
||||
|
||||
if __name__ == "__main__":
|
||||
execute_manager(settings)
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "stacktach.settings")
|
||||
|
||||
from django.core.management import execute_from_command_line
|
||||
|
||||
execute_from_command_line(sys.argv)
|
||||
|
21
reports/batch.py
Normal file
21
reports/batch.py
Normal file
@ -0,0 +1,21 @@
|
||||
# This is a one-time utility script for backfilling reports.
|
||||
# Be sure to set up your DJANGO_SETTINGS_MODULE env var first.
|
||||
|
||||
import datetime
|
||||
import subprocess
|
||||
|
||||
start_date = datetime.date(2013, 2, 17)
|
||||
|
||||
today = datetime.datetime.now().date()
|
||||
target = today - datetime.timedelta(days=30)
|
||||
|
||||
done = today - start_date
|
||||
days = done.days
|
||||
|
||||
while start_date != target:
|
||||
for region in ["dfw", "lon", "ord"]:
|
||||
cmd = "python pretty.py --utcdate %s --region %s --store --percentile 97" % (start_date, region)
|
||||
print cmd
|
||||
subprocess.call(cmd, shell=True)
|
||||
|
||||
start_date = start_date - datetime.timedelta(days=1)
|
@ -237,6 +237,12 @@ if __name__ == '__main__':
|
||||
parser.add_argument('--hours',
|
||||
help='Report span in hours. Default: 24', default=24,
|
||||
type=int)
|
||||
parser.add_argument('--days_back',
|
||||
help='Report start date. N days back from now. Default: 0', default=0,
|
||||
type=int)
|
||||
parser.add_argument('--hours_back',
|
||||
help='Report start date. N hours back from now. Default: 0', default=0,
|
||||
type=int)
|
||||
parser.add_argument('--start_hour',
|
||||
help='Starting hour 0-23. Default: 0', default=0,
|
||||
type=int)
|
||||
@ -252,12 +258,23 @@ if __name__ == '__main__':
|
||||
args = parser.parse_args()
|
||||
|
||||
yesterday = args.utcdate
|
||||
days_back = args.days_back
|
||||
hours_back = args.hours_back
|
||||
percentile = args.percentile
|
||||
hours = args.hours
|
||||
start_hour = args.start_hour
|
||||
store_report = args.store
|
||||
region = args.region
|
||||
|
||||
if (not yesterday) and days_back > 0:
|
||||
yesterday = datetime.datetime.utcnow().date() - \
|
||||
datetime.timedelta(days=days_back)
|
||||
if (not yesterday) and hours_back > 0:
|
||||
yesterday = datetime.datetime.utcnow() - \
|
||||
datetime.timedelta(hours=hours_back)
|
||||
yesterday = yesterday.replace(minute=0, second=0, microsecond=0)
|
||||
start_hour = yesterday.hour
|
||||
|
||||
start, end, raw_report = make_report(yesterday, start_hour, hours,
|
||||
percentile, store_report, region)
|
||||
details = raw_report[0]
|
||||
|
@ -9,6 +9,7 @@ try:
|
||||
db_host = STACKTACH_DB_HOST
|
||||
db_username = STACKTACH_DB_USERNAME
|
||||
db_password = STACKTACH_DB_PASSWORD
|
||||
db_port = STACKTACH_DB_PORT
|
||||
install_dir = STACKTACH_INSTALL_DIR
|
||||
except ImportError:
|
||||
db_engine = os.environ.get('STACKTACH_DB_ENGINE',
|
||||
@ -17,6 +18,7 @@ except ImportError:
|
||||
db_host = os.environ.get('STACKTACH_DB_HOST', "")
|
||||
db_username = os.environ['STACKTACH_DB_USERNAME']
|
||||
db_password = os.environ['STACKTACH_DB_PASSWORD']
|
||||
db_port = os.environ.get('STACKTACH_DB_PORT', "")
|
||||
install_dir = os.environ['STACKTACH_INSTALL_DIR']
|
||||
|
||||
DEBUG = False
|
||||
@ -35,7 +37,7 @@ DATABASES = {
|
||||
'USER': db_username,
|
||||
'PASSWORD': db_password,
|
||||
'HOST': db_host, # Set to empty string for localhost.
|
||||
'PORT': '', # Set to empty string for default.
|
||||
'PORT': db_port, # Set to empty string for default.
|
||||
}
|
||||
}
|
||||
|
||||
@ -139,6 +141,8 @@ INSTALLED_APPS = (
|
||||
'stacktach',
|
||||
)
|
||||
|
||||
ALLOWED_HOSTS = ['*']
|
||||
|
||||
# A sample logging configuration. The only tangible logging
|
||||
# performed by this configuration is to send an email to
|
||||
# the site admins on every HTTP 500 error.
|
||||
@ -150,7 +154,8 @@ LOGGING = {
|
||||
'handlers': {
|
||||
'mail_admins': {
|
||||
'level': 'ERROR',
|
||||
'class': 'django.utils.log.AdminEmailHandler'
|
||||
'class': 'django.utils.log.AdminEmailHandler',
|
||||
'filters': []
|
||||
}
|
||||
},
|
||||
'loggers': {
|
||||
|
@ -1,4 +1,14 @@
|
||||
#!/bin/bash
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: stacktach
|
||||
# Required-Start:
|
||||
# Required-Stop:
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start/stop stacktach workers
|
||||
### END INIT INFO
|
||||
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
WORKDIR=/srv/www/stacktach/app
|
||||
DAEMON=/usr/bin/python
|
||||
@ -9,16 +19,24 @@ export DJANGO_SETTINGS_MODULE="settings"
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "Starting server"
|
||||
echo "Starting stacktach workers"
|
||||
cd $WORKDIR
|
||||
/sbin/start-stop-daemon --start --pidfile $PIDFILE --make-pidfile -b --exec $DAEMON $ARGS
|
||||
;;
|
||||
stop)
|
||||
echo "Stopping server"
|
||||
echo "Stopping stacktach workers"
|
||||
/sbin/start-stop-daemon --stop --pidfile $PIDFILE --verbose
|
||||
;;
|
||||
restart)
|
||||
echo "Restarting stacktach workers"
|
||||
/sbin/start-stop-daemon --stop --pidfile $PIDFILE --retry 5
|
||||
/sbin/start-stop-daemon --start --pidfile $PIDFILE --make-pidfile -b --exec $DAEMON $ARGS
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "stacktach" && exit 0 || exit $?
|
||||
;;
|
||||
*)
|
||||
echo "Usage: stacktach.sh {start|stop}"
|
||||
echo "Usage: stacktach.sh {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
Loading…
x
Reference in New Issue
Block a user