1
0
mirror of https://github.com/Luzifer/promcertcheck.git synced 2024-09-07 19:49:07 +00:00
Small monitoring tool to check URLs for their certificate validity with Prometheus endpoint
Go to file
2021-02-19 19:14:48 +01:00
.gitignore Force latest version of pongo2 2017-11-05 16:50:25 +01:00
.repo-runner.yaml Replace repo-runner image 2018-06-04 11:24:52 +02:00
bindata.go Only display cert info when a cert was found 2018-10-01 15:12:08 +02:00
cert.go Add go modules support 2021-02-19 19:11:42 +01:00
CONTRIBUTING.md Update meta files 2017-06-26 15:27:56 +02:00
display.html Only display cert info when a cert was found 2018-10-01 15:12:08 +02:00
Dockerfile Update Dockerfile for readonly mods 2021-02-19 19:12:47 +01:00
go.mod Add go modules support 2021-02-19 19:11:42 +01:00
go.sum Add go modules support 2021-02-19 19:11:42 +01:00
History.md prepare release v0.9.0 2021-02-19 19:14:48 +01:00
http.go Add error logging for http rendering errors 2018-10-01 15:07:52 +02:00
LICENSE Fix copyright line in LICENSE 2018-06-04 11:24:12 +02:00
main.go Add go modules support 2021-02-19 19:11:42 +01:00
Makefile Minor refactorings 2017-11-05 17:38:33 +01:00
probe.go Lint: Make go vet happy, remove useless tags 2018-09-28 23:52:51 +02:00
README.md Update README 2018-06-04 12:56:34 +02:00

Go Report Card

Luzifer / PromCertcheck

This project contains a small monitoring tool to check URLs for their certificate validity. The URLs are polled once per hour and the certificates from that URLs are validated against the root certificates available to the program. (Provided by the operating systems distributor or manually set by you if you're using a docker container.)

Features

  • Validates the certification chain including provided intermediate certificates
  • Warns before the certificates expires
  • Gives a handy overview over all monitored URLs
  • Data is made available in Prometheus readable format for monitoring
  • Provide own root certificates to accept for chain validation

Usage

# ./promcertcheck --help
Usage of ./promcertcheck:
      --expire-warning duration   When to warn about a soon expiring certificate (default 744h0m0s)
      --listen string             Port/IP to listen on (default ":3000")
      --log-level string          Verbosity of logs to use (debug, info, warning, error, ...) (default "info")
      --probe strings             URLs to check for certificate issues
      --roots-dir string          Directory to load custom RootCA certs from to be trusted (*.pem)
      --version                   Print program version and exit

# ./promcertcheck --probe=https://www.google.com/ --probe=https://www.facebook.com/
PromCertcheck dev...
Starting to listen on 0.0.0.0:3000

URLs

Endpoint Description
/ Shows you a human readable version of the check data
/httpStatus Endpoint for simple automated health checks: Delivers HTTP200 in case everything is fine or HTTP500 when one or more certificates are broken
/metrics Prometheus compatible output of the check data
/results.json Gives you a JSON version of the check results including certificate details