AUM是App Usage Metrics的缩写,用于统计FFOS中一些应用的使用情况,并且在用户允许的情况下(Settings中设置),将统计信息上报Telemetry Server。

  

1. AUM会监控FFOS中的几种应用。

  • Apps pre-installed with the phone (certified, or using a gaia origin)
  • Apps installed from the marketplace

2. Telemetry Server Path

  http://{host}:{port}/{deviceID}/{reason}/{appName}/{appVersion}/{appUpdateChannel}/{appBuildID}

3. AUM消息格式

  以下是讲flame手机中的AUM功能打开,添加log打印出来的消息格式。

{"ver":1,"info":{"start":1437968681114,"apps":{},"searches":{},"stop":1437968928832,"deviceID":"7a0f9f11-c8de-421d-939b-878b7e89915e","locale":"en-US","screen":{"width":320,"height":569,"devicePixelRatio":1.5},"deviceinfo":{"developer.menu.enabled":true,"deviceinfo.hardware":"qcom","deviceinfo.os":"2.5.0.0-prerelease","deviceinfo.product_model":"flame","deviceinfo.software":"Boot2Gecko 2.5.0.0-prerelease"},"simInfo":{"network":null,"icc":null},"reason":"appusage","appName":"FirefoxOS","appUpdateChannel":"nightly","appBuildID":"20150723141330","appVersion":"42.0a1"}
}

  info->apps字段是关于per-app的信息,参考代码,其消息格式是:

{"per-app-manifestURL-1":{"yyyymmdd":{"usageTime":0,"invocations":0,"installs":0,"uninstalls":0,"activities":{}}},"per-app-manifestURL-2":{"yyyymmdd":{"usageTime":0,"invocations":0,"installs":0,"uninstalls":0,"activities":{}}}
}

  info->searches字段是关于per-search的信息,参考代码,其消息格式是:

{"per-app-provider-1":{"yyyymmdd":{"count":0}},"per-app-provider-2":{"yyyymmdd":{"count":0}}
}

4. AUM upload policy

  FFOS中预设的是2 weeks upload。

5. code分析

  代码比较简单,以后有时间再贴出详细分析(代码位置:gaia/apps/system/js/app_usage_metrics.js)。

转载于:https://www.cnblogs.com/code-4-fun/p/4680274.html

(FFOS Gaia) Telemetry - AUM分析相关推荐

  1. gaia引擎分析(二)场景管理

    只是粗略的分析原理,大虾轻喷~~ Gaia引擎中没有场景管理器(scenemanager)这种东西,但是并不是没有场景管理,而是在cGameHost类中有一课场景树进行场景组织.一棵四叉树用来进行剪裁 ...

  2. gaia引擎分析(一)资源管理

    最近在看<Real Time 3D Terrain Engines Using C++And DirectX 9>,不过是看网上翻译的版本叫<实时地形引擎>,看英文实在蛋疼,还 ...

  3. (FFOS Gecko Gaia) OTA - 转移至System App

    代码位置:gaia/apps/system/js/update_manager.js 1. update_manager.js向全局的window对象导出了一个对象UpdateManager,其他的j ...

  4. ffos:init,b2g 启动过程

    try to analyze b2g ,nuwa and content process. 自我疑惑问题记录与解答... 系统物理按键按下,固件(firmware)bootloader按需加载文件到内 ...

  5. CVPR 2021 | 视觉目标检测大模型GAIA:面向行业的视觉物体检测一站式解决方案

    作者丨常清 编辑丨机器之心 中国科学院自动化研究所智能感知与计算研究中心联合华为等企业提出面向行业的视觉物体检测一站式解决方案 GAIA. 在深度学习与大数据的浪潮下,视觉目标检测在各个基准数据集上已 ...

  6. 常用 Java Profiling 工具的分析与比较

    相对于静态代码分析,Profiling 是通过收集程序运行时的信息来研究程序行为的动态分析方法.其目的在于定位程序需要被优化的部分,从而提高程序的运行速度或是内存使用效率.收集程序运行时信息的方法主要 ...

  7. 计算机网络实验三:网络层和链路层网络协议分析

    文章目录 1. IP协议 1.1 抓包 1.2 分析抓包数据 1.3 分片 2. Ethernet协议 2.1 操作 2.2 分析帧 2.3 Get请求报文内容 3. ARP协议 3.1 操作 3.2 ...

  8. Flagger on ASM——基于Mixerless Telemetry实现渐进式灰度发布系列 1 遥测数据

    简介:服务网格ASM的Mixerless Telemetry技术,为业务容器提供了无侵入式的遥测数据.遥测数据一方面作为监控指标被ARMPS/prometheus采集,用于服务网格可观测性:另一方面被 ...

  9. Flagger on ASM·基于Mixerless Telemetry实现渐进式灰度发布系列 1 遥测数据

    简介: 服务网格ASM的Mixerless Telemetry技术,为业务容器提供了无侵入式的遥测数据.遥测数据一方面作为监控指标被ARMPS/prometheus采集,用于服务网格可观测性:另一方面 ...

最新文章

  1. python 图像二值化
  2. 在记录实体log信息的时候,2个公司的区别
  3. adb链接手机调试android应用
  4. 反思项目最新周数的反复反复修改
  5. 使用View的getWidth(),getHeight()方法返回0的问题
  6. java 获取oracle表结构_获取Oracle中所有表的列表?
  7. String StringBuilder StringBuffer三者之间的区别~~~
  8. web.xml中 /和/*的区别
  9. 中文分词——正向最大匹配法
  10. ★LeetCode(182)——查找重复的电子邮箱(MySQL)
  11. python面向对象是什么?面试技巧(三分钟读懂)
  12. python基础(12):Standard Library标准库(包含正则)
  13. dede采集简单好用的织梦采集
  14. 详解Java的交互式编程环境:jshell
  15. 如何裁剪PDF文件的页面大小
  16. linux 怎么彻底删除用户,linux如何完全删除用户
  17. 网络训练时使用不同学习率策略(Poly)以及学习率是如何计算
  18. 投射数据卷Secret、ConfigMap、DownwardAPI
  19. 计算机台式和电脑的区别吗,直观:工业计算机和家用台式计算机有什么区别
  20. 单片机硬件抗干扰常用方法

热门文章

  1. 有些错误,即便时光倒流也无法弥补——《时光幻境》
  2. 零基础学Python-爬虫-2、scrapy框架(测试案例篇·技术点在后面文章内讲解)【测试将一篇小说的所有访问路径与标题存储到一个文件下】
  3. AIX进程监控与管理
  4. MySQL升级后 MySQL 5.7 时间不兼容问题
  5. git 忽略文件 .gitignore 以及规则
  6. 数据结构 -- 可重用模块的接口设计模板
  7. JAVA程序测试时用到的与内存测试有关的东西
  8. GridView的 使用
  9. .NET程序员应该理解的几种软件保护方法 辛苦开发的程序需要建立有效的保护机制...
  10. css background-position