1.0.0 • Published 6 years ago

tv-remote-logger v1.0.0

Weekly downloads
3
License
ISC
Repository
github
Last release
6 years ago

##Tv-Remote-Logger 使用指南

简介

为了方便在TV端和移动端能够方便的查看log信息,本模块能够在浏览器端和移动端提供一套统一的API来方便本地调试和真机调试;

安装

首先安装tv-remote-logger模块,推荐全局安装此模块,可以开启本地log服务;

npm install -g tv-remote-logger

会自动创建两个CLI全局命名,分别是loggerslogs,logsloggers的别名;

使用

本地使用

  1. 确保全局安装了pm2模块,首先在命令行中使用logs start开启本地服务器,能够接受log信息,并且在浏览器页面输出log信息;
logs start

会默认使用pm2默认启动一个日志转发服务模块,使用pm2 list可以查看名为logger的服务; 2. 使用logs open即可打开配置首页;

logs open

logger-index

  1. 客户端引入tv-remote-logger的客户端模块,开发是带有日志的模式,线上建议引用生产环境(无日志输出),根据process.env.NODE_ENV进行判断引入,首先输入页面名称,创建页面,然后即可获取本机ip; copy address
<script src="//g.alicdn.com/tvtaobao-assets/fills/1.0.19/client.min.js"></script>
<script type="text/javascript">
// 启动客户端服务
logger.auto({
    url: "http://ip-address:8083", //点击复制地址,拷贝本机地址
    page: "test-page", //和主页输入的page名称保持一致
    remote: true, //true代表日志转发,false表示调用环境console.log直接输出日志
    exports: ['log as debug', 'error', 'dirxml'], //导出全局变量名称,默认在logger命名空间下
    exec: false, //是否开启远程调试js
    result: function (res) { //日志转发成功的本机日志,使用adb抓取获得;
      console.log(JSON.stringify(res));
    }
  });
</script>
  1. 查看log信息: 打开console栏,日志默认输出在主页的日志当中; log信息输出页

客户端基本用法

  1. logger.log() 客户端的log信息基本支持现有console模块的所有用法,比如logger.warn,logger.log,logger.count等一系列W3C定义的console方法,完全如同在浏览器中使用console.log()一样,唯一的不同是将console.log改为logger.log, trace捕获栈信息暂时不支持,因为日志转发后堆栈信息丢失;
  2. logger.auto(obj) auto里面会自动调用一些功能来一键启动服务:
  • 自动调用clearScreen方法,每次页面初始化都清除上次的log;
  • 自动调用connect方法进行连接;

选项:auto方法传入的为object类型,参数如下:

  • url:String,logger-server的远程服务地址;
  • name:String,日志输出的page名称,在主页输入的name;
  • result:Function,getResult方法的回调函数,(选填),是否查看AJAX响应信息;
  • exec: 在日志输出模块,可以在输入栏放入js代码,点击执行代码,可在远程设备执行,调用eval,慎用;
  • exports: 默认所有方法都在logger的namespace下,为了方便使用,可以使用全局变量导出的格式,['log'],那么全局直接调用log()方法即可,如需使用alias,格式为:['log as debug']的形式导出;
  • remote: 可以选择日志是否转发或者在本地使用console模块直接输出日志,默认true;