之前上线了一个简单配置即可合成图片海报的小程序插件——票圈海报。虽然在微信公众平台可以看到不断被申请使用,但小程序官方目前并未提供小程序插件的数据统计功能,所以无法得知这些申请了使用权限的小程序,究竟有多少真正投入使用,以及调用的量有多少。于是想,是否能获得和小程序数据助手类似的 小程序插件的调用数据报告?
而由于插件是在前端合成图片,未和服务端进行数据交互,也就无法统计到插件被调用的次数。最终实现方式是在想要埋点取数的地方,向服务端发一个请求,通过nginx访问日志,分析上报的数据。
原始的 log 数据大概长这样:

我想要在报告中看到插件每天被调用的次数,就在生命周期函数 ready 中,调用 wx.request 发一个请求。通过这个请求的的服务端访问日志就可以看到访问者ip、访问时间、referrer、客户端UA 信息。
referrer 网址中,wx开头的18位字符串目录名,就是调用插件的小程序的 AppID, 通过这些信息,不仅可以分析到插件调用次数,还可以梳理出用户画像。
直接查看 log 毕竟费力,为了方便分析,需对数据做可视化处理,这里以 GoAccess(一个实时的 Web 日志分析器及交互式查看器,百度可搜到相关信息,这里不赘述) 为例。


![操作系统排序按 [点击量, 平均响应时, 总共响应时, 最高响应时]](https://honor.kainy.cn/wb/https://wx2.sinaimg.cn/large/4d6e3e3bgy1gkr3vx68gqj21fu10w447.jpg)
![浏览器排序按 [点击量, 平均响应时, 总共响应时, 最高响应时]](https://honor.kainy.cn/wb/https://wx2.sinaimg.cn/large/4d6e3e3bly1gkr41ek1kaj21g2134q9l.jpg)
因为是个人项目时间有限,只实现一个简单版的数据统计,可大致了解小程序插件被调用的情况。如果有更深入分析的需求,还是建议将数据落库,用户画像什么的还是需精细的处理。
顺便安利一个通过appid查小程序名称的工具。就是我分析出了调用量比较大的几个appid后,想看看他们是如何调用插件的,是否能够从实际案例中找到可改进的点。公众号平台的插件管理后台,比较简陋,不支持通过appid搜索申请过插件使用权限的小程序,所以自己动手搞了个简单的小程序工具,有需要可搜索 “ AppID查 ” 使用。