SRE移动端运维工具- 小程序

背景

你是否有遇到过线上服务出现问题,你还在吃饭、约会、看电影,这时候你怎么办?
让我猜测一下,你可能的动作就是:停止手头打开电脑拨vpn看消息处理问题回消息.

这样的场景我猜测很多运维同学都有经历过,就像我一样,去茶卡盐湖处理问题、在高铁站处理问题。

1 2

头脑风暴

我们试想一下,是否可以减轻这种“负担”呢?
我个人是比较懒的,电脑束缚了我的玩耍,每次聚餐必然打开电脑处理问题,所以在2019年我就开始在运维是不是可以不背电脑这个方向上做着努力。

经历

在移动端运维上面,我经历了几个方面。

  • ios开发(由于自己用iPhone,所以只开发了苹果端,用了swift)
  • 双端ios和android(用了flutter)
  • 小程序(原生框架)

IOS开发

对于最初的用swift,我当时做了一些简单的功能(毕竟菜鸟,不会写复杂的),我之前的一篇文章有简单介绍过,有兴趣的可以看下:跳转

双端flutter

这个本来进展还不错,写的都差不多了,安卓也上线了,可是坑就坑在苹果上,App Store硬是认为我的应用不具有普遍性,被无情拒绝五六次(白瞎了我的开发者账号,我记得是快一千大洋了)。
这样不行啊,只有安卓,苹果用户用不了,那不白扯了。最终也是草草了之!

小程序

最终我想到了小程序,目前来说不会受到平台的限制,除非你不玩微信,那我”无fuck说”。
最开始写小程序,看了两天的项目实战教程,然后就自己写了,效果还行,“借鉴”了一些开源的样式,整体不算太丑,也是能看。
另外开始搞小程序的时候,有一个缺点就是上架后大家都能用,那肯定不行。所以后面直接转成”企业微信小程序”,绑定到企业微信上,在企业微信上做一些权限控制,目前就是按照这样的状态持续运行着,挺好~

展示一下(老的)

之前用flutter做的app,给大家看个图标吧,内部就不展示了。(whyme是安卓端,mtmops是苹果端)
3

开源

个人觉得这个开发难度不是很大,而且可能存在对于某些同学有些小意义,打算把基础框架给开源出来,包含了:

  • 后端接口(主要涉及登录认证以及后续接其他功能的接口预留)
  • 前端页面框架(感觉这个页面还行,简洁明了,适合我自己)
  • 企业微信登录可以配合公司内部认证使用(比如统一登录OA)

里面主要分为两种登录方式,企业微信登录微信登录
备注:企业微信登录要求必须先发布小程序,我就没有写具体的演示代码,我直接改成微信登录了,简单些,需要企业微信登录的照葫芦画瓢就行。

项目信息:

1
https://github.com/gsgs-libin/handleWhileDrinking

技术栈:

1
2
小程序端:原生微信小程序语言
服务端:go(gin框架)

正如项目名字所说:在喝酒的时候处理问题,说的就是我经常出去聚餐的时候临时处理问题。

项目意义

  • 个人认为算是小小的填补了移动端运维的空白
  • 提升了简单操作、信息查询的效率,更加便捷

收益

目前我们使用这个移动端运维工具已经一段时间了,带来了一些好处,同时也存在着一些问题:

  • 在线一键扩容(只需要手机一点就可以扩容)
  • 监控查看(我们日常的监控报表都可以通过这个来看)
  • 基本信息查看(日常的一些信息查询都可以查询)
  • 其他功能

存在的问题:

  • 真正大故障你用上,真正有问题可能还是需要你打开电脑
  • 需求不多,日常都在办公室对着电脑,真正拿手机处理问题又能有几次
  • 人力不足,目前这个就我一个人维护,虽然也够了,不过还是需要一些能力更强的人加入到建设中

项目演示

整体页面

4
5
6
7

登录相关

8
9

企业微信登录

这个是我们公司正在使用的小程序端,企业微信登录的,配合了公司内部统一登录获取了一些用户信息相关的然后进行展示。

10
11