matomo 访客流量分析系统

手册/官网

piwik中文网:http://piwik.cn/
matomo官网:https://matomo.org/
matomo开发:https://developer.matomo.org/
matomo中文网站:http://www.matomo.net.cn/

安装要求

PHP 版本 >= 7.2.5

php的扩展
因为有安装检测,所以根据代码的安装提示,进行调整即可.

请求与返回参数的解释

名词含义解释

词汇表 https://glossary.matomo.org/

访问次数:       访客第一次访问你的网站或者距离上次访问时间超过30分钟,会被统计为新的访问。
独立访客:       网站独立访客数量。即使一天之内多次访问网站也只会被统计一次
页面访问次数:   页面被查看的次数。
唯一页面浏览量: 浏览了该页面的访问次数。如果一次访问中多次浏览同一页面,只统计一次。
跳出率:         只查看单个页面的百分比,即访客直接从入口页面离开网站。

js传值 url参数统计解释

1、idsite:网站ID
2、rec:1(写死)
3、r:随机码
4、h:当前小时
5、m:当前分钟
6、s:当前秒数
7、url:当前纯净地址,只留域名和协议
8、_id:UUID
9、_idts:访问的时间戳
10、_idvc:访问数
11、_idn:新访客(目前尚未使用)
12、_refts:访问来源的时间戳
13、_viewts:上一次访问的时间戳
14、cs:当前页面的字符编码
15、send_image:是否用图像请求方式传输数据
16、gt_ms:内容加载消耗的时间(响应结束时间减去请求开始时间)
17、pv_id:唯一性标识

  再列出第二部分,用于统计浏览器的功能,通过Navigator对象的属性(mimeTypes、javaEnabled等)和Screen对象的属性(width与height)获得。

1、pdf:是否支持pdf文件类型
2、qt:是否支持QuickTime Player播放器
3、realp:是否支持RealPlayer播放器
4、wma:是否支持MPlayer播放器
5、dir:是否支持Macromedia Director
6、fla:是否支持Adobe FlashPlayer
7、java:是否激活了Java
8、gears:是否安装了Google Gears
9、ag:是否安装了Microsoft Silverlight
10、cookie:是否启用了Cookie
11、res:屏幕的宽和高(未正确计算高清显示器)

API 请求参考

    标准必填API参数
    
idSite:         站点ID
period:         您请求统计信息的时间段
date:           请求的日期
segment:        定义您希望将报告过滤到的自定义细分(相当于多的条件)
format:         定义输出的格式
filter_limit:   定义要返回的行数

    可选的API参数
    
language:       如果指定,则返回可以国际化并将转换的数据字符串。
idSubtable:     用于请求给定行的子表。
expanded:       一些API函数的参数为​​“扩展”。
flat:           一些API函数的参数为​​“扩展”,
label:          此参数只能用于搜索与给定标签匹配的行。
pivotBy:
pivotByColumn:
filter_offset:
filter_truncate:
filter_pattern:
filter_column:
filter_sort_order:              定义结果的顺序,升序或降序
filter_sort_column:
filter_excludelowpop:
filter_excludelowpop_value:
hideColumns:
showColumns:
convertToUnicode:
filter_column_recursive:
filter_pattern_recursive:
disable_generic_filters:
disable_queued_filters:

API 返回结果参考

以下是API返回的指标及其定义的列表。

一般指标
    nb_uniq_visitors -不重复访客人数
    nb_visits -访问次数(闲置30分钟被视为新访问)
    nb_users-唯一的活动用户数(具有已知User ID的访问者)。如果您不使用用户ID,则该指标将设置为零。
    nb_actions -操作次数(页面浏览量,链接和下载量)
    sum_visit_length -花费的总时间(以秒为单位)
    bounce_count -跳出的访问次数(仅查看一页)
    max_actions -访问中的最大操作数
    nb_visits_converted -转化为目标的访问次数
    nb_conversions -目标转化次数
    revenue -目标转化的总收入
特定于页面URL和页面标题报告的指标
    nb_hits -此页面上的观看次数
    entry_nb_visits -从此页面开始的访问次数
    entry_nb_uniq_visitors -在此页面上开始访问的唯一身份访问者数量
    entry_nb_actions -从此页面开始的访问的页面浏览量
    entry_sum_visit_length -从此页面开始的访问所花费的时间(以秒为单位)
    entry_bounce_count -从此页面开始并被跳出的访问次数(仅查看一页)
    exit_nb_visits -在此页面上完成的访问次数
    exit_nb_uniq_visitors -在此页面上结束访问的唯一身份访问者数量
    sum_time_spent -在此页面上花费的总时间(以秒为单位)
    sum_daily_nb_uniq_visitors-在此期间的几天中,每日唯一身份访问者的总和。Matomo不会在整个期间内处理唯一身份访问者。
    sum_daily_entry_nb_uniq_visitors -在此页面上开始访问的每日唯一身份访问者总数
    sum_daily_exit_nb_uniq_visitors -(已弃用)与 sum_daily_entry_nb_uniq_visitors
    exit_bounce_count -(已弃用)与 entry_bounce_count
