谷歌Analytics Importer插件将谷歌Analytics报告导入到Matomo实例中。

当您运行导入时,您的谷歌Analytics (GA)属性将自动创建为网站(以及你的目标自定义尺寸)和GA中的所有历史报告都将导入,以便您可以在Matomo中查看所有Web Analytics数据。

如果您发现一个bug或有任何反馈,请在这里向Github报告它。

需求

注意:目前导入器插件只支持谷歌Analytics属性开始UA -.该插件目前不支持更新的谷歌Analytics属性,其中属性ID以a开头G.我们正在努力添加对这些新属性id的支持。

对于Matomo On亚博账号每天2000元出租-Premise和Matomo的WordPress:

注意:在某些情况下,插件不能在运行在Windows上的服务器上工作,我们正在调查这个问题,并将很快提供一个修复。

对于Matomo云

  • 我们的云托管服务自动满足所有要求。

设置

在我们开始从他们的API导出谷歌分析数据并将其导入到您的Matomo之前,有两个设置步骤要通过:1)创建谷歌OAuth客户端配置和2)授权Matomo导出您的谷歌分析数据。这两个步骤只需要执行一次。

1)可选:购买临时产品谷歌工作区账户

这个步骤不是必需的,但是可以使导入过程更容易。

谷歌项目有两种类型可以在谷歌API控制台中定义:外部的和内部的。

任何人都可以创建外部应用程序,但是谷歌限制了API授权的使用时间:一周后它们就会过期。使用这种类型的应用程序,你将不得不手动每周重新授权Matomo,以便您的进口继续运行。很不幸,谷歌创建了这个策略,而我们没有办法绕过它。

另一方面,内部应用就没有这种限制。使用内部应用程序,你只需要授权Matomo一次,但是,内部应用程序只对已购买的用户可用谷歌工作区.如果您想避免不得不定期重新授权Matomo的不便,建议购买一个帐户,无论您需要运行从谷歌Analytics的导入多长时间。

2)创建谷歌OAuth Client配置

开始之前要注意的重要事项:在这些步骤中没有任何点,您需要将您的“应用程序”提交给Google进行验证。如果提示您提交您的“应用程序”并且没有选择单击没有取消然后,请再次查看本指南中的步骤以确保您没有错过一个重要的步骤,或者添加不必要的其他信息。

