归档数据是在归档过程中通过聚合日志数据产生的。
Matomo(之前叫Piwik)聚合并持久化两类归档数据:
- Metrics:简单的数值指标
- Reports:二维数组类型
报表通常包含数值指标,也包含其他数据(附加的或者替换数值指标)。 报表和数值指标由插件进行定义。插件可以扩展matomo分析出的数据。Matomo内核预定义了一些核心指标(Core metric)。
欢迎加入Matomo中文网。请加入官方QQ群255820112(点击滚动至本页末可扫描二维码),随时提问,有问必答。
数据子集参数
报表和数值指标提供了数据的分析结果。这个分析结果由下面几个参数进行范围限制:
- 站点ID
- 周期(Period)
- 分段(Segments)
站点ID限制了数据只属于特定站点。在HTTP请求中用idSite参数进行表示。
周期限制了数据只处于特定时间段。在HTTP请求中用date和period来表示(一个表示日期,一个表示按天还是按周按月按年)。
分段(segment)是以访客属性构成的布尔表达式,它类似于SQL语句中的where条件。在HTTP请求中用segment参数进行表示。通过它可以限定得到任何子集的访问数据。
分析参数是以metadata的方式存储在报表里。也就是存储在DataTable对象的metadata中。
数值指标
核心指标
核心数值指标是由Piwik内核定义的,而不是由插件定义的。
新的报表如果要分析访客、行为类型或转化的话,应当包含这些指标。
访客指标
名称 | 指标ID | 描述 |
访问(visits) | nb_visits |
访问数 同一访客在间隔不超过30分钟的一系列访问事件就构成一次访问。 |
独立访客(Unique visitors) | nb_uniq_visitors | 独立访问源的数量 访问源代表一个被追踪访问的对象。 |
行为数(Actions) | nb_actions |
被追踪行为数 一个行为就是一次被Matomo追踪的事件。 |
最大行为数(Max Actions) | max_actions | 一次访问中发生的最大行为数。 |
总访问时长(Sum Visit Length) | sum_visit_length | 每次访问的时间总和 |
弹出数(Bounce Count) | bounce_count | 只发生一次行为的访问数 |
转化访问数(Converted Visits) | nb_visits_converted | 至少发生一次转化的访问数 |
转化数(Conversions) | nb_conversions | 特定访问集中发生的转化数 |
收入(Revenue) | revenue | 访问所产生的收入。包括每个目标所代表的收入加上电子商务收入。 |
行为指标
名称 | 指标ID | 描述 |
点击量(Hits) | nb_hits | 某个行为发生的次数 |
总耗时(Sum Time Spent) | sum_time_spent | 用户发生在某个行为上的总时间。 |
页面生成总时长(Sum Page Generation Time) | sum_time_generation | 服务器生成特定页面耗费的总时长。 |
Hits With Generation Time | nb_hits_with_time_generation | The number of hits that included generation time information. |
页面最小生成时间(Min Page Generation Time) | min_time_generation | The minimum amount of time a server spent serving this action. |
页面最大生成时间(Max Page Generation Time) | max_time_generation | The maximum amount of time a server spent serving this action. |
独立跳出访客数(Unique Exit Visitors) | exit_nb_uniq_visitors | 某行为之后跳出网站的独立访客数 |
跳出访问数(Exit Visits) | exit_nb_visits | 以某个行为跳出网站访问的访问数。 |
独立入口访客数(Unique Entry Visitors) | entry_nb_uniq_visitors | 以某个行为为入口的独立访客数 |
入口访问数Entry Visits | entry_nb_visits | 以某个行为为入口的访问数 |
入口行为数Entry Actions | entry_nb_actions | |
入口访问总时长Entry Sum Visit Length | entry_sum_visit_length | The sum of each entry visit’s elapsed time. |
入口弹出数(Entry Bounce Count) | entry_bounce_count | 只包含特定行为的访问数 |
搜索点击数Hits From Search | nb_hits_following_search | 在站内搜索后某行为发生的次数 |
电子商务指标
用来记录一系列电子商务转化(要么所有订单,要么被放弃的购物车)
名称 | 指标 ID | 描述 |
Revenue Subtotal | revenue_subtotal | The total cost of every item that was a part of these orders or abandoned carts. |
Revenue Tax | revenue_tax | The total tax amount applied to these orders/abandoned carts. |
Revenue Shipping | revenue_shipping | The total amount of shipping applied to these orders/abandoned carts. |
Revenue Discount | revenue_discount | The total amount of discounts applied to these orders/abandoned carts. |
Ecommerce Item Count | items | The total number of items in these orders/abandoned carts. |
目标指标
Name | Metric ID | Description |
Goal Conversions | goal_<idGoal>_nb_conversions | The conversions tracked for a specific goal and this set of visits. |
Goal Revenue | goal_<idGoal>_revenue | The total revenue generated by the conversions for a specific goal. |
备注: <idGoal> 需要被替换成系统创建目标对应的ID
目标相关的指标在数据库中是存储在报表序列化数据的goals列中。此列包含的内容是从目标ID到目标指标值数组的数组。
需要运算的指标
考虑到归档效率和数据库大小的问题,有些指标没有被存储到数据库中,而是在需要的时候通过其他指标计算得到。这些指标被称为运算指标。 下面的列表就是利用内核指标计算得到的运算指标。新的报表在分析访问、行为类型或者转化的时候应当会用到它们。
备注:一些运算指标在下表中多次出现。因为这些运算指标在不同的报表中有不同的含义。
针对访问的运算指标
Name | Metric ID | Description |
Conversion Rate | conversion_rate | The percent of visits that had at least one conversion. |
Actions Per Visit | nb_actions_per_visit | The average number of actions for a single visit. |
Average Time On Site | avg_time_on_site | The average number of time spent per visit in seconds. |
Bounce Rate | bounce_rate | The percent of visits that resulted in a bounce. |
针对单个行为的运算指标
Name | Metric ID | Description |
Average Generation Time | avg_time_generation | The average amount of time it took for a server to serve this action. |
Average Number of Search Result Pages Viewed | nb_pages_per_search |
The average number of search result pages viewed after a site
search. Only valid for site search keywords and site search categories. |
Average Time On Page | avg_time_on_page | The average amount of time users spent doing this action. |
Entry Bounce Rate | bounce_rate | The percent of all visits that consisted of this action and no other. |
Exit Rate | exit_rate | The percent of all visits that ended with this action. |
针对系列访问中电子商务订单的运算指标
Name | Metric ID | Description |
Average Order Revenue | avg_order_revenue | The average revenue of each order. |
针对订单或放弃的购车中商品的运算指标
Name | Metric ID | Description |
Average Price | avg_price | The average price of each item. |
Average Quantity | avg_quantity | The average number of each item in an order/abandoned cart. |
Product Conversion Rate | conversion_rate | The percent of orders/abandoned carts that include this item. |
针对特定站点某目标的运算指标
Name | Metric ID | Description |
Average Revenue per Visit | goal_<idGoal>_revenue_per_visit | The average amount of revenue generated per visit for this goal. |
命名规则
由插件计算并持久化的指标必须命名为以下格式:PluginName_metricName.中间有个下划线,内核指标除外。
报表
在内存中,报表存储在DataTable对象中。一个DataTable对象是一个由行和列构成的二维数组。
行数据包含访问、行为、转化对应的指标。数据对应的范围在label列中定义和描述。列如何描述数据集完全依赖于所处的报表。比如说 UserSettings.getBrowser报告,标有Firefox的行数据反映了使用Firefox浏览器的访问数。
一些报表如VisitsSummary.get 没有包含label列: they have only one row that refers to the entire set of entities.
报表元数据
除了指标外,每行数据都包含元数据(metadata)。这些元数据和label列一同描述行所代表的数据含义。
一些元数据有特殊的含义,比如:
- logo:它的值可以是图片的数据,它会被展示在行中作为小图标
- url:表示行需要链接的内容
子表
报表可以是有层次的:每行数据可附加到另一个DataTable中。附加到行的表被称为子表。
子表可以提供对行数据的更进一步的分析。比如说,Referrers.getSearchEngines报告每行表示一个搜索引擎。每行还包含有一个子表,其中包含对应的搜索词。数据形如:
命名规则
像指标一样,报表的命名方式必须是:PluginName_reportName,别忘了下划线。