sentry安装在IP为x.x.x.x的服务器上。
服务器上安装有Alibaba Cloud Linux 3版本的Linux系统。
sentry是一款基于Django实现的错误日志收集和聚合的平台,它是python实现的,但是其日志监控功能却不局限于python,对诸如Node.js, php,ruby, C#,java 等语言的项目都可以做到无缝集成,甚至可以用来对iOS, Android 移动客户端以及 Web前端异常进行跟踪。可以在程序中捕获异常,并发送到sentry服务端进行聚合统计、展示和报警。
sentry官方推荐docker方式安装,使用到了docker-compose。
在2017年的3月1号之后,docker的版本命名开始发生变化。(EE是企业版,CE是社区版)
安装docker
第一步,卸载旧版本docker。
# 卸载旧版本docker
命令:yum remove docker docker-common docker-selinux docker-engine
# 查询docker安装过的包
命令:yum list installed | grep docker
# 删除安装包
命令:yum remove docker-ce.x86_64 docker-ce-cli.x86_64
第二步,安装docker。
命令:yum -y install dnf
# 添加docker-ce的dnf源
命令:dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装Alibaba Cloud Linux 3专用的dnf源兼容插件
命令:dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus
# 安装docker-ce
命令:dnf -y install docker-ce --nobest
# 查看docker-ce是否成功安装
命令:dnf list docker-ce
第三步,测试docker。
# 测试
命令:docker run hello-world
若结果显示“docker: Cannot connect to the docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?”,则运行如下命令:
systemctl daemon-reload
systemctl restart docker.service
再次验证:docker run hello-world
第四步,设置开机启动。
# 允许开机启动
命令:systemctl enable docker
第五步,查看docker版本。
# 没启动docker之前查看docker版本
命令:docker -v
或 docker version
安装docker-compose
# 安装依赖,安装epel源
命令:dnf -y install epel-release
# 安装Python 3和pip 3
命令:dnf -y install python3 pip3
# 更新pip3
命令:pip3 install --upgrade pip
若结果显示“Successfully”,则说明成功更新pip3。
# 安装setuptools
命令:pip3 install -U pip setuptools
若结果显示“Successfully”,则说明成功安装setuptools。
# 安装docker-compose
命令:pip3 install docker-compose
若结果显示“Successfully”,则说明docker-compose安装成功。
# 创建软链接,避免一些应用的安装脚本无法读取docker-compose
命令:ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 查看docker-compose的版本
命令:docker-compose --version
若结果显示“docker-compose version 1.29.2, build unknown”,则说明docker-compose安装成功。
安装Sentry
第一步,搭建监控平台。
# 克隆self-hosted文件夹
命令:yum -y install git
mkdir /data
cd /data
git clone https://github.com/getsentry/self-hosted.git
若结果显示“remote: Enumerating objects: 3134, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (36/36), done.
remote: Total 3134 (delta 16), reused 32 (delta 9), pack-reused 3088
Receiving objects: 100% (3134/3134), 827.93 KiB | 1.91 MiB/s, done.
Resolving deltas: 100% (1837/1837), done.”,则说明self-hosted文件夹克隆成功。
若结果显示“fatal: unable to access 'https://github.com/getsentry/self-hosted.git/': Empty reply from server”,则需要再次执行上述命令直到克隆成功为止。
# 执行安装脚本(花费时间较长)
命令:cd /data/self-hosted
./install.sh
执行安装脚本后,结果末尾会提示“Would you like to create a user account now”,这时需要点击“enter”,然后输入一个邮箱地址,输入两次密码,这样就创建好了一个默认管理员账号,需要注意的是,邮箱地址必须是正确的邮箱地址,不然通不过校验。等服务启动后通过 http://x.x.x.x:9000就可以访问。
第二步,启动及关闭所有服务。
# 启动服务
命令:docker-compose up -d
注意:命令“docker-compose restart”会导致重启异常,因此不建议使用。
# 关闭服务
命令:docker-compose stop
第三步,验证docker启动状态。
# 验证状态
命令:docker ps
第四步,访问。
服务启动后通过 http://x.x.x.x:9000就可以看见sentry的界面。
第五步,其他常用命令。
# 启动docker
命令:systemctl start docker
或 service docker start
# 关闭docker
命令:systemctl stop docker
或 service docker stop
# 重启docker
命令:systemctl restart docker
或 service docker restart
# 更新docker-ce
命令:dnf update docker-ce
# 卸载docker-ce
命令:dnf remove docker-ce
# 需要手动删除主机上的镜像、容器、卷或者自定义配置文件
命令:rm -rf /var/lib/docker
# 卸载docker-compose
命令:pip3 uninstall docker-compose
或 pip uninstall docker-compose
# 卸载老版本docker
命令:dnf remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
既然看到这里了,就向大家打个广告。如果想要了解更多关于运维和mysql数据库的知识,可以关注我的微信公众号:人文历史与科学技术,下面是二维码,谢谢大家!