Files
grafana_alerts/.gitea/workflows/health_check.yml
kyy 3e03c4d065
Some checks failed
API Health Check / health-check (push) Failing after 43s
LLM Gateway Health check 추가
2025-10-10 13:51:27 +09:00

36 lines
1.3 KiB
YAML

name: API Health Check
on:
schedule:
- cron: '* * * * *'
jobs:
health-check:
runs-on: ubuntu-latest
steps:
- name: Check API Health and Notify on Failure
run: |
success=false
for i in $(seq 1 5); do
response=$(curl -s -o /dev/null -w "%{\http_code}" http://172.16.10.176:8888/health/API)
content=$(curl -s http://172.16.10.176:8888/health/API)
if [ "$response" -eq 200 ] && echo "$content" | grep -q "ok"; then
echo "API is healthy (Attempt $i)."
success=true
break
else
echo "API health check failed (Attempt $i). HTTP Status: $response, Content: $content"
if [ $i -lt 5 ]; then
sleep 10 # Wait for 10 seconds before retrying
fi
fi
done
if [ "$success" = "false" ]; then
echo "API health check failed after 5 attempts. Sending notification to Mattermost."
curl -i -X POST -H 'Content-Type: application/json' -d '{"text": "## 🚨 API 상태 확인 실패\n**엔드포인트:** `http://172.16.10.176:8888/health/API`\n\nAPI가 5번의 시도에 응답하지 않습니다. 확인이 필요합니다."}' ${{ secrets.MATTERMOST_WEBHOOK }}
exit 1
fi