Healthchecks in elastic-docker-tls.yml always pass.

Open
#1,846 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
45/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Stale
Tech stack
docker
Domain
devops

Research direction

Start by inspecting the healthcheck definitions in elastic-docker-tls.yml and reproduce the current behavior for an inaccessible node or a node exposed on the wrong port. Verify that each healthcheck returns a failing status when the node cannot be reached, while still passing for the expected response; done means the healthcheck no longer always succeeds.

Written by the indexing model from the issue text.

Description

The current healthchecks, which look like this: curl --cacert $CERTS_DIR/ca/ca.crt -s https://localhost:9200 >/dev/null; if [[ $$? == 52 ]]; then echo 0; else echo 1; fi, pass even if a node is exposed on a port other than 9200, or if the node is not accessible for some reason. The echo commands both return a response code of 0.

Getting rid of the if statement fixes this, but we could also add logic to the healthcheck based on the http response code.

Dominant language
Java
Stars
105
Forks
249
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from elastic/stack-docs

All issues in elastic/stack-docs

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.