如何获取打包状态统计信息?

时间:2019-03-27 04:58:48

标签: go

我试图跟踪和了解各种go软件包的下载状态,以评估随时间推移我团队发布和发布的go驱动程序的下载情况。 类似于npm-stats https://npm-stat.com/

我看到pip-pythonnpm有类似的统计信息。 https://npm-stat.com/

4 个答案:

答案 0 :(得分:1)

一旦“ Go Modules in 2019”中所述的Go Notary服务到位,就会发生这种情况:

  

对于公开可用的模块,我们打算运行一种服务,我们称其为公证人,该服务遵循模块索引日志,下载新模块,并用密码签名形式为“版本V的模块M具有文件树哈希H”的语句。公证服务将以可查询的Certificate Transparency样式tamper-proof log发布所有这些经过公证的哈希值,以便任何人都可以验证公证人的行为是否正确。
  此日志将用作公共的全局go.sum文件,在添加或更新依赖项时,go get可以使用该文件来对模块进行身份验证。

https://blog.golang.org/modules2019/code.png

  

我们的目标是让go命令检查从Go 1.13开始没有经过公证的哈希的公证哈希。

如果要生成统计信息,那么Go公证将是可靠的来源(用于公共软件包)

答案 1 :(得分:0)

您不能这样做。 这些都是Go语言的一部分。像npm软件包一样,您无需下载。

答案 2 :(得分:0)

Go没有集中式软件包注册中心,例如npm或pip。

此外,go依赖性管理仍然不是“统一的”,有些使用dep,有些使用glidego mod。所有这些都依赖于版本控制软件,例如git。

如果您的软件包位于Github上,则可以查看“数据分析”>“流量”标签,然后查看唯一的克隆器。

另一种解决方案可能是对git服务器实施代理以跟踪克隆。

答案 3 :(得分:0)

尝试gocenter.io,它包括所有可用模块的下载统计信息。示例-logrus被下载544k次以上-https://search.gocenter.io/github.com~2Fsirupsen~2Flogrus/info?version=v1.4.3-0.20191026113918-67a7fdcf741f