遵循以下步骤获得你的OAuth客户端配置:

  1. Google API控制台

  2. 点击选择一个项目在菜单中。

  3. 要创建一个新项目,点击覆盖层中的“new project”按钮:

  4. 给你的新项目一个有用的名字(例如Matomo谷歌Analytics Importer).

  5. 创建项目后,在项目列表中手动选择它,然后单击“打开”。

  6. 点击图书馆在菜单左侧,然后搜索谷歌分析API,然后单击该项谷歌分析API.然后在这个API的描述页面上,单击启用按钮。

  7. 做同样的谷歌分析报告API

  8. 接下来,我们需要设置OAuth同意屏幕。点击顶部的Google徽标返回仪表板,然后单击OAuth同意屏幕在左边的菜单中。如果您有谷歌工作区帐户,选择内部.否则,选择外部的.然后点击创建

  9. 为您的应用程序选择一个名称,然后单击加域并添加matomo实例的顶级域。matomo.cloud

  10. 从下面的下拉菜单中选择您的电子邮件地址用户支持电子邮件,并填写您的电子邮件地址开发人员的联系信息
    重要提示:请勿上传应用程序图标在这里,这样做将要求您提交您的“应用程序”到谷歌进行验证,这可能需要几个月的时间来完成。

  11. 点击保存并继续然后点击添加或删除作用域

  12. 选择“谷歌分析API”范围只读的属性并点击更新然后单击保存并继续

  13. 接下来,我们需要添加测试用户以便允许访问谷歌Analytics API范围。
    点击添加用户并输入您将用于访问谷歌分析数据的电子邮件地址。


  14. 点击保存并继续然后点击回到仪表板

  15. 凭证左侧菜单上的选项卡

  16. 点击创建凭据

  17. 选择OAuth客户机ID

  18. 选择Web应用程序作为应用程序类型

  19. 例如,设置应用程序的名称Matomo https://matomo.my-website.example

  20. 点击添加URI在下面授权JavaScript的起源并将其设置为Matomo URL域,例如:https://matomo.my-website.example.
    注意:这需要是一个域。如果您已经将Matomo安装到子目录中,则需要输入不带路径的域。(所以https://my-website.example的情况下https://my-website.example/matomo/

  21. 点击添加URI在下面授权重定向uri.这需要通过这个特殊的URL/查询设置为Matomo URL/ index . php ?模块= GoogleAnalyticsImporter&action = processAuthCode加在末尾。例如:https://matomo.my-website.com/index.php?module = googleanalyticsimporter&ach=processauthcode.
    注意:上面的url是HTTPS:我们强烈建议您运行您的Matomo实例通过SSL.如果你的Matomo还不支持https,你可以替换URL,使用http。
    如果你在使用MatomoURL必须以Matomo的管理页面的整个路径开始,例如,http://mysite.com/wp-content/plugins/matomo/app/index.php?module = googleanalyticsimporter&action= processauthcode.
    注意:Matomo的URL不需要有子域名,这只是一个例子。

  22. 输入两个uri后,单击创建以完成创建OAuth客户端凭据

  23. 现在您将看到刚刚创建的OAuth凭据,您可以单击好吧关闭此对话框,然后单击凭据概述页面上的下载图标下载OAuth客户端凭据。(注意:如果您在以后更改了上面的任何设置,例如修复值中的一个输入错误,您将需要再次下载OAuth凭据,并在Matomo中重新上传它。)

创建OAuth客户端配置的步骤现在已经完成。在此过程中创建的“应用”可以保留为“测试”或“测试阶段”应用,无需提交审查。
在这些步骤中,您不会被要求将您的“应用程序”提交到谷歌进行验证。如果提示提交你的“应用程序”,但没有选择单击“否”或“取消”,那么请再次查看本指南中的步骤,以确保你没有错过重要的步骤,或添加不必要的额外信息。

当完成OAuth过程时,你仍然可能收到谷歌的警告,说“谷歌还没有验证这个应用程序”。
在这种情况下,您可以通过点击“高级”,然后“转到matomo”安全地继续。云(不安全)”或“去yourdomain.com(不安全)”

3)授权Matomo

下载OAuth客户端凭据后,您可以授权Matomo访问您的Google Analytics数据:

  1. 登录的超级用户然后去政府

  2. 在左边的菜单中,单击系统然后谷歌分析进口.如果您未看到此菜单,请确保已安装GoogleAnalyticsImporter插件

  3. 上传下载的OAuth客户端凭证如何设置谷歌OAuth客户端配置通过点击配置文件,选择该文件,然后单击保存
    上传进口商的客户端配置

  4. 现在,点击授权并根据提示让Matomo访问您的谷歌Analytics数据。
    授权进口商

重要提示:如果你选择外部的在配置谷歌项目时,您可能需要定期重新授权Matomo。谷歌确保对测试用户的授权外部的项目将在7天内到期,届时你的进口将会失败,你将不得不重新授权Matomo。不幸的是,解决这个问题的唯一方法是临时购买一个谷歌工作区帐户并创建您的项目内部

运行谷歌Analytics导入

一旦您授权Matomo,就可以开始导入数据了。这主要是通过管理页面完成的,不过您也可以使用命令行。根据您要导入的数据的多少,它可能需要很长时间才能完成(在大多数情况下超过一天)。

注意:Google对您每天可以制作的API请求数量的每日限制(最多50,000)。在导入大约4个月的数据后,导入将在每天具有数据的数据之后进行此限制。这需要几个小时。这意味着导入必须在几天内运行,直到导入整个数据集。

使用管理页面

要使用管理员UI:

  1. 谷歌分析进口管理页面。
  2. 填写安排进口表单并单击开始

    附表进口表格

  3. 随着导入的继续进行,您将能够通过进口就业机会下表:

    进口的工作列表

    刷新页面随时获取更新状态。

  4. 导入标记为已完成后,请随时删除状态。如果导入失败,您可以查看位于的日志/道路/ /你/ matomo / tmp /日志/.每个工作都应该有一个。

使用命令行

