Skip to content

cardano-tracer: Add TLS (SSL) functionality to EKG/Prometheus.#6433

Merged
mgmeier merged 1 commit intomasterfrom
baldurb/tls
Feb 17, 2026
Merged

cardano-tracer: Add TLS (SSL) functionality to EKG/Prometheus.#6433
mgmeier merged 1 commit intomasterfrom
baldurb/tls

Conversation

@Icelandjack
Copy link
Contributor

@Icelandjack Icelandjack commented Feb 9, 2026

Description

Implement TLS (SSL) functionality for EKG and Prometheus services.

SSL enforcement is configurable on a per-endpoint basis, users can now secure metrics exposure over HTTPS. An endpoint is either accessed through HTTP or HTTPS.

When epForceSSL (optional field) is enabled for an endpoint and valid certificates are provided, the servers (EKG and Prometheus) switch to using warp-tls for secure connections. This incorporates error handling and tracing for missing or invalid certificates. Not available for RTView.

{ "hasEKG":
  { "epHost": "127.0.0.1"
  , "epPort": 3100
  , "epForceSSL": true
  }
, "hasPrometheus":
  { "epHost": "127.0.0.1"
  , "epPort": 3000
  ,  "epForceSSL": true
  }
, ..
}

Supports a new certificate configuration (certificate, certificate key and optional certificate chain list), by specifying the optional tlsCertificate field. There is only one certificate that applies to all services.

{ "tlsCertificate":
  { "certificateFile": "/path/to/certificate.pem"
  , "certificateKeyFile": "/path/to/key.pem"
  , "certificateChain": ["/path/to/intermediate1.pem", "/path/to/intermediate2.pem"]
  }
, ..
}

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. These may include:
    • golden tests
    • property tests
    • roundtrip tests
    • integration tests
      See Runnings tests for more details
  • Any changes are noted in the CHANGELOG.md for affected package
  • The version bounds in .cabal files are updated
  • CI passes. See note on CI. The following CI checks are required:
    • Code is linted with hlint. See .github/workflows/check-hlint.yml to get the hlint version
    • Code is formatted with stylish-haskell. See .github/workflows/stylish-haskell.yml to get the stylish-haskell version
    • Code builds on Linux, MacOS and Windows for ghc-9.6 and ghc-9.12
  • Self-reviewed the diff

@Icelandjack Icelandjack requested review from a team as code owners February 9, 2026 13:05
@Icelandjack Icelandjack marked this pull request as draft February 9, 2026 13:39
@Icelandjack Icelandjack force-pushed the baldurb/tls branch 7 times, most recently from 2cf625d to fb29767 Compare February 16, 2026 13:33
@Icelandjack Icelandjack marked this pull request as ready for review February 16, 2026 14:10
@Icelandjack Icelandjack requested a review from a team as a code owner February 16, 2026 14:10
@Icelandjack Icelandjack force-pushed the baldurb/tls branch 4 times, most recently from 3ddbe1d to 40235fb Compare February 16, 2026 14:12
Copy link
Contributor

@mgmeier mgmeier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Icelandjack Icelandjack force-pushed the baldurb/tls branch 3 times, most recently from 023b9cf to eaeff57 Compare February 16, 2026 14:30
Signed-off-by: Baldur Blöndal <baldur.blondal@iohk.io>
@mgmeier mgmeier added this pull request to the merge queue Feb 17, 2026
Merged via the queue into master with commit 190511f Feb 17, 2026
25 checks passed
@mgmeier mgmeier deleted the baldurb/tls branch February 17, 2026 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants