小编equ*_*ium的帖子

如何使用supervisor,gunicorn和django的环境变量(1.6)

我想使用SECRET_KEY的环境变量配置supervisor来控制我的django 1.6项目中的gunicorn.

我将.bashrc中的密钥设置为

export SECRET_KEY=[my_secret_key] 
Run Code Online (Sandbox Code Playgroud)

我有一个shell脚本来启动gunicorn:

NAME="myproject"
LOGFILE=/home/django/myproject/log/gunicorn.log
LOGDIR=$(dirname $LOGFILE)
NUM_WORKERS=3
DJANGO_WSGI_MODULE=myproject.wsgi

USER=django
GROUP=django
IP=0.0.0.0
PORT=8001

echo "Starting $NAME"

cd /home/django/myproject/myproject
source /home/django/.virtualenvs/myproject/bin/activate

test -d $LOGDIR || mkdir -p $LOGDIR

exec gunicorn ${DJANGO_WSGI_MODULE} \
 --name $NAME \
 --workers $NUM_WORKERS \
 --user=$USER --group=$GROUP \
 --log-level=debug \
 --bind=$IP:$PORT
 --log-file=$LOGFILE 2>>$LOGFILE
Run Code Online (Sandbox Code Playgroud)

然后在主管中配置我的项目的gunicorn服务器:

[program:my_django_project]
directory=/home/django/my_django_project/my_django_project
command=/home/django/my_django_project/my_django_project/gunicorn.sh
user=django
autostart=true
autorestart=true
stdout_logfile=/home/django/my_django_project/log/supervisord.log
stderr_logfile=/home/django/my_django_project/log/supervisor_error.log
Run Code Online (Sandbox Code Playgroud)

如果我使用我的shell脚本启动gunicorn它不会抛出任何错误但是当我用supervisor启动时它会失败并且我在日志中看到它没有"找到"我的SECRET_KEY.

配置主管来读取我的shell变量的正确方法是什么(除非有更合适的方法,否则我不想将它们保存在我的.bashrc中)?

django shell supervisord gunicorn

36
推荐指数
3
解决办法
3万
查看次数

如何清除/维护django-sentry数据库?

我正在使用django-sentry来跟踪网站中的错误.我的问题是数据库变得太大了.'message'表和'groupsmessage'是相关的

有没有办法清除旧条目和特定消息或将哨兵表添加到django的管理员?

django sentry data-cleaning

29
推荐指数
3
解决办法
8406
查看次数

标签 统计

django ×2

data-cleaning ×1

gunicorn ×1

sentry ×1

shell ×1

supervisord ×1