projectnessie / nessie

Nessie: Transactional Catalog for Data Lakes with Git-like semantics
https://projectnessie.org
Apache License 2.0
908 stars 117 forks source link

Expose object store(s) availability as a readiness check #8893

Closed snazy closed 1 week ago

snazy commented 1 week ago

Sample of a successful check:

{ "status": "UP",
  "checks": [
    {
      "name": "Warehouses Object Stores",
      "status": "UP",
      "data": {
        "warehouse.warehouse.object-store.availability": true
      }
} ] }

Sample of a failed check (with a wrong S3 access key):

{ "status": "DOWN",
  "checks": [ {
    "name": "Warehouses Object Stores",
    "status": "DOWN",
    "data": {
      "warehouse.warehouse.object-store.availability": false,
      "warehouse.warehouse.object-store.error": "java.io.IOException: software.amazon.awssdk.services.s3.model.S3Exception: The Access Key Id you provided does not exist in our records. (Service: S3, Status Code: 403, Request ID: 17DB0B619B94C358, Extended Request ID: dd9025bab4ad464b049177c95eb6ebf374d3b3fd1af9251148b658df7ac2e3e8)"
  } } ] }

Fixes #8833