处理的指标,显示在Metadata API响应中
    avg_time_on_page -在此页面上花费的平均时间(以秒为单位)
    bounce_rate -登陆此页面后离开网站的访问比例
    exit_rate -在此页面之后未查看任何其他页面的访问比例
电子商务指标,仅出现在Ecommerce Goals.getItems * API调用中
    revenue-产品销售产生的总收入。不包括税,运费和折扣。
    quantity -数量是每个产品SKU /名称/类别所售产品的总数。
    orders -这是至少包含此产品SKU /名称/类别的电子商务订单的总数。
    abandoned_carts-仅在请求包含“&abandonedCarts = 1”时设置此值。在这种情况下,“订单”指标将不会返回。它是至少包含一次此商品SKU /名称/类别的废弃小车总数。
    avg_price -此产品/类别的平均收入。
    avg_quantity -此产品/类别的平均数量。
    nb_visits-仅当您设置了“电子商务产品/类别页面跟踪”时,此值才会显示。“产品/类别”页面上的访问次数。
    conversion_rate-仅当您设置了“电子商务产品/类别页面跟踪”时,此值才会显示。转化率是包含该产品/类别的订单数量(如果请求中包含“&abandonedCarts = 1”,则为多少),除以产品/类别页面上的访问次数。
事件跟踪指标,显示在Events API调用中
    nb_events -活动数量
    nb_events_with_value -设置了值的事件数
    sum_event_value -事件值之和
    min_event_value -最小事件值
    max_event_value -最大事件价值
    avg_event_value -事件值的平均值

系统核心工作流程:

    1,访问者通过浏览器向用户服务器发送请求。

    2,门户服务器响应请求,返回预先设置了Piwik的跟踪代码页面,

    3,客户端浏览器执行TAG标记,向Piwik请求数据获取的js代码。

    4,Piwik服务器响应请求,返回用于收集网页,浏览器和Cookie信息的js代码。

    5,客户端浏览器执行js代码,发送相关网页被访问的行为数据给Piwik服务器。

    6,Piwik服务器产生点击流日志,保存于后台数据库中,用来日后做分析。

   Piwik收集的信息有:被系统屏蔽后的IP地址信息,访问来源链接,第一次访问网站时间,累计页面浏览数,和第几次来访问数据等。

Matomo用的是什么框架

Matomo应用中不同的设计层使用的是不同的框架,有的是自己开发,有的是用的第三方类库。

Matomo的WEB场景下的MVC框架是由Matomo团队自己开发的,具体的流程和插件逻辑后续再补充,视图层用到了 twig

Matomo的console开发是基于 SynfonyConsole 组件。

Matomo的数据库部分用到了 Doctrine ORM

Matomo还使用了对象的依赖注入工具php-di用于可配置化、方便替代的获取特定类对象。

数据库

Matomo数据库结构中文版_Piwik数据字典中文版
https://developer.matomo.org/guides/database-schema

日志数据:从追踪器获取到的原始数据

有四种类型的日志数据,包括访问(Visit)、行为类型(Action Types)、转化(Conversion)、电子商务商品(ecommerce items)。

归档数据:归档器处理原始数据产生的聚合数据,它被缓存到数据库并用于构建报告。

归档数据包括数值指标和报表。数值指标是纯数字的。报表存储在DataTable实例中,并以压缩的二进制字串进行存储。

归档数据与站点ID,时间段,分段条件一起构成一条记录。通过这些条件,归档数据会被多次获取。目前分段条件被转化成了hash值,然后追加到指标名称的后面。归档数据也会将最新一次归档的日期和时间持久化到数据库中。

重要表

1.matomo_log_visit [日志_访问数据]

访问(visit)数据存储在log_visit表中。

请注意区分访问和访客,一个访客可以发生多次访问,每次访问之间系统默认间隔30分钟以上,这个配置项(global.ini.php:visit_standard_length = 1800)可以修改。

访客记录:在接口文档中有提示:闲置30分钟被视为 访问次数(已cookie为主,他的用户id存在cookie中)

2.log_link_visit_action [日志_访问行为]

一次访问会包含多次行为。它们存储在log_link_visit_action 表中。

3.matomo_log_action [日志_行为类型表]

