From 7603b15ffbca185d97dd1b05aee7cb16354beaaa Mon Sep 17 00:00:00 2001 From: repair-agent Date: Tue, 24 Feb 2026 13:17:11 +0800 Subject: [PATCH] feat(ops): add Log Center env vars to K8s and CI/CD failure reporting - K8s: add ENVIRONMENT, LOG_CENTER_URL, LOG_CENTER_ENABLED to dev/prod - CI/CD: report build/deploy failures to Log Center (source: cicd) Co-Authored-By: Claude Opus 4.6 --- .gitea/workflows/deploy.yaml | 38 ++++++++++++++++++++++++++++---- k8s/backend-deployment-dev.yaml | 8 +++++++ k8s/backend-deployment-prod.yaml | 8 +++++++ 3 files changed, 50 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index ec898d4..f16744a 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -61,13 +61,43 @@ jobs: INGRESS_FILE="k8s/ingress-dev.yaml" DEPLOY_NAME="rtc-backend-dev" fi - + # 2. 替换镜像地址 sed -i "s|\${CI_REGISTRY_IMAGE}/backend:latest|${{ secrets.SWR_SERVER }}/${{ secrets.SWR_ORG }}/rtc-backend:latest|g" $DEPLOY_FILE - + # 3. 应用配置 - # kubectl apply -f k8s/redis-deployment.yaml (Cloud Redis used, skipping) kubectl apply -f $DEPLOY_FILE kubectl apply -f $INGRESS_FILE - + kubectl rollout restart deployment/$DEPLOY_NAME + + - name: Report failure to Log Center + if: failure() + run: | + curl -s -X POST "https://qiyuan-log-center-api.airlabs.art/api/v1/logs/report" \ + -H "Content-Type: application/json" \ + -d "{ + \"project_id\": \"rtc_backend\", + \"environment\": \"${{ github.ref_name }}\", + \"level\": \"ERROR\", + \"source\": \"cicd\", + \"commit_hash\": \"${{ github.sha }}\", + \"repo_url\": \"https://gitea.airlabs.art/zyc/rtc_backend.git\", + \"error\": { + \"type\": \"CICDFailure\", + \"message\": \"Build and Deploy failed on branch ${{ github.ref_name }}\", + \"stack_trace\": [ + \"Repository: ${{ github.repository }}\", + \"Branch: ${{ github.ref_name }}\", + \"Commit: ${{ github.sha }}\", + \"Run ID: ${{ github.run_id }}\", + \"Actor: ${{ github.actor }}\" + ] + }, + \"context\": { + \"workflow\": \"${{ github.workflow }}\", + \"run_id\": \"${{ github.run_id }}\", + \"branch\": \"${{ github.ref_name }}\", + \"actor\": \"${{ github.actor }}\" + } + }" || true diff --git a/k8s/backend-deployment-dev.yaml b/k8s/backend-deployment-dev.yaml index e6cb440..a486430 100644 --- a/k8s/backend-deployment-dev.yaml +++ b/k8s/backend-deployment-dev.yaml @@ -60,6 +60,14 @@ spec: value: "LTAI5tBGAkR2rra2prTAX9yc" - name: ALIYUN_LOG_ACCESS_KEY_SECRET value: "U1z3d0p5saPRD5sCxVooJYSjxSAmKB" + + # Log Center + - name: ENVIRONMENT + value: "development" + - name: LOG_CENTER_URL + value: "https://qiyuan-log-center-api.airlabs.art" + - name: LOG_CENTER_ENABLED + value: "true" resources: requests: memory: "256Mi" diff --git a/k8s/backend-deployment-prod.yaml b/k8s/backend-deployment-prod.yaml index 8b6b368..162b032 100644 --- a/k8s/backend-deployment-prod.yaml +++ b/k8s/backend-deployment-prod.yaml @@ -68,6 +68,14 @@ spec: value: "https://qiyuan-rtc-web.airlabs.art,https://qiyuan-rtc-dev-web.airlabs.art" - name: CSRF_TRUSTED_ORIGINS value: "https://qiyuan-rtc-web.airlabs.art,https://qiyuan-rtc-dev-web.airlabs.art,https://qiyuan-rtc-api.airlabs.art" + + # Log Center + - name: ENVIRONMENT + value: "production" + - name: LOG_CENTER_URL + value: "https://qiyuan-log-center-api.airlabs.art" + - name: LOG_CENTER_ENABLED + value: "true" resources: requests: memory: "256Mi"