调试小程序最常用的就是console.log
了,但是小程序上线后,如果出了问题,尤其一些bug很难复现,这是开发经常会遇到的问题,好在小程序提供了实时日志功能,简单点就是通过调用api输出日志,微信客户端会定时打包上报这些日志,方便远程定位问题。
使用方式
第一步:新建log.js
模块化文件
var log = wx.getRealtimeLogManager ? wx.getRealtimeLogManager() : null
module.exports = {
info() {
if (!log) return
log.info.apply(log, arguments)
},
warn() {
if (!log) return
log.warn.apply(log, arguments)
},
error() {
if (!log) return
log.error.apply(log, arguments)
},
setFilterMsg(msg) { // 从基础库2.7.3开始支持
if (!log || !log.setFilterMsg) return
if (typeof msg !== 'string') return
log.setFilterMsg(msg)
}
}
第二步:js文件中引用
var log = require("./log.js")
Page({
data:{
}
})
第三步:在需要的地方调用log内方法
var log = require("./log.js")
Page({
data:{
},
onLoad: function(options) {
log.info("#####")
}
})
当方法被执行后大概十分钟左右时间就可以在小程序管理后台,从“开发->运维中心->实时日志”进入日志查询页面,查看上报的日志了,如图:
另外
1、可通过log.setFilterMsg("XXX")
方法设置过滤关键字,方便后台查询。
2、该方法并不支持本地调试、和真机调试,为方便起见,可在log.js中封装进console.info()/console.error()/console.warn()等本地输出的功能。