行为类型,如特定网址或者网页标题,也会被分析。这类分析方便你理解哪些网页与访客更相关。

当遇到新的行为类型时,Matomo会将其持久化到数据库中。

4.matomo_log_conversion [日志_转化表]

当访问的行为与特定goal的参数匹配时,对应的转化信息会被创建并持久化到数据库。转化的意思是指客户在网站上的行为与我们的预期吻合。Matomo会分析这些吻合,并结合访客的访问路径,帮助分析人员决策:如何引导访客以获得更多我们期望的行为。

5.matomo_log_conversion_item [日志_电子商务商品(也叫转化商品)]

电子商务商品是用户下单或加入购物车的商品。

6.matomo_archive_blob_2020_12 [归档数据]

归档数据包括数值指标和报表。数值指标是纯数字的。报表存储在DataTable实例中,并以压缩的二进制字串进行存储。

归档数据与站点ID,时间段,分段条件一起构成一条记录。通过这些条件,归档数据会被多次获取。目前分段条件被转化成了hash值,然后追加到指标名称的后面。归档数据也会将最新一次归档的日期和时间持久化到数据库中。

归档数据是按月存储的,不存在的月表会被自动创建。比如说2018年1月的归档数据和2018年2月的归档数据存放的表是不同的。

Matomo会创建两种类型的归档表,一个是 archive_numeric类型的表,它用于存储数值指标数据;一个是archive_blob 类型的表,用于存储报表数据。它们的表名都会有年月做后缀,形如archive_numeric_2018_01

7.matomo_site [网站_站点管理]

关联着的 matomo_site_url

站点表中存储的都是与被追踪网站相关的信息。它不会像访问和归档数据一样有那么多的数据,不过它们会经常被查询。

每一次报表请求(要么通过报表API,要么通过Matomo界面)都至少查询一个站点。客户端追踪器在缓存过期的情况下只会更新站点数据。对于大部分的追踪请求来说,站点数据不会从服务器请求(这样可以带来性能上的提升)。

站点实体可能存在多个域名可以到达它。它们没有被存在site表中,而是存在 site_url 表中。

8.matomo_goal [目标管理]

每个网站都会设置一些目标。目标就是期望访问者在网站上所做的行为。

备注:电子商务和被放弃的购物车目标是两个特殊的目标,它们的ID比较特殊。电子商务网站会自动添加这两个目标。

9.matomo_user [用户管理]

用户信息存储在user表中。其中包含matomo操作员的信息。

界面和报表接口的每次请求都会读取用户信息。

10.matomo_access [用户权限表]

用户可以被允许和禁止访问matomo。针对不同站点,用户的访问级别存储在access表中。

备注:超级用户权限是存储在用户user表,通过superuser_access来标识。

Matomo性能优化及扩展系列之一:概述

http://www.matomo.net.cn/2018/09/matomo-optimization-scale/

1.我需要用什么样的架构运行Matomo

  • 如果你的网站每天只有少于1000个PV或者事件(也就是每月少于30000),Matomo(Piwik)可以运行在大部分主机上,即时是最便宜的一款。
  • 如果你的网站每天少于10000个PV或者事件(也就是每月少于30万),Matomo(Piwik)可以工作在快速的共享主机和虚拟主机上。
  • 如果你的网站每天多于10万个PV或者事件(也就是每月多于300万),你需要一个虚拟主机或者专享主机或者Matomo云服务。
  • Matomo配置好的话,每月可以支持10亿PV。我们了解到已经有一些流量在5亿PV的网站,正在使用Matomo。在未来,我们希望看到更多的高级用户。
  • 如果你正在运行一个高流量的Matomo分析实例,我们强烈建议你联系Matomo专家获取更多信息。

Matomo性能优化及扩展系列之二:如何进行性能优化

http://www.matomo.net.cn/2018/11/how-to-configure-matomo-for-speed/

问题总汇

  • 1.matomo后期会不会有什么限制
  • 2.新系统和老系统差别在哪里
  • 3.新系统是否要收费/限制之类的(用到后面会不会出现到了1000个用户,突然就不能用了之类的问题)
  • 4.数据库字段/表标注一下,了解这个都是干嘛用的
  • 5.之前我们 fenxi 老系统的二开的内容都有哪些(想了解一下对我的帮助)
  • 6.我需要大量的测试数据,应该如何获得
  • 7.后期二开的操作是在matomo中调用数据库的数据,然后在对外提供接口
  • 9.归档是干嘛用的?
  • 10.导入 GOOGLE ANALYTICS 的数据到 matomo

1.matomo后期会不会有什么限制

