获取 Nexus 3 中特定存储库的大小
Get size of specific repository in Nexus 3
如何获取 Nexus 3 中特定存储库的大小?
例如,Artifactory 通过 UI.
显示存储库 "size on disk"
Nexus 有类似的东西吗?如果没有 - 我如何通过脚本获取此信息?
将每个存储库分配给它自己的 Blob 存储。
您可以使用来自 https://issues.sonatype.org/browse/NEXUS-14837 的 groovy 脚本 nx-blob-repo-space-report.groovy 的管理任务 - 对我来说太慢了
或者您可以从数据库中获取:
在 nexus 服务器上使用用户所有者 nexus 安装登录(例如
关系)
转到应用程序目录(例如/opt/nexus):
$ cd /opt/nexus
运行 java 东方控制台:
$ java -jar ./lib/support/nexus-orient-console.jar
连接到本地数据库(例如/opt/sonatype-work/nexus3/db/component):
> CONNECT PLOCAL:/opt/sonatype-work/nexus3/db/component admin admin
通过 repository_name 值
找出@RID 列中的存储库行 ID
> select * from bucket limit 50;
获取在上一步中找到的具有回购行 ID 的所有资产的总和:
> select sum(size) from asset where bucket = #15:9;
结果应该是这样的(显然以字节为单位):
+----+------------+
|# |sum |
+----+------------+
|0 |224981921470|
+----+------------+
nexus 数据库连接步骤取自 https://support.sonatype.com/hc/en-us/articles/115002930827-Accessing-the-OrientDB-Console
另一个有用的查询
按存储库名称汇总大小(而不是 5 和 6 步):
> select sum(size) from asset where bucket.repository_name = 'releases';
按大小排列的前 10 个存储库:
> select bucket.repository_name as repository,sum(size) as bytes from asset group by bucket.repository_name order by bytes desc limit 10;
如何获取 Nexus 3 中特定存储库的大小?
例如,Artifactory 通过 UI.
显示存储库 "size on disk"Nexus 有类似的东西吗?如果没有 - 我如何通过脚本获取此信息?
将每个存储库分配给它自己的 Blob 存储。
您可以使用来自 https://issues.sonatype.org/browse/NEXUS-14837 的 groovy 脚本 nx-blob-repo-space-report.groovy 的管理任务 - 对我来说太慢了
或者您可以从数据库中获取:
在 nexus 服务器上使用用户所有者 nexus 安装登录(例如 关系)
转到应用程序目录(例如/opt/nexus):
$ cd /opt/nexus
运行 java 东方控制台:
$ java -jar ./lib/support/nexus-orient-console.jar
连接到本地数据库(例如/opt/sonatype-work/nexus3/db/component):
> CONNECT PLOCAL:/opt/sonatype-work/nexus3/db/component admin admin
通过 repository_name 值
找出@RID 列中的存储库行 ID> select * from bucket limit 50;
获取在上一步中找到的具有回购行 ID 的所有资产的总和:
> select sum(size) from asset where bucket = #15:9;
结果应该是这样的(显然以字节为单位):
+----+------------+
|# |sum |
+----+------------+
|0 |224981921470|
+----+------------+
nexus 数据库连接步骤取自 https://support.sonatype.com/hc/en-us/articles/115002930827-Accessing-the-OrientDB-Console
另一个有用的查询
按存储库名称汇总大小(而不是 5 和 6 步):
> select sum(size) from asset where bucket.repository_name = 'releases';
按大小排列的前 10 个存储库:
> select bucket.repository_name as repository,sum(size) as bytes from asset group by bucket.repository_name order by bytes desc limit 10;