在写代码的过程中,发现很多的时间都会耗费在寻找错误,debug太慢,导致效率不高。
# 简述
环境大概分为以下三种
-
开发环境:开发机就是云服务器,直接在云服务器就可以写代码,省掉了自己在本地部署环境,vscode安装Remote-SSH就行了。在没有push前,代码只能够在自己机器上生效。
-
测试环境:用来和前端进行联调用的,当本地代码push到远程仓库后,会自动进行部署代码,并在测试环境中生效。
-
线上环境:代码没有bug,并且和前端联调完毕,便可以申请代码上线。这一步骤一定要慎重,代码是直接交给用户去使用的,要经过严格的测试才好。
# 中控机
作为开发者和线上服务器的桥梁,线上有着众多的服务器,采用nginx作为负载均衡,ui和servie为服务器集群。要代码的时候要注意保持数据的一致性。
# 连接方式
确保已经登陆到开发机
|
|
# 日志目录的格式
|
|
当线上曝出bug时候,就要来这里找错误,由于有着大量的日志,需要合理的采用脚本搜索需要的日志内容。
进入了一个误区,因为线上是服务器集群,查日志,因为不知道会在哪一个服务器运行,所以需要遍历所有的线上服务器,在中控机看不到具体实实在在的日志路径。
# 查找技巧
- grep 后面跟着的可以是logid、手机号等等值,可以定位到日志内容就行了。
cd /home/work/env/log/uiww 代表日志存在的路径
uiww.log.2021041912 日志文件名 后缀规范为日期到小时级
{ui} 代表要查询的机器为所有 ui 机器,与此对应,里面填 service 便查询的是所有的 service 服务器
|
|
- 可以用 | 分割,增加更多的筛选条件
|
|
# 测试环境
使用的是线下数据库和线下代码,线下代码又分为两种,提交的和未提交的。
-
未提交使用ip访问:http://xx.xx.xxx.xx:8081/1.0/uifa/c2cbrandlist
-
push了代码:http://xxx.xxxxxxxx.cn/1.0/uifa/c2cbrandlist
# 连接方式
|
|
# 日志目录的格式
|
|
这个日志的查找就比较方便了,日志在哪个模块打印出,进行查找即可。
需要用到一些查文件的命令。
# 查找技巧
- tail 查询实时最新的日志代码
|
|
- more 可以翻页文件中的内容,只能向下翻页
|
|
- less 比more更高级,支持向上和向下翻页
|
|
- cat 这个在查日志的时候用的很少,适合查看简短的文本信息
|
|