1.成功从0到1引入多套基础设施平台,包括 LDAP 、堡垒机管理平台、VPN 、Archery(数据库审核平台)、GitLab 、运维管理平台(go+gin)、APP 热更新服务器、jira&wiki、jenkins、sonar等关键基础设施平台;
2.持续集成&部署体系建设 ,引入jenkins 作为 CI&CD工具,安装及配置包括mvn、gitlab、钉钉webhook通知等插件,分别针对 nodejs、java、web(静态文件)三种环境设计不同的部署流程,部署期间引入nacos下线服务和slb切走流量,保障期间无损下线,同时部署后加入基于http或tcp的健康检查,失败暂停部署,部署成功切入流量;
3.sonar代码检测和覆盖率上报,在自动化编译、部署、测试流程中,集成 SonarQube 进行代码检查,并将静态代码分析结果主动上传到 SonarQube 平台。同时将 JaCoCo 代码覆盖率工具集成到 Spring Boot 项目中。通过 jenkins,实现 exec 文件数据的自动导出至 SonarQube 平台,使得代码覆盖率结果可视化。
4.ELK日志管理系统引入,制定日志规范(java业务日志和访问日志),选择 ELK 作为日志解决方案,利用 Kafka 作为日志处理的缓冲队列,以及 Filebeat 作为日志收集 工具,使用 Logsstash 清洗数据,并将日志存储至Es中;同时引入 Es-watcher 作为告警机制,实现对接口异常和业务错误日志的实时监控及告警通知企业微信群,依据等保要求,实施日志的快照归档策略,将历史日志安全存储至阿里云 OSS,并保证在需要时能够从快照中快速恢复日志信息。
5.引入APM全链路跟踪系统,引入es-apm,并配置基于业务事务的告警,包括响应时间、错误率等性能相关告警;