如果您希望查看有关它的进度的更多信息,您还可以在命令行上运行导入:

  1. 首先你需要一些信息。在谷歌Analytics仪表板中,打开属性选择器。
  2. 注意属性ID视图ID用于您想要导入的属性/视图。
  3. ssh进入你的Matomo实例
  4. 运行以下命令导入您的站点:
    美元/ /我/ matomo cd /路径
    $ PHP ./console googleanalyticsimporter:import-reports——property=——view=——dates= ./ /输入数据

    为了特性标识视图id替换上面提到的GA属性ID和视图ID。为了日期指定要导入的日期的日期范围,例如,2015-01-01, 2019-04-31

然后等到进口饰面,这可能需要一些时间。

如果您想恢复现有的导入,请提供- --idsite = 参数和为该导入创建的站点一起(这将在管理页面的导入状态表中)。

一旦导入完成,您就可以删除之前授予的授权。Matomo只需要在导入数据时访问谷歌Analytics,之后就没有必要保存它了。

进口国的选项

导入移动应用程序属性

如果你的GA属性是针对移动应用程序的,那么你需要检查手机应用程序在开始导入之前的复选框:

进口手机应用程序

这将确保Matomo导入正确的数据。谷歌Analytics中的屏幕视图指标将被导入,并用作matomo中的页面视图指标。屏幕报告将被导入到Matomo的页面标题报告中。

如果你不勾选此框,而你的属性是针对移动应用程序的,导入器将忽略此数据。

导入不支持的GA维度

有些GA维度在Matomo中不存在,比如人口统计维度。您可能希望在导入时保留此信息,可以通过将数据导入到自定义维度来实现。

在导入表单中,用要导入的GA维度填写“额外自定义维度映射”字段:

额外自定义维度映射

使用这个列表查找GA维的正确id。

当导入时,每个额外的映射将在导入的站点中使用一个自定义维度槽。(注:如果没有足够的自定义尺寸槽在你的Matomo将会有一个错误。)

进口后

在您完成将数据导入Matomo之后,备份Matomo的数据库是一个好主意。如果要清除或以某种方式删除导入的报告数据,则必须从GA重新导入数据。如果你的GA属性被删除了,数据将永远消失。

如果您经常备份数据库(或您的主机为您提供),那么您真的不需要担心此问题。

从谷歌分析转换的工作流程

当切换到Matomo时,有几种方法可以使用导入器来保留谷歌Analytics数据。本节详细介绍您可能使用的工作流程。

设置跟踪到您的matomo,并导入到一个网站与结束日期

就设置和监视而言,这是最简单的方法。要做到这一点,开始导入您的旧数据,并将结束日期设置为您开始跟踪Matomo的日期(例如今天的日期),使用来自新创建的站点的跟踪代码,并开始跟踪。

确保在导入结束日和你开始跟踪的那天没有重叠。例如,如果您在11月12日开始跟踪,请确保导入结束日期是11月11日。

然后只要你准备好了,就用GA结束你的跟踪。该解决方案也在从Google Analytics迁移常见问题解答

导入到站点并继续导入,直到您准备好停止跟踪到GA

另一种选择是持续导入Matomo,同时仍然跟踪GA。对于这种方法,您可以在不指定结束日期的情况下启动导入。这将导致导入每天都在导入。

当你准备切换到Matomo时,你可以手动取消导入并开始跟踪到Matomo(在你取消导入之前确保你已经准备好开始跟踪了,因为如果你需要几天的时间来设置,这些日子里Matomo中没有数据)。然后你就可以停止追踪GA了。

如果您正在评估Matomo,但不准备花时间设置对Matomo的跟踪,那么这种方法可能很有用。

故障排除

我的import永远不会继续

当你开始导入时,插件会在后台开始导入。最终,如果您导入的数据量足够大,那么它将受到速率限制,并将被迫在第二天继续。延续是通过一个计划好的任务来完成的。

为了让计划的任务首先需要有cron归档设置.这是启动计划任务的地方。

有一旦Cron归档设置,请使用TasksTimetable插件以确定计划任务下一次运行的时间(相关任务将具有piwik \ plugins \ googleanalyticsimporter \任务在名字里)。

如果这些任务从未运行,即使列出它们,那么Cron归档命令中的某些东西都会失败。调试的下一步是检查命令的输出。

我的导入运行X分钟,然后停止

