wx.getRealtimeLogManager实时日志管理器对象 实时日志管理器对象官方文档

    小程序用于实时日志的方法

    1. let log = wx.getRealtimeLogManager ? wx.getRealtimeLogManager() : null;
    2. /**
    3. * @Description: 日志记录(手机可以上传-编译器不能)
    4. * @author Chendy
    5. * @date 2020/5/8
    6. * 可上传调用方法可以打印日志到后台,在小程序管理平台可以查看打印的日志
    7. **/
    8. class Logs {
    9. constructor() {}
    10. /**
    11. * 普通提示
    12. */
    13. info() {
    14. if (!log) {
    15. return;
    16. }
    17. log.info.apply(log, arguments);
    18. }
    19. /**
    20. * 警告提示
    21. */
    22. warn() {
    23. if (!log) {
    24. return;
    25. }
    26. log.warn.apply(log, arguments);
    27. }
    28. /**
    29. * 错误提示
    30. */
    31. error() {
    32. if (!log) {
    33. return;
    34. }
    35. log.error.apply(log, arguments);
    36. }
    37. /**
    38. * 组合提示
    39. * @param msg
    40. */
    41. setFilterMsg(msg) {
    42. if (!log || !log.setFilterMsg) {
    43. return;
    44. }
    45. if (typeof msg !== "string") {
    46. return;
    47. }
    48. log.setFilterMsg(msg);
    49. }
    50. addFilterMsg(msg) {
    51. if (!log || !log.addFilterMsg) {
    52. return;
    53. }
    54. if (typeof msg !== "string") {
    55. return;
    56. }
    57. log.addFilterMsg(msg);
    58. }
    59. }
    60. export { Logs };

    调用:

    1. let setLog = new Logs();
    2. app.setLog.setFilterMsg('试题练习、我的考试、历史错题内的答题卡'); // 日志标签,用于筛选日志
    3. app.setLog.info('试题练习、我的考试、历史错题内的答题卡', "可以多个参数上传日志"); // 普通日志
    4. app.setLog.warn('试题练习、我的考试、历史错题内的答题卡'); // 警告日志
    5. app.setLog.error('试题练习、我的考试、历史错题内的答题卡'); // 报错日志

    注意:由于后台资源限制,会有一些限制

    1. 为了定位问题方便,日志是按页面划分的,某一个页面,在一定时间内(最短为5秒,最长为页面从显示到隐藏的时间间隔)打的日志,会聚合成一条日志上报,并且在小程序管理后台上可以根据页面路径搜索出该条日志
    2. 每个小程序账号每天限制1000万条日志,日志会保留7天,建议遇到问题及时定位。
    3. 一条日志的上限是5KB,最多包含200次打印日志函数调用(info、warn、error调用都算),所以要谨慎打日志,避免在循环里面调用打日志接口,避免直接重写console.log的方式打日志。
    4. 意见反馈里面的日志,可根据OpenID搜索日志。
    5. setFilterMsg和addFilterMsg 可设置类似日志tag的过滤字段。如需添加多个关键字,建议使用addFilterMsg。例如addFilterMsg(‘scene1’), addFilterMsg(‘scene2’),addFilterMsg(‘scene3’),设置后在小程序管理后台可随机组合三个关键字进行检索,如:“scene1 scene2 scene3”、“scene1 scene2”、 “scene1 scene3” 或 “scene2”等(以空格分隔,故addFilterMsg不能带空格)。以上几种检索方法均可检索到该条日志,检索条件越多越精准。
    6. 目前为了方便做日志分析,插件端实时日志只支持 key-value 格式。
    7. 实时日志目前只支持在手机端测试。工具端的接口可以调用,但不会上报到后台。