Google Analytics Importer Plugin将Google Analytics导入报告到Matomo实例。

运行导入时,您的Google Analytics(GA)属性将自动创建为网站进入马托莫(以及您的目标自定义尺寸)和GA中的所有历史报告将被导入,以便您可以在Matomo中查看所有的web分析数据。

如果您发现错误或有任何反馈,请请在Github上报道。

要求

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

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

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

Matomo云

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

设置

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

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

不需要此步骤,但使进口过程更容易。

可以在GoogleAPI控制台中定义两种类型的Google项目:外部和内部。

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

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

2)创建Google OAuth客户端配置

开始之前请注意重要事项:在这些步骤中,你不会被要求提交你的“应用程序”到谷歌进行验证。如果你被提示提交你的“应用程序”,但没有点击选项取消,然后请再次回顾本指南中的步骤,以确保您没有遗漏重要的步骤,或在不必要的地方添加额外的信息。

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

  1. 登录到谷歌API控制台

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

  3. 要创建新项目,请单击覆盖中的“新建项目”按钮:

  4. 为您的新项目提供有用的名称(例如Matomo Google Analytics进口商).

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

  6. 点击图书馆在左侧的菜单中,然后搜索Google Analytics API.,然后单击该项目Google Analytics API.. 然后在该API的描述页面上,单击使能够按钮

  7. 为此做同样的事情Google Analytics报告API

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

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

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

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

  12. 选择“Google Analytics API”范围的范围只读财产和点击更新然后点击保存并继续

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


  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/php?module=GoogleAnalyticsImporter&action=processAuthCode加在末尾。例如:https://matomo.my-website.com/index.php?module=GoogleAnalyticsImporter&action=processAuthCode
    注意:上面的URL是HTTPS:我们强烈建议您运行Matomo实例通过SSL. 如果您的Matomo还不支持https,您可以替换URL并使用http。
    如果您正在使用Matomo for WordPress:URL必须以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过程时,您可能仍然会收到来自Google的警告,称“Google尚未验证此应用程序”。
在这种情况下,您可以通过点击“高级”,然后“转到matomo”安全地继续。云(不安全)”或“去yourdomain.com(不安全)”

3)授权Matomo

一旦您下载了您的OAuth客户端凭证,您可以授权您的Matomo访问您的谷歌Analytics数据:

  1. 以用户身份登录超级用户然后去政府

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

  3. 上传您下载的OAuth客户端凭据如何设置谷歌OAuth客户端配置通过点击配置文件,选择文件,然后单击拯救
    上传导入器的客户端配置

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

重要提示:如果你选择外部在配置谷歌项目时,您可能需要定期重新授权Matomo。谷歌确保对测试用户的授权外部项目将在七天后到期,此时导入将失败,您必须重新授权Matomo。不幸的是,解决这一问题的唯一方法是临时购买一个Google Workspace帐户并使您的项目内部

运行Google Analytics导入

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

注意:谷歌限制了您每天可以发出的API请求的数量(最多50,000)。在导入每天都有数据的约4个月的数据后,导入将达到这个限制。这只需要几个小时。这意味着导入必须运行数天,直到导入整个数据集。

使用管理页面

使用admin UI:

  1. 去医院谷歌分析进口管理页面。
  2. 填写表格安排导入表格并点击开始

    附表进口表格

  3. 随着导入的继续进行,您将能够通过进口工作下表:

    导入作业列表

    随时刷新页面以获得更新后的状态。

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

使用命令行

你也可以在命令行上运行导入,如果你想看到更多关于它的进展信息:

  1. 首先你需要一些信息。在Google Analytics仪表板中,打开属性选择器。
  2. 注意属性ID查看ID.用于您想要导入的属性/视图。
  3. SSH.进入你的Matomo实例
  4. 运行以下命令以导入您的网站:
    $cd/path/to/my/matomo
    $php./console GoogleAnalyticImporter:导入报告--属性=--视图=--日期=

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

然后等待导入完成,这可能需要一些时间。

如果您想恢复现有的导入,请提供——idsite = < idsite >使用为此导入创建的站点的参数(这将在Admin页面中的导入状态表中)。

一旦导入完成,您可以删除您之前授予的授权。Matomo只需要访问Google Analytics,同时进口数据,之后没有任何意义。

进口商选项

导入移动应用属性

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

导入移动应用程序

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

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

导入不支持的GA尺寸

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

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

额外的自定义维度映射

使用这个列表找到GA尺寸的正确ID。

导入时,对于每个额外的映射,导入站点中将使用一个自定义维度槽。(注意:如果您的Matomo中没有足够的自定义标注槽,则会出现错误。)

导入后

将数据导入Matomo后,最好备份Matomo的数据库。如果要清除或以某种方式删除导入的报告数据,则必须从GA重新导入数据。如果GA属性已被删除,则数据将永远消失。

如果您定期备份数据库(或者您的主机为您备份),那么您真的不需要担心这个问题。

从Google Analytics切换的工作流程

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

设置跟踪到您的matomo并导入带有结束日期的站点

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

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

然后,只要你准备好了,就用GA结束你的跟踪从谷歌Analytics FAQ迁移

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

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

当您准备好切换到Matomo时,您可以手动取消导入并开始跟踪到Matomo(确保您在取消导入之前准备开始跟踪,因为您需要几天的时间来设置,那些天赢了’t have data in Matomo). Then you can stop tracking into GA.

如果您正在评估Matomo,但尚未准备投入到Matomo的跟踪时,这种方法可能很有用。

故障排除

我的import永远不会继续

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

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

设置cron归档后,使用TasksTimetable插件确定何时下次运行计划任务(相关任务将拥有Piwik \ Plugins \ GoogleAnalyticsImporter \任务的名字)。

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

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

如果您使用的是共享主机,那么您的主机可能只是在一段时间后终止进程。这不是马托莫或你能解决的问题。你要么和你的主人谈谈,要么找另一种方式招待Matomo。

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

  • 尝试通过CLI命令而不是UI导入数据。当您这样做时,请确保您使用的PHP可执行文件是CLI PHP版本,而不是其他版本(例如,php7-cli vs 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-GoogleAnalyticImporter:import-reports--idsite=).

我的导入每次都在同一天失败

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

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

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

局限性

并不是谷歌Analytics中的所有数据都可以通过API访问,请查看以下数据报告列表,这些数据报告不会在Matomo中显示:

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