使用Matomo,您没有任何限制:
    没有数据限制
    网站跟踪数量
    目标 
    区隔
    自定义报告 
    每天的电子商务交易
    电子邮件报告
    用户数 
    浏览量,事件和其他操作
    资料汇出 
    数据存储 

2.新系统和老系统差别在哪里

matomo 3.2.1(2017-12-06) ~ matomo 4.0.4(2020-11-26)
3.3.0
    - 从3.3.0开始 piwik 更名为 matomo
    - 为设备模型添加细分
    - 更新默认数据库表前缀
    - 在更多位置的用户界面中显示Matomo而不是Piwik
3.4.0
    - 页面叠加:用字体图标替换图像
    - 注释列表设计的改进
    - 允许通过电子邮件以及用户名登录
    - 登录和重置密码:改进的字段
    - 添加了新设备和品牌的检测
3.5.0
    - 访客日志应显示国家/城市信息,而不必将鼠标悬停在国家标志上
3.6.0
    - 重新设计了用户管理
    - 报表和仪表板的改进
    - 管理和安全性改进
3.7.0
    - 修复了一些XSS问题
3.9.0
    - 可用性改进。“访问日志”报告已得到改进和重新设计,增加了新图标和更好的时间表视图
    - 安全性改进:现在,每当更改用户密码或电子邮件地址时,就会向每个用户发送安全电子邮件通知(带有原始IP地址)。XSS问题也已修复。我们通常建议您在Matomo设置中启用“双重身份验证”。
    - 设备检测器:现在可以更好地检测数百种新设备(智能手机,平板电脑,计算机)。
3.10.0
    - 实现了一些性能改进,可以将某些Matomo请求的速度提高大约10%。
4.0.0(重大更新)
    - 有许多更改,包括安全性和隐私改进以及其他重大更改,
    - Matomo 4.0.0需要PHP 7.2.5(更好的安全性和性能)
    - 现在需要生成用于验证API调用的身份验证令牌,并且可以将其撤消。Matomo 3.x中所有现有的token_auth都将被迁移,因此您已经使用的所有token_auth仍然可以使用
    - 安全性:令牌的存储更加安全:“ token_auth”和会话ID不再以纯文本格式存储在数据库中。
    - 不再跟踪IE6或IE7等较旧的浏览器。
    - 注意:此版本包含主要的数据库升级,如果数据库中有大量数据,则升级数据库将花费很长时间。

3.新系统是否要收费/限制之类的(用到后面会不会出现到了1000个用户,突然就不能用了之类的问题)

数据所有权

1.拥有100%的数据所有权,您将有能力保护用户的隐私。您无需外部影响即可知道数据的存储位置以及发生的情况。

## 100%数据所有权
    分析数据归您所有
    您的Matomo Analytics数据是您100%拥有的数据,无需外部参与。 
    与使用您的数据为其广告平台提供服务的Google Analytics(分析)不同,Matomo用户可以安全地使用分析,而不必担心数据会被用于营销或其他目的。

    数据所有权使您能够保护隐私
    您可以自行决定数据发生什么情况并保护用户的隐私。 
    
    Matomo内部部署–可让您完全控制。下载后,由于Matomo托管在您自己的服务器上,因此您拥有100%的数据所有权。您可以选择发生什么情况以及将数据存储在何处。我们绝对无法获取您的数据。
    
## 开源的
    安全,透明的平台经过数百位贡献者的全面测试,将风险降至最低。 
## 100%准确的数据
    没有数据采样意味着您可以基于100%准确的报告做出有影响力的决策。
## 导入Google Analytics(分析)数据
    无需牺牲您的历史Google Analytics(分析)数据,因为您可以将GA数据直接导入Matomo中。
## 无数据限制
    获取无限数量的网站,用户和细分。您存储多少数据也没有限制。
## 追踪个人资料
    根据隐私法安全地跟踪个人数据。GA不提供此选项。

用户量这个问题只会和数据库存储量有关系,所以无须担心.

收费标准的定义?免费和收费有什么区别

matomo收费对比图

4.数据库字段/表标注一下,了解这个都是干嘛用的

http://www.matomo.net.cn/matomo-piwik-database-schema-pdf/

5.之前我们 fenxi 老系统的二开的内容都有哪些(想了解一下对我的帮助)

页面:
会员后台->数据管家->流量分析

代码:
增加了一个bossgoo插件
    plugins/Bossgoo
    获取会员用户对应的siteID
    获取访客信息
    获取访客记录

6.我需要大量的测试数据,应该如何获得

线上搭建了一个平台,再在其他用户网站上放置了js代码,利用这几天时间数据进行获取一下.

9.归档是干嘛用的?

10.导入 GOOGLE ANALYTICS 的数据到 matomo

https://matomo.org/docs/google-analytics-importer/

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值