如果您使用的共享托管,您的蜂窝可能只会在设定的时间内终止该过程。这不是Matomo或你可以修复的东西。您要么必须与您的蜂窝联系或找到举办Matomo的另一种方式。

如果这两种方法都不适合你,你可以尝试以下方法:

  • 尝试通过CLI命令而不是通过UI导入数据。执行此操作时,请确保您使用的PHP可执行文件是CLI PHP版本而不是另一个(例如,PHP7-CLI与PHP7-FCGI)。您可以通过运行查看它使用的版本PHP - 转化.查找如下输出PHP 7.2.1(CLI).有可能您的主机将允许CLI PHP执行更长时间。

  • 如果在一定时间后可靠地终止了进程,则可以设置一个cron作业来重新启动导入。例如,如果您的导入在15分钟后终止,您可以设置一个cron,使其每20分钟运行一次,从而恢复导入。为此,在UI中启动导入,并记录新创建站点的ID。然后使用googleanalyticsimporter: import-reports命令——idsite =选项(例如:php /path/to/matomo/console googleanalyticsimporter:import-reports——idsite=<你的站点ID>).

我的import每次都在同一天失败

如果您的导入在某一天经常失败,那么您可能在导入过程中发现了一个错误。在这种情况下,你应该在github库.为了帮助我们更快的找到原因,请在提交报告时做以下事情:

  • 为失败的特定日子启动一个新的导入,并选中表单底部的“启用详细日志记录”复选框:
    启用详细日志
  • 当导入再次经历错误时,在服务器上找到导入的日志文件(它将被命名为类似/道路/ /你/ matomo / tmp /日志/ gaimportlog。idSite。matomoHost.log美元).请电邮至support@www.hju8.com.(这可能是一个好主意,不要将内容与错误报告发布,因为它可能包含有关您服务器的信息)。
  • 取消进口。

这将有助于我们调试您正在遇到的问题,尽管我们仍然无法找到原因。在这种情况下,如果您能够提供对Google Analytics帐户的只读访问,我们将能够进一步调试问题。

限制

并非Google Analytics中的所有数据都可以通过API访问,请在Matomo中未显示的数据报告列表下方:

  • 导入器只导入汇总的报告数据,而不是原始的访问和操作数据。这意味着访客记录,
    电子商务日志和分割功能将不能为导入的报告工作。
    这也意味着非工作日期间(如周和月期间)的唯一访问者指标和用户指标将不可用。
  • 谷歌Analytics不支持Matomo中的一些报告,如“无结果搜索关键字”和内容报告。导入后,这些报告将不会显示数据。
  • 谷歌Analytics的一些报告还没有导入Matomo(如Funnels报告)。如果您在Matomo发现任何您希望看到进口的丢失报告,请告知我们详情在这个问题跟踪器中
  • Google从内部站点搜索URL中播放搜索参数,但显示页面URL报告中的网址。这意味着当我们导入该报告时,我们无法判断其中一个页面实际上是内部站点搜索,因此在导入的报告中,搜索页面URL将包含在页面URL和页面标题报告中。
  • 谷歌的电子商务转化率与Matomo的不同。谷歌将其定义为每个会话的交易数量,Matomo将其定义为至少有一个订单的访问百分比。所以这个指标不能导入。
  • 谷歌的出口和入口率与Matomo不同。Matomo将入口/出口率定义为页面URL/页面标题在一次访问中是第一次/最后一次浏览量的百分比。在谷歌Analytics中,速率被定义为一个页面URL/标题在一个会话中是第一次/最后一次浏览的所有点击的百分比。所以马托莫的比率看起来是不同的。
  • 此外,谷歌Analytics在记录页面浏览量时并不总是设置会话计数(参见他们的文档更多信息)。这意味着谷歌Analytics不会统计某些会话,并且某些操作的会话计数可能低于实际值。在这种情况下,出口/进口利率将被计算为> 100%。这并不会影响谷歌Analytics,因为这里的进入/退出率是根据总点击数而不是会话数计算的。
  • 产品报告缺少产品转化率和访问指标,因为不能通过谷歌Analytics API用产品维度查询会话。
  • 导入器假定您已经安装了GeoIp2。如果不这样做,数据将被正确导入,但报告将显示许多未知区域,直到安装GeoIp2。