Worklight:将客户端日志发送到服务器

时间:2014-11-07 19:33:21

标签: ibm-mobilefirst worklight-analytics

我正在使用worklight 6.1,并且我尝试将在我的客户端中创建的日志发送到服务器,以便能够在应用程序崩溃时查看日志。我所做的是(基于此链接http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.worklight.help.doc%2Fdevref%2Fc_using_client_log_capture.html):

  • 在wlInitOptions.js

    中设置以下内容
    logger : {
        enabled: true, 
        level: 'debug', 
        stringify: true, 
        pretty: false,
        tag: {
            level: false, 
            pkg: true
            }, 
        whitelist: [], 
        blacklist: [],
        nativeOptions: {
            capture: true
        }
    },
    
  • 在客户端中,我在下面设置了我要发送日志的位置:

    WL.Logger.error("test");
    WL.Logger.send();
    
  • 根据链接使用日志功能实现必要的适配器WLClientLogReceiver-impl.js

很遗憾,我无法在messages.log中看到该日志。有人有什么想法吗?

我还尝试根据此链接http://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.monitor.doc/monitor/c_op_analytics_data_capture.html发送分析数据库中的日志。

我做的是:

WL.Analytics.log( { "_activity" : "myCustomActivity" }, "My log" );

但是app_Activity_Report表中没有添加新条目。有什么我想念的吗?

1 个答案:

答案 0 :(得分:0)

一些事情:

  • 在评论中遵循Idan的建议,并确保您正在查看正确的文档。他是对的;这个功能在版本之间发生了很大的变化。

  • 你有90%的配置,但你错过了最后一点。只需将日志发送到适配器就不足以让它们显示在messages.log中。您需要执行以下操作之一才能将其放入messages.log:

此外,WL.Analytics.log数据进入报告数据库。填充数据库的唯一公共API是WL.Client.logActivity。我建议坚持使用WL.Logger和WL.Analytics API。