Sha256: 378a769aff9c5b09e71dfeb29c8b6d8327d56ac8085e2e1b414e6203fec2f690
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
#!/bin/bash set -euo pipefail # If health check URL provided, wait till it passes. if [ -n "$HEALTH_CHECK_URL" ]; then STATUS=${HEALTH_CHECK_STATUS:-204} INTERVAL=${HEALTH_CHECK_INTERVAL:-5} MAX_ATTEMPTS=${HEALTH_CHECK_MAX_ATTEMPTS:-5} ATTEMPTS=0 echo -e "\n== HTTP Health check ==" echo "Target: $HEALTH_CHECK_URL" echo "Healthy status: $STATUS" echo "Poll interval: $INTERVAL seconds" echo "** Polling until healthy state... **" printf "Attempt ($(($ATTEMPTS + 1))/$MAX_ATTEMPTS): " while [[ "$(curl --max-time $INTERVAL -s -o /dev/null -w ''%{http_code}'' $HEALTH_CHECK_URL)" != $STATUS ]]; do printf "FAIL" ATTEMPTS=$[ATTEMPTS + 1] if (( $ATTEMPTS >= $MAX_ATTEMPTS )); then echo -e "\nERROR: Health check max attempts reached for $HEALTH_CHECK_URL" >&2 exit 1 else printf " (Waiting $INTERVAL seconds...)\n" sleep $INTERVAL fi printf "Attempt ($(($ATTEMPTS + 1))/$MAX_ATTEMPTS): " done echo "SUCCESS" echo -e "== HTTP Health check complete. ==\n" fi
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ddtrace-0.47.0 | integration/images/include/http-health-check |
ddtrace-0.46.0 | integration/images/include/http-health-check |