Nexus:我们有多少件文物?

时间:2012-09-10 13:12:34

标签: nexus

在工作中,我们已经使用Nexus OSS 1.8.0几年了。最近,我(作为Nexus管理员)被问到我们的实例中有多少工件。这是一个非常简单的问题,但我无法在任何地方找到答案:

  • 我无法在Nexus的UI,Google或此处找到它;
  • 查看Nexus的REST API,有一个搜索端点(twoactually,虽然 data_index 现已弃用),它也会返回查询结果的数量屈服了(字段 totalCount ),除了我还没弄明白如何只搜索所有内容:提供一个空参数会产生400响应。

我提供了对我们所拥有的许多文物的合理估计,现在这已经足够好了,但我的工作量比我觉得应该有的还多......有没有人有同样的问题?


更新

我需要知道我们有多少内部工件(而不是来自Maven Central的外部依赖项等),所以我最终获得了GET-ing:

http://<OUR-NEXUS>/service/local/lucene/search?q=*&repositoryId=<OUR-REPO>

为每个托管存储库添加 totalCount 字段。

对于完整计数,搜索q=*会产生太多结果,所以我跑了:

find $PATH_TO_SONATYPE_HOME | grep sha1 | egrep -v 'nexus-maven-repository-index|repository-metadata|maven-metadata|\.pom\.sha1' | wc -l

但我仍然感到惊讶,这类信息并不容易获得......

2 个答案:

答案 0 :(得分:2)

尝试以下方法:

find $PATH_TO_SONATYPE_HOME -name "*.jar" | wc -l

它只计算JAR artfacts,但通常占Nexus中存储的大量文件

答案 1 :(得分:1)

Mark建议的是好的,但是如果你计算sha1文件,你会得到更准确的计数,因为nexus会在上传每个工件时创建该文件。