Get Status of the PUD Process

JFrog REST APIs

Products
JFrog Xray
Content Type
REST API
ft:sourceType
Paligo

Description: Get the current status of the PUD process (i.e., running, stopped, finished, or error) along with relevant data on the process such as total binaries deleted, total size of disk space cleaned, information on the last handled directory, and other information.

Security: Requires an admin user.

Produces: application/json

Usage:

curl -u <user_name>:<password> -XGET http://artifactory_host:port/artifactory/api/system/storage/prune/status

Since: 7.72

Sample Usage:

curl -u admin:password -XGET http://localhost:8082/artifactory/api/system/storage/prune/status

Sample Responses:

If the PUD process has never run on your filestore, you will get the following response:

HTTP/1.1 412 Precondition Failed
Content-Type: application/json
{
    "info": "No Prune task found"
}

Here is a sample response, if the PUD process ran at least once on your filestore:

HTTP/1.1 200 OK
Content-Type: application/json
{
  "status": "running",
  "dryRun": true,
  "timing": {
    "startedAtMillis": 1692862063727,
    "startedAt": "2023-08-24T10:27:43",
    "durationMillis": 285404,
    "duration": "0:04:45.404",
    "lastUpdatedMillis": 1692862349131,
    "lastUpdated": "2023-08-24T10:32:29"
  },
  "progress": "2 of 256",
  "report": {
    "totalBinariesProcessed": 2,
    "totalBinariesCleaned": 0,
    "totalBytesCleaned": 0
  },
  "lastHandledDirectory": {
    "name": "01",
    "status": "finished",
    "binariesProcessed": 1,
    "binariesCleaned": 0,
    "bytesCleaned": 0,
    "timing": {
      "startedAtMillis": 1692862347041,
      "startedAt": "2023-08-24T10:32:27",
      "durationMillis": 2090,
      "duration": "0:00:02.090",
      "lastUpdatedMillis": 1692862349131,
      "lastUpdated": "2023-08-24T10:32:29"
    }
  }
}

The response includes the following information:

Property

Description

status

The status of the PUD process, which will be one of the following:

  • running: The PUD process is currently running and prune-eligible binaries are being deleted.

  • stopped: The PUD process has been manually stopped.

  • finished: The PUD process has finished.

  • error: The PUD process has stopped due to an unrecoverable error. Error details will appear in the error element of the JSON response (this element appears only when an error occurs).

dryRun

It is possible to execute the PUD process without actually deleting unreferenced binaries. A user might want to do this to test the PUD process or to get an estimation of the number prune-eligible binaries.

The dryRun flag indicates whether or not the PUD process is actually deleting binaries. This flag is set when calling the Start PUD API.

timing

This array contains the following data:

  • startedAtMillis: The time in milliseconds when the PUD process started.

  • startedAt: The time when the PUD process started.

  • durationMillis: – The duration of the PUD process in milliseconds up until the point when this report was issued.

  • duration: The duration of the PUD process up until the point when this report was issued.

  • lastUpdatedMillis: The time in milliseconds at which this report was issued.

  • lastUpdated: The time at which this report was issued.

progress

The number of directories that have been processed thus far.

report

This array contains the following data:

  • totalBinariesProcessed: The total number of binaries processed thus far.

  • totalBinariesCleaned: The total number of binaries removed thus far.

  • totalBytesCleaned: The total number of bytes reclaimed by the PUD process.

lastHandledDirectory

This array contains the following data:

  • name: The name of the directory that was being processed when this report was issued.

  • status: Has the same possible values as the main status property, but relates to this directory only.

  • binariesProcessed: The number of binaries processed in this directory.

  • binariesCleaned: The number of binaries removed in this directory.

  • bytesCleaned: The number of bytes reclaimed in this directory.

  • timing: The properties in this array are the same as the main timing array above, but apply to the last handled directory only.