gpt4 book ai didi

google-analytics - 如何跟踪我的 Greasemonkey 脚本有多少次自动升级下载?

转载 作者:行者123 更新时间:2023-12-03 16:11:27 25 4
gpt4 key购买 nike

我有一个页面,其中包含一系列指向 Greasemonkey 用户脚本的链接。用户脚本有 @updateURL参数设置,这样当我将新版本上传到页面时,安装了脚本的人要么自动更新其版本,要么被询问是否要升级。

这一切都很好。我在托管页面上安装了谷歌分析,所以我可以看到页面获得了多少点击,但我想知道有多少人获得了更新。
正常的分析不起作用,因为它们都依赖于点击链接的人,但是 Greasemonkey 下载更新的文件而不点击任何东西(或者,据我所知,在分析中触发页面点击)。

我假设我需要一个服务器端解决方案,但我不知道它会是什么样子。也许以上关于 GM 的所有内容都无关紧要,简单的问题是:
如何跟踪从我的服务器下载文件的次数(不依赖于计算下载链接的点击次数)?

[ 编辑更多信息 ]

@Brock Adams 谢谢你的回答 - 它非常详细,正是我想要的。我不知道单独的 meta.js选项,但稍微阅读一下,我发现这是一个好主意,因为这意味着只有 meta.js检查更新时必须下载文件(而不是整个 user.js 文件)。当我设置它时,自动更新是一种新事物,并且没有太多关于它们的文档。
我仍然找不到太多,所以我想知道你是否能澄清一下。主要 user.js 中的元数据文件保持不变,只是有一个指向 meta.js 的指针在 @updateURL并且没有版本号,即:

// ==UserScript==
// @namespace http://namespace.com/userscripts
// @description some description.
// @downloadURL https://namespace.com/userscripts/example.user.js
// @updateURL https://namespace.com/userscripts/example.meta.js
// @include https://example.com/*
// @grant none
// ==/UserScript==

然后是所有 example.meta.js必须有
// ==UserScript==
// @version 2.1
// ==/UserScript==

那是对的吗?再次感谢。

最佳答案

这样做的唯一方法是处理您的 HTTP 服务器日志(由 Apache、Nginx 等保存)。谷歌分析无法做到这一点,因为它依赖于运行自己的 javascript——脚本更新和直接下载会绕过它。

您可以从主机控制面板或通过 FTP 访问原始 HTTP 日志。有关更多信息,请咨询您的托管公司。

在原始日志中,直接下载通常如下所示:

107.178.216.165 - - [12/Jun/2014:17:22:35 -0500] "GET /test/Alert.user.js HTTP/1.1" 200 37 "-" "Mozilla/5.0 {redacted} Firefox"

请注意缺少引荐来源网址(浏览器信息前面的 "_" 列),这些通常是来自给定 IP 地址的该 session 的唯一请求,而典型的页面请求 GET每个 session 几个文件。

不幸的是,大多数主机提供的标准日志分析程序是 Webalizer 和 Awstats。这些都不会帮助您按原样跟踪下载。但是,您可以 set up a custom AWStats config file并将其配置为查看 *.user.js文件作为下载(见 this answer for a possible recipe )。

重要提示: 当 Greasemonkey 检查更新时,它会下载 @updateURL 指定的文件。 (或 @downloadURL 如果未指定 @updateURL)- 只是为了比较版本号。

因此,要跟踪真实下载,请始终使用 use a separate *.meta.js file对于 @updateURL指示。这将避免将例行检查计为下载。

关于google-analytics - 如何跟踪我的 Greasemonkey 脚本有多少次自动升级下载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24192244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com