Archive for 六月, 2013

安装sentry && supervisor 来收集异常

星期四, 六月 27th, 2013

sentry是个优秀以及方便的可以来收集各种异常的系统,作为企业,很有必要自己搭建一个sentry服务器来收集本公司的项目中各种异常。

 

大多数步骤,通过这个教程即可,中间有一些暗礁要一一度过。

下面是一些命令和步骤:

easy_install -UZ virtualenv
virtualenv /www/sentry/
source /www/sentry/bin/activate
这三个命令是在/www/sentry下搭建一套虚拟环境,这样你装的各种python包环境,不会流入到系统里面
easy_install -UZ sentry
安装需要的包,因为伟大的wall,好几个包下不下来,要根据提示,一一下回索要的tar.gz ,然后解压,运行 python setup.py install
easy_install -UZ sentry[mysql]
到这一步,算是安装完成了,下面开始金牌娱乐官方网站。
sentry init /etc/sentry.conf.py
然后更改 sentry.conf.py

DATABASES = {

‘default’: {

‘ENGINE’: ‘django.db.backends.mysql’,

 

‘NAME’: ‘sentry’,

‘USER’: ‘root’,

‘PASSWORD’: ‘xxxxx’,

‘HOST’: ‘127.0.0.1’,

‘PORT’: ‘3306’,

}

}

SENTRY_URL_PREFIX = ‘http://sentry.shallwe.net:9000’ # 这里的端口号千万要写上,不然在web里会遇到麻烦

SENTRY_WEB_HOST = ‘0.0.0.0’
SENTRY_WEB_PORT = 9000

剩下的自己看着金牌娱乐官方网站

 

剩下开始处理暗礁,下面的bug,官方暂时没出补丁,要手工改。

进入mysql,

mysql>   create database sentry character set utf8;

要设置成utf8,不然在sentry web页面里就无法正常输入中文

然后进入 vim  /www/sentry/lib/python2.7/site-packages/Django-1.4.5-py2.7.egg/django/conf/global_settings.py

最后加上几句:

SOCIAL_AUTH_UID_LENGTH = 222
SOCIAL_AUTH_NONCE_SERVER_URL_LENGTH = 200
SOCIAL_AUTH_ASSOCIATION_SERVER_URL_LENGTH = 135
SOCIAL_AUTH_ASSOCIATION_HANDLE_LENGTH = 125

来设置django的某些金牌娱乐官方网站,不然会提示字符太长之类的错误

暗礁已过,剩下的就好办了

 

sentry --config=/etc/sentry.conf.py upgrade
在这一步里输入用户名和密码

sentry --config=/etc/sentry.conf.py start
现在就可以到web页面里看了,看完之后,把这个进程关掉,等会用supervisor启动它

第二大步骤,将sentry用supervisor启动
easy_install supervisor
echo_supervisord_conf > /etc/supervisord.conf
在 supervisord.conf中加入
[program:sentry-web]
directory=/www/sentry/
command=/www/sentry/bin/sentry  --config=/etc/sentry.conf.py start http
autostart=true
autorestart=true
redirect_stderr=true
运行supervisord
最后,要每次重启后都要启动supervisord
我是centos,在/etc/rc.local中加上
/usr/local/bin/supervisord  -c /etc/supervisord.conf &
真的最后一步了,我的机器上运行着apache,所以做了个反向代理,使得我可以通过80端口也可以访问sentry的web

<VirtualHost *:80>
ServerAdmin shallwe@shallwe.net
DocumentRoot “/usr/local/web/”
ServerName sentry.shallwe.net
<Directory />
Options FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
ProxyPass / http://localhost:9000/
ProxyPassReverse / http://localhost:9000/
ProxyPreserveHost On
ErrorLog “logs/todo-error_log”
CustomLog “/dev/null” common
</VirtualHost>


				

在centos下用yum安装git

星期四, 六月 13th, 2013

今天要用到svn转移到git的工具,发现里面有个git-svn的工具,然而这个工具用yum下载不能,最后发现给yum加了一个源就好了

$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm 

$ rpm –import http://apt.sw.be/RPM-GPG-KEY.dag.txt

$ rpm -i rpmforge-release-0.5.2-2.el5.rf.i386.rpm

centos 6 的svn无法checkout的解决方案

星期一, 六月 3rd, 2013

centos 6,安装了subversion后,checkout https://xxx.shallwe.net/svn/code  会提示

SSL handshake failed: SSL error: Key usage violation in certificate has

拿这段话作为关键字放狗搜索,结果大多让你这样干

sudo mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.old
 sudo ln -s /usr/lib/libneon.so.27 /usr/lib/libneon-gnutls.so.27

这段话是坑爹啊,完全没用,本地完全找不到libneon-gnutls这个库。
将上面那段话加上centos6,在某个旮旯里有人给出了解决方案,错误根源在于Visualsvn Server。 在安装有visualsvn的windows机器里操作如下:

一、改注册表

  • for 32-bit system:
    [HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server]
    "CreateGnuTLSCompatibleCertificate"=dword:00000001

for 64-bit system:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\VisualSVN\VisualSVN Server]
"CreateGnuTLSCompatibleCertificate"=dword:00000001

二、开启 visualsvn

三、 进入操作|properties|certificate
四、 选择 Change certificate 然后一步步走即可。

之后,以前下载过代码的客户端,只需重新接受下签名即可,不耽误多少事。