Apigee 已知問題

本頁內容適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

選取下列一或多個選項,篩選這個頁面:

本節列出 Apigee 元件的已知問題。如要查看錯誤、新功能和其他版本資訊的清單,請參閱版本資訊

問題 ID 影響 狀態 說明
hybrid 1.16.0 開啟 Hybrid 1.16.0 缺少 RBAC 權限,導致 Proxy 無法完成部署。

在 1.16.0 中,混合式叢集可能會無法回報 Proxy 的部署狀態,這是已知問題。這是因為 apigee-manager-role 角色缺少權限。

解決方法:將權限新增至 apigee-operator Helm 圖表範本:

  1. 編輯 apigee-operator Helm 資訊套件範本檔案 apigee-operator/templates/apigee-operators.yaml
  2. 在第 584 行的 - update 動詞後方,將 - watch 動詞新增至 deployments 資源。
  3. 更新 apigee-operator Helm 版本。
418274570 hybrid 1.16.0 固定 Hybrid 版本資訊頁面未更新 1.16.0-hotfix.1 資訊。

Hybrid 版本資訊頁面不會顯示 1.16.0-hotfix.1 更新資訊。如需更新詳細資料,請參閱 Apigee Hybrid v1.16.0-hotfix.1 版本資訊

484366184 混合式 1.14.x、混合式 1.15.x 混合式 1.16.0 版已修正 使用 Kubernetes Gateway API v1.4.0 以上版本時,Apigee Hybrid 1.14 和 1.15 版的 apigee-ingressgateway-manager 會發生當機迴圈。

Apigee Hybrid 1.16 不會受到這個問題影響。

解決方法:如需搭配 Apigee Hybrid 1.14 或 1.15 版使用 Kubernetes Gateway API,請安裝 Gateway API 的 v1.3.x 版。例如:

kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml

另請參閱:

480997525 Apigee 1-17-0-apigee-1 Apigee 1-17-0-apigee-2 中已修正 升級 Netty 後,Proxy 呼叫失敗並顯示 The URI contain illegal characters 錯誤。

在 Apigee 版本 1-17-0-apigee-1 中,Netty 升級至 4.1.129.Final 導致迴歸。這可能會導致 API Proxy 呼叫失敗,並傳回 400 狀態碼和 The URI contain illegal characters 錯誤訊息。這個問題已在外部追蹤,請參閱 netty/netty#16020

465834046 如要升級,請使用 Hybrid 1.14.3、Hybrid 1.15.1 和 Hybrid 1.16.0 以上版本 在混合式 1.14.3、混合式 1.15.1 和混合式 1.16.0 中修正,適用於全新安裝 cert-manager 1.18 以上版本已將私密金鑰輪替政策的預設值從 Never 變更為 Always。如果 apigee-ca 的私密金鑰輪替,流量就會受到影響。

新版 cert-manager (v1.18 以上) 現在會自動輪替私密金鑰。輪替 apigee-ca 憑證的金鑰時,會導致服務中斷。

解決方法:如要避免這個問題,請選用下列任一方法:

  • 請勿將 cert-manager 升級至高於 1.17.x 的版本。
  • 編輯 cert-manager 命名空間中的 apigee-ca 憑證,並將 spec.privateKey.rotationPolicy 設為 Never。請按照下列程序編輯 apigee-ca 憑證,並升級 cert-manager:
    1. 檢查 apigee-ca 憑證的內容,確認是否已設定 rotationPolicy
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      在輸出內容中尋找 spec.privateKey 下的值:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          # Note: rotationPolicy would appear here if it is set.
          size: 256
        secretName: apigee-ca
      ...
    2. 如果未設定 rotationPolicy 或設為 Always,請編輯 apigee-ca 憑證,將 rotationPolicy 的值設為 Never
      1. 請先執行模擬測試:
        kubectl patch Certificate \
          --dry-run=server \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
      2. 修補憑證:
        kubectl patch Certificate \
          -n cert-manager \
          --type=json \
          -p='[{"op": "replace", "path": "/spec/privateKey/rotationPolicy", "value": "Never"}]' \
          -o=yaml \
          apigee-ca
        
    3. 確認 rotationPolicy 的值現在已設為 Never
      kubectl get certificate apigee-ca -n cert-manager -o yaml
      

      輸出內容應如下所示:

      ...
      spec:
        commonName: apigee-hybrid
        duration: 87600h
        isCA: true
        issuerRef:
          group: cert-manager.io
          kind: ClusterIssuer
          name: apigee-root-certificate-issuer
        privateKey:
          algorithm: ECDSA
          rotationPolicy: Never
          size: 256
        secretName: apigee-ca
      ...
    4. 升級 cert-manager。下列指令會下載並安裝 cert-manager v0.14.2:
      kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v0.14.2/cert-manager.yaml

請參閱:

458417250 Apigee 1-16-0-apigee-4 Apigee 1-16-0-apigee-6 中已修正 Message Processor 會傳回 500 錯誤,並顯示 "Duplicate Header "authorization""

如果要求中有多個授權標頭,Apigee 輸入閘道不會將這些標頭串連成單一標頭。因此訊息處理器會傳回 500 錯誤,並顯示 "Duplicate Header "authorization"" 訊息。

解決方法:如果要求中有多個授權標頭,請將這些標頭串連成單一標頭。例如:

curl -s https://my-hostname.net/mocktarget/echo \
          -H 'authorization: a, b'

462685598 UI 開啟

Apigee UI 目前不提供使用 Google-owned and Google-managed encryption key佈建 Apigee 機構的選項。

佈建訂閱組織時,Apigee UI 不提供選取可用區的選項。 Google-owned and Google-managed encryption key

解決方法:使用 Apigee API 建立以訂閱為基礎的機構,並搭配 Google-owned and Google-managed encryption key。

Apigee API 說明文件所述,建立 Apigee 機構時,您可以透過不提供 runtimeDatabaseEncryptionKeyNameapiConsumerDataEncryptionKeyNamecontrolPlaneEncryptionKeyName 欄位的值,使用 Google-owned and Google-managed encryption key 建立機構。

460431753 Apigee、Apigee Hybrid 開啟 Apigee Model Armor 政策不支援 WebSocket。

目前,在處理 WebSocket 連線的 API Proxy 中使用時,Apigee Model Armor 政策 (包括「SanitizeUserPrompt」 SanitizeUserPrompt和「SanitizeModelResponse」 SanitizeModelResponse) 無法正常運作。如要進一步瞭解 WebSocket 設定,請參閱「 透過 Apigee 使用 WebSocket」。

433759657 Apigee 已在 1-16-0-apigee-3 以上版本修正

升級至 1-16-0-apigee-3 後,部分 Apigee 機構可能會遇到 HTTP 500 錯誤,這是因為 Java Callout 政策中的 java.lang.NoClassDefFoundError 所致。錯誤訊息應如下所示:

{"fault":{"faultstring":"Failed to execute JavaCallout. org/apache/commons/lang/StringUtils","detail":{"errorcode":"steps.javacallout.ExecutionError"}}}

如果 Java Callout 政策錯誤地依附於 Apigee 內部使用的程式庫,而非提供自己的依附元件,就會發生這個錯誤。

需要採取行動:為避免發生這個問題,開發人員必須確保所有 Java Callout 都是獨立的,並使用專屬程式庫,避免依賴 Apigee 的內部類別路徑。

在採用 Apache Commons JAR 程式庫的 API Proxy 中,匯入 Apache Commons JAR 檔案,做為 Proxy 的資源。詳情請參閱「Java 資源指南」。

451841788 混合式 1.14.3 和混合式 1.15.1 固定 即使未啟用營利功能,Apigee Hybrid 仍需要 mintTaskScheduler.serviceAccountPath 屬性。

如果未設定 mintTaskScheduler.serviceAccountPath 屬性,即使未啟用營利功能,apigee-org 圖表也可能無法升級:

Error: UPGRADE FAILED: execution error at (apigee-org/templates/mint-task-scheduler-gsa-secret.yaml:12:63): mintTaskScheduler.serviceAccountPath is required!

解決方法:移除 apigee-org/templates/mint-task-scheduler-gsa-secret.yamlapitee-org/templates/mint-task-scheduler-sa.yaml 檔案。

您可以選擇將檔案移至 Helm 圖表目錄以外的獨立位置。如果日後想啟用營利功能,也可以按照「步驟 2:下載 Apigee Helm 資訊圖表」的指示重新下載。

舉例來說,從 helm-charts/ 目錄:

  1. ls apigee-org/templates/

    輸出內容:

    apigee-org-guardrails.yaml              mart-sa.yaml
    apigee-proxy-chaining-certificate.yaml  mint-task-scheduler-gsa-secret.yaml
    apigee-proxy-chaining-route.yaml        mint-task-scheduler-sa.yaml
    ax-hash-salt-secret.yaml                NOTES.txt
    connect-agent-gsa-secret.yaml           organization.yaml
    connect-agent-sa.yaml                   udca-gsa-secret.yaml
    data-encryption-secret.yaml             udca-sa.yaml
    encryption-keys-secret.yaml             watcher-gsa-secret.yaml
    _helpers.tpl                            watcher-sa.yaml
    mart-gsa-secret.yaml
    
  2. (選填:)
    cp apigee-org/templates/mint-task-scheduler-gsa-secret.yaml /tmp/
    cp apigee-org/templates/mint-task-scheduler-sa.yaml /tmp/
  3. rm apigee-org/templates/mint-task-scheduler-gsa-secret.yaml
  4. rm apigee-org/templates/mint-task-scheduler-sa.yaml
  5. ls apigee-org/templates/

    輸出內容:

    apigee-org-guardrails.yaml              mart-gsa-secret.yaml
    apigee-proxy-chaining-certificate.yaml  mart-sa.yaml
    apigee-proxy-chaining-route.yaml        NOTES.txt
    ax-hash-salt-secret.yaml                organization.yaml
    connect-agent-gsa-secret.yaml           udca-gsa-secret.yaml
    connect-agent-sa.yaml                   udca-sa.yaml
    data-encryption-secret.yaml             watcher-gsa-secret.yaml
    encryption-keys-secret.yaml             watcher-sa.yaml
    _helpers.tpl
    
451375397 hybrid 1.14.3 混合式 1.15.1 版已修正

apigee-pull-push.sh 指令碼可能會傳回 No such image 錯誤訊息,例如:

Error response from daemon: No such image: gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:latest

解決方法:編輯 HELM_CHARTS_DIR/apigee-operator/etc/tools/apigee-pull-push.sh 指令碼,將 docker_tag() 函式中的第 114 行從:

  docker tag "${source}/$i" "${dest}/$i:${TAG}"

如要:

  docker tag "${source}/$i:${TAG}" "${dest}/$i:${TAG}"
405936071 hybrid 1.15.0 混合式 1.15.1 版已修正

如果在 overrides.yaml 檔案中指定 metrics.serviceAccountRefmetrics.serviceAccountSecretProviderClass,遙測角色會以錯誤的服務帳戶為目標。

解決方法:apigee-operator/ 圖表中修補 _helper.tpl,然後重新套用。

  1. 編輯 apigee-operator/templates/_helpers.tpl 並移除下列粗體行:

    {{- define "metricsSA" -}}
      {{- $metricsName := "apigee-metrics" }}
      {{- $telemetryName := "apigee-telemetry" -}}
      {{- $generatedName := include "orgScopeEncodedName" (dict "name" .Values.org) -}}
      {{- if .Values.gcp.workloadIdentity.enabled -}}
      {{- printf "%s-sa" $metricsName -}}
      {{- else if .Values.serviceAccountSecretProviderClass -}}  <-- DELETE
      {{- .Values.serviceAccountSecretProviderClass -}}          <-- DELETE
      {{- else if .Values.metrics.serviceAccountRef -}}          <-- DELETE
      {{- .Values.metrics.serviceAccountRef -}}                  <-- DELETE
      {{- else if .Values.multiOrgCluster -}}
      {{- printf "%s-%s" $metricsName $generatedName -}}
      {{- else -}}
      {{- printf "%s-%s" $metricsName $telemetryName -}}
      {{- end -}}
    {{- end -}}

    完成的區段應如下所示:

    {{- define "metricsSA" -}}
      {{- $metricsName := "apigee-metrics" }}
      {{- $telemetryName := "apigee-telemetry" -}}
      {{- $generatedName := include "orgScopeEncodedName" (dict "name" .Values.org) -}}
      {{- if .Values.gcp.workloadIdentity.enabled -}}
      {{- printf "%s-sa" $metricsName -}}
      {{- else if .Values.multiOrgCluster -}}
      {{- printf "%s-%s" $metricsName $generatedName -}}
      {{- else -}}
      {{- printf "%s-%s" $metricsName $telemetryName -}}
      {{- end -}}
    {{- end -}}
  2. 重新套用 apigee-operator 圖表。

    helm upgrade operator apigee-operator/ \
        --namespace APIGEE_NAMESPACE \
        --atomic \
        -f overrides.yaml
419856132 混合式 1.14.2 以上版本 混合式 1.14.3 和 1.15.0 版已修正這個問題 如果叢集已安裝 gateway.networking.k8s.io/v1apigee-ingressgateway-manager 可能無法升級。

如要解決這個問題,請按照已知問題 416634326 中的步驟操作。

378686709 Apigee
Apigee hybrid
Apigee 中已修正 (需要支援人員協助)
Hybrid 1.14.3 和 Hybrid 1.15.1 中已修正 (需要程序)

在 Apigee Proxy 基本路徑中使用萬用字元 (*) 可能會與其他明確基本路徑衝突,導致 404 錯誤。舉例來說,如果兩個 Proxy 部署在相同環境中,使用下列基本路徑可能會在呼叫 Proxy-2 時導致 404 錯誤:

Proxy-1: /a/v1/b
Proxy-2: /a/*/c

在這種情況下,對明確基本路徑的呼叫會順利解析,但如果萬用字元路徑評估為 /a/v1/c,對 Proxy-2 的呼叫可能會傳回 404

已修正:這個問題已在 Apigee 和 Hybrid 1.14.3 以上版本中修正。不過,這項修正功能預設為停用。如要在基本路徑中啟用萬用字元:

  • 如果客戶使用 Apigee 機構,請視需要聯絡 Apigee 支援團隊,啟用修正程式。
  • 如果客戶使用 Apigee Hybrid 機構,請視需要按照下列程序啟用修正檔。

程序:如要在 Apigee Hybrid 中啟用 Apigee Proxy 基本路徑的萬用字元 (*):

  1. 升級至 Hybrid 1.14.3 以上版本前,請在 overrides.yaml 檔案中新增下列詩節:
    runtime:
      cwcAppend:
        conf_message-processor-communication_classificationV2.enabled: "true"
    
  2. 將變更套用至 apigee-env 圖表。針對安裝中的每個環境重複上述變更。
    helm upgrade ENV_RELEASE_NAME apigee-env/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --set env=ENV_NAME \
      -f OVERRIDES_FILE
    
    • ENV_RELEASE_NAME 是用於追蹤 apigee-env 圖表安裝和升級的名稱。這個名稱不得與安裝中的其他 Helm 版本名稱重複。通常與 ENV_NAME 相同。不過,如果環境與環境群組的名稱相同,您必須為環境和環境群組使用不同的發布名稱,例如 dev-env-releasedev-envgroup-release。如要進一步瞭解 Helm 中的發布內容,請參閱 Helm 說明文件中的「三個重要概念」。
    • ENV_NAME 是您要升級的環境名稱。
    • OVERRIDES_FILE 是覆寫檔案。
  3. 升級至 Hybrid 1.14.3 以上版本。
382565315 hybrid 1.13.0、
hybrid 1.13.1、
hybrid 1.13.2、
hybrid 1.14.0
混合式 1.13.3 和 1.14.1 版已修正

SecurityPolicy 中的 LogTimer 用量可能會導致記憶體流失。

在某些情況下,Apigee Hybrid 的記錄器執行緒可能會耗用所有可用記憶體。舉例來說,如果記錄檔中經常出現與 Javacallout 相關的權限錯誤,可能會導致 OOM。

421190799 Apigee 已在 Apigee 1-15-0-apigee-7 中修正

Apigee 擴充功能處理器不支援超過 100 KB 的資料處理作業,這類作業是要求和回應主體事件的一部分。

432315283 Apigee 開啟

如果更新金鑰儲存區或信任儲存區時,未建立新的金鑰儲存區或信任儲存區,執行階段更新可能會失敗,並導致下列間歇性錯誤:

  {"fault":{"faultstring":"SSL Handshake failed sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target","detail":{"errorcode":"messaging.adaptors.http.flow.SslHandshakeFailed"}}}

由於金鑰儲存區或信任儲存區更新可能在一個執行階段 Pod 上失敗,但在其他 Pod 上成功,因此錯誤是間歇性的。如要避免這個問題,請建立新的金鑰儲存區或信任儲存區,藉此更新金鑰儲存區或信任儲存區。如「 憑證到期時」一文所述,將參照重新指向新的金鑰儲存區或信任儲存區。

412740465 混合式 1.14.0 以上版本 混合式 1.14.3 和 1.15.1 版已修正

自 Apigee Hybrid 1.14.0 版起,系統不會再自動新增 Zipkin 追蹤標頭 (x-b3-*)。

不適用

Apigee Hybrid 開啟 如果使用 httpProxy 設定非 API Proxy 轉送,但未同時設定 envs.httpProxy,則 Proxy 設定不會套用至 Apigee Runtime 對 Pub/Sub 或其他 Google Cloud API 等服務發出的外部呼叫。

如果您只指定 httpProxy,也必須確保 Apigee Runtime Pod 已將 *.googleapis.com 加入允許清單,才能連線至這些服務。

請參閱「設定 API Proxy 的轉送 Proxy」。

416634326 混合式 1.14.2 以上版本 混合式 1.14.3 和混合式 1.15.1 已修正此問題

Apigee Hybrid 叢集中存在 istio.io 自訂資源定義 (CRD) 時,可能會導致 apigee-ingressgateway-manager Pod 失敗。

從舊版升級至 1.14.2 以上版本的 Apigee Hybrid 時,現有的 istio.io CRD 可能會導致 apigee-ingressgateway-manager Pod 的 discovery 容器中,完備性探針失敗。

解決方法:Apigee Hybrid 1.14.2 以上版本不需要 istio.io CRD。解決這個問題的方法有兩種:

  • 如果叢集中的 Istio 除了 Apigee 以外,沒有其他用途,請刪除 istio.io CRD。
  • 更新 apigee-ingressgateway-manager clusterrole,為 istio.io 新增權限。

完成上述任一選項後,請重新啟動 apigee-ingressgateway-manager Pod。

刪除 CRD

  1. 將叢集中的 istio.io CRD 列入 CSV 檔案:
    kubectl get crd -o custom-columns=NAME:metadata.name | grep istio.io > istio-crd.csv
  2. 選用:將 CRD 儲存在本機,以防需要重新建立:
    kubectl get crd $(cat istio-crd.csv) -o yaml > istio-crd.yaml
  3. 刪除 istio.io CRD:

    模擬測試:

    kubectl delete crd $(cat istio-crd.csv) --dry-run=client

    執行:

    kubectl delete crd $(cat istio-crd.csv)

更新 clusterrole

  1. 取得目前的 apigee-ingressgateway-manager clusterrole:
    kubectl get clusterrole apigee-ingressgateway-manager-apigee -o yaml > apigee-ingressgateway-manager-apigee-clusterrole.yaml
  2. 將 clusterrole 複製到新位置:
    cp apigee-ingressgateway-manager-apigee-clusterrole.yaml apigee-ingressgateway-manager-apigee-clusterrole-added-istio-permissions.yaml
  3. 在檔案結尾處加入下列額外權限:
    - apiGroups:
      - gateway.networking.k8s.io
      resources:
      - gatewayclasses
      - gateways
      - grpcroutes
      - httproutes
      - referencegrants
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - networking.istio.io
      resources:
      - sidecars
      - destinationrules
      - gateways
      - virtualservices
      - envoyfilters
      - workloadentries
      - serviceentries
      - workloadgroups
      - proxyconfigs
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - security.istio.io
      resources:
      - peerauthentications
      - authorizationpolicies
      - requestauthentications
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - telemetry.istio.io
      resources:
      - telemetries
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - extensions.istio.io
      resources:
      - wasmplugins
      verbs:
      - get
      - list
      - watch
    
  4. 套用角色:
    kubectl -n APIGEE_NAMESPACE apply -f apigee-ingressgateway-manager-apigee-clusterrole-added-istio-permissions.yaml

完成上述選項後,請重新啟動 apigee-ingressgateway-manager pod。

  1. 列出要重新安裝或重新建立的 ingress-manager Pod:
    kubectl get deployments -n APIGEE_NAMESPACE

    輸出內容範例:

    NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
    apigee-controller-manager       1/1     1            1           32d
    apigee-ingressgateway-manager   2/2     2            2           32d
    
  2. 重新啟動 ingress-manager Pod:
    kubectl rollout restart deployment -n APIGEE_NAMESPACE apigee-ingressgateway-manager
  3. 幾分鐘後,監控 apigee-ingressgateway-manager Pod:
    watch -n 10 kubectl -n APIGEE_NAMESPACE get pods -l app=apigee-ingressgateway-manager

    輸出內容範例:

    NAME                                             READY   STATUS    RESTARTS   AGE
    apigee-ingressgateway-manager-12345abcde-678wx   3/3     Running   0          10m
    apigee-ingressgateway-manager-12345abcde-901yz   3/3     Running   0          10m
    
414499328 hybrid 1.14.1 混合式 1.14.3 和 1.15.0 版已修正這個問題

ApigeeTelemetry 可能會停留在 creating 狀態。

OpenShift 安裝作業曾發生這個問題。

解決方法:修改 apigee-operator 圖表範本,建立正確的 clusterrole 存取權。

  1. 編輯 helm-charts/apigee-operator/templates/apigee-operators.yaml 範本檔案,並找出 -apigee-manager-role- clusterrole 的定義。開頭為:
    kind: ClusterRole
    metadata:
      name: apigee-manager-role-{{ include 'namespace' }}
    rules:
      ...
                  
  2. 找出 - apiGroups: apiregistration.k8s.io 區塊,並將 apiservices/finalizers 資源新增至資源清單:
    - apiGroups:
      - apiregistration.k8s.io
      resources:
      - apiservices
      - apiservices/finalizers
      verbs:
      - create
      - delete
      - get
      - patch
      - update
      
  3. 找出 - apiGroups: authorization.k8s.io 區塊,並在區塊結尾後方新增 - apiGroups: apigee.cloud.google.com 區塊,並加入以下文字:
    - apiGroups:
      - apigee.cloud.google.com
      resources:
      - apigeetelemetries/finalizers
      verbs:
      - get
      - patch
      - update
    

    例如:

    - apiGroups:
      - authorization.k8s.io
      resources:
      - subjectaccessreviews
      verbs:
      - create
      - get
      - list
    - apiGroups:
      - apigee.cloud.google.com
      resources:
      - apigeetelemetries/finalizers
      verbs:
      - get
      - patch
      - update
    
  4. 將變更套用至 apigee-operator 圖表:

    模擬測試:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f OVERRIDES_FILE \
      --dry-run=server
    

    升級圖表:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f OVERRIDES_FILE \
    
402739748 Apigee 開啟

API 產品最多只能有 50 個路徑。如果新增其他路徑,系統會顯示錯誤訊息:Operation group limit of 51 exceeded in Operation Config

解決方法:使用萬用字元模式合併資源路徑和作業,如「 設定資源路徑」一文所述。

解決方法:建立多個 API 產品。這項解決方法已通過驗證,適合在 API 產品中新增大量 API Proxy 的使用者。與 API 產品相關聯的應用程式需要更新,納入新的應用程式,但憑證和用戶端要求詳細資料不需要變更。

291294211 Apigee 開啟

使用「透過費用類型選取」選項,透過「營利」取得安裝次數時,使用「自訂報表」和「統計資料」API 時發生錯誤。

解決方法:先在用戶端擷取所有費用類型,再進行篩選。

391140293 Apigee
Apigee hybrid
固定

擴充 Istio Ingress Pod 可能會導致 503 錯誤。

有時,擴大 Istio Ingress Pod 的規模可能會導致 503 錯誤。如果發生 503 錯誤,負載平衡器的記錄會顯示以下訊息:statusDetails: backend_connection_closed_before_data_sent_to_client

解決方法:手動調整 Istio 輸入 Pod 的大小。

368155212 hybrid 1.14.0
hybrid 1.14.1
混合式 1.14.2 版已修正

ESS非 ESS 如果機構的代理伺服器限制較高,就無法輪替 Cassandra 憑證。

執行階段流量不受影響。

401624396 hybrid 1.13.x
hybrid 1.14.x
開啟 從多區域設定還原 GCPHYBRID 雲端服務供應商備份時,Apigee 還原工作失敗。這個問題不會影響CSI還原作業。

使用 GCPHYBRID Cloud Provider 從多區域設定建立的備份,會包含建立快照時所有混合區域的相關資訊。由於這些區域已不存在,還原作業會與 Cassandra 的目前狀態發生衝突,並失敗且顯示下列錯誤:Unrecognized strategy option passed to NetworkTopologyStrategy

401746333 Apigee
hybrid 1.12.4
hybrid 1.13.3
hybrid 1.14.1
固定

使用 JavaCallout 政策時,Nimbus JOSE + JWT 程式庫可能會導致 java.lang.ClassCircularityError

如果您有啟用 Apigee Hybrid 的機構,且 JavaCallout 政策使用 Nimbus JOSE + JWT 程式庫,請勿升級至 Hybrid 1.12.4、Hybrid 1.13.3 或 Hybrid 1.14.1。

397693324 hybrid 1.14.0
hybrid 1.14.1
混合式 1.14.2 版已修正

ESS非 ESS 多區域 Cassandra 憑證輪替作業會在第一個區域以外的所有區域失敗。

執行階段流量不受影響。

請按照提供的解決方法操作,解決這個問題。

391861216 hybrid 1.13.x
hybrid 1.14.x
混合式 1.13.3 和 1.14.1 版已修正 如果使用 GCPHYBRID Cloud Provider 還原 Hybrid 叢集,重新啟動 Cassandra Pod 會導致 Pod 進入 CrashLoopBackoff 狀態。這個問題不會影響CSI還原作業。

套用 Cassandra 覆寫變更後,系統會重新啟動 Cassandra Pod,例如重新啟用備份時,就會觸發這個問題。處於 CrashLoopBackoff 狀態的 Cassandra Pod 記錄檔會顯示下列錯誤: Cannot change the number of tokens from 512 to 256

請按照提供的解決方法操作,解決這個問題。

388608440 hybrid 1.11.x
hybrid 1.12.x
此問題已在混合式 1.12.4 以上版本中修正 Apigee 備份工作不會清除 Cassandra 中間快照。

在極少數情況下,Apigee 備份作業不會清除使用 HYBRIDGCP 雲端供應商備份時建立的 Cassandra 中繼快照。只有在基礎問題導致備份程序無法順利連線至遠端伺服器或 Cloud Storage 時,才會發生這種情況。如果連線問題持續發生,這些殘餘的 Cassandra 快照可能會隨著時間累積,佔用 Cassandra 磁碟的儲存空間。 如果受到影響,請修正基礎連線問題,然後按照 Cassandra 疑難排解指南中的步驟,手動清除 Cassandra 快照。

392135466 hybrid 1.14.0 開啟 使用每個環境的加強型 Proxy 限制時,不支援透過 mTLS 進行 Proxy 鏈結
383334511 Apigee 開啟 建立的 KVM 項目名稱不符預期

如果 KeyValueMapOperations 政策搭配 apiproxy 範圍使用,且政策的 <Put> 作業是透過流程掛鉤在共用流程中呼叫,系統會在共用流程名稱下建立 KVM 項目。預期會建立在 API Proxy 名稱底下。

384937220

hybrid 1.14.0 固定 如果有多個虛擬主機,可能無法建立 Helm 版本。

如果有多個虛擬主機,Helm 版本建立作業可能會因 ApigeeRoute 名稱衝突而失敗。解決方法是在建立虛擬主機時,為每個虛擬主機執行下列指令:

kubectl annotate ar apigee-ingressgateway-internal-chaining-PROJECT_ID_SUFFIX -n APIGEE_NAMESPACE meta.helm.sh/release-name=NEW_ENV_GROUP_NAME --overwrite
kubectl annotate cert apigee-ingressgateway-internal-chaining-PROJECT_ID_SUFFIX -n APIGEE_NAMESPACE meta.helm.sh/release-name=NEW_ENV_GROUP_NAME --overwrite

其中:

  • PROJECT_ID_SUFFIX 是 Kubernetes 專案內部鏈結的專屬後置字元。您可以使用下列指令找出這個後置字串:
    kubectl get svc -n apigee -l app=apigee-ingressgateway | grep internal-chaining

    輸出內容大致如下:

    kubectl get svc -n apigee -l app=apigee-ingressgateway | grep internal-chaining
    apigee-ingressgateway-internal-chaining-my-project--1234567    ClusterIP  34.118.226.140  <none>    15021/TCP,443/TCP    5d6h

    在範例輸出內容中,my-project--1234567PROJECT_ID_SUFFIX

  • APIGEE_NAMESPACE 是您的 Apigee 命名空間。
  • NEW_ENV_GROUP_NAME 是額外環境群組的名稱。請為每個虛擬主機更新這個值。

不適用

Apigee Hybrid 開啟 無效的服務帳戶可能會將 UpdateControlPlaneAccess API 送入重試迴圈。

如果使用者提供無效的服務帳戶給 UpdateControlPlaneAccess API,作業會進入重試迴圈,導致機構無法叫用 API,直到作業逾時為止。

373722434 混合式 1.13.x 已修正,適用於 Hybrid 1.13.2 以上版本 Apigee 備份工作無法上傳至設有保留政策的 Cloud Storage bucket。

使用 GCP 雲端供應商時,Apigee 備份工作無法上傳至設有保留政策的 Cloud Storage 值區。備份檔案可能會留在 Cloud Storage bucket 中,檔案大小為 0 位元組。

解決方法:停用 Cloud Storage 值區的保留政策。

341099433

Apigee Hybrid 開啟 apigee-logger 元件不支援 Workload Identity 聯盟

apigee-logger 會使用 Google IAM 服務帳戶,將記錄檔傳送至 Cloud Logging。這是因為 FluentBit 不支援 Workload Identity Federation,導致 apigee-logger 無法使用這項功能。

不適用

Apigee Hybrid 開啟 如果機構使用資料落地功能,Apigee Hybrid 就不支援分散式追蹤。

不適用

Apigee 開啟 Apigee 不支援金鑰重新加密,因此即使輪替後,系統仍會使用舊金鑰版本,且您無法在建立機構後變更 CMEK 金鑰。

270574696

Apigee 固定 Apigee 不支援 Cloud External Key Manager

268104619

Apigee
Apigee hybrid
開啟 在 OASValidation 政策中,如果您在標頭中指定陣列類型,即使輸入內容有效,MP 也會擲回錯誤。

364872027

Apigee
Apigee hybrid
固定 JWT/JWS 政策中的 PEM 剖析錯誤 (格式不符標準)

對於 Apigee 和 Apigee Hybrid 1.13 以上版本,如果Apigee JWS 或 JWT 政策中使用的金鑰 PEM 格式有任何偏差,可能會導致剖析錯誤。舉例來說,在 "-----END" 行 (封裝後界線) 之前緊鄰放置換行符號 (/n) 以外的任何字元,都是不允許的行為,會導致錯誤。

為避免發生這類錯誤,請確保封裝後邊界前沒有換行以外的字元,例如尾端空格或斜線。

如要進一步瞭解公開或私密金鑰使用的編碼,請參閱 IETF RFC 7468

310191899

Apigee
Apigee hybrid
開啟 部署 API Proxy 和共用流程時發生逾時

如果每秒查詢次數 (QPS) 較高,使用下列端點時可能會發生逾時問題:

為減少逾時的可能性,建議您在使用這些端點時將目標設為 1 QPS,或是在嘗試另一次部署前檢查部署狀態。

329304975

Apigee 固定 每個環境的基本路徑數量上限

為避免部署 API Proxy 修訂版本時發生潛在失敗,Apigee 會暫時對每個環境強制執行 1000 個基本路徑的限制。

在設有這項限制期間,每個環境最多可部署 1000 個 API Proxy 修訂版本 (每個版本都包含單一基準路徑)。 如果 API 代理項目或修訂版本包含多個基本路徑,每個環境的基本路徑總數不得超過 1000 個。

333791378

hybrid 1.12.0 開啟 Helm 遷移工具不支援 Cassandra 備份與還原功能

如需安裝修補程式的步驟,請參閱「 疑難排解」。

310384001

hybrid 1.11.0 開啟 如果使用者在目標 <SSLInfo> 區塊中新增 <Enforce>true</Enforce> 標記,預設驗證 TLS 目標端點憑證,則憑證驗證失敗時可能會傳回 502,而非 503 錯誤回應。

289583112

Apigee 開啟 OASValidation 政策無法搭配 OpenAPI 規格中的全域安全要求使用

如果 OASValidation 政策指定了 <OASResource>,且安全性規定設為全域層級,系統就不會強制執行安全性規定。

解決方法:如要確保強制執行,所有安全性需求都必須在 operation 層級設定,並在 OASValidation 政策的 <OASResource> 元素中傳遞 OpenAPI 規格。

205666368

Apigee
hybrid 1.10.2
hybrid 1.10.3
Apigee 1-10-0-apigee-6 和
Hybrid 1.10.3-hotfix.1 已修正這個問題
Apigee Hybrid 預設不會驗證目標憑證。

請參閱「關於在目標端點或目標伺服器中設定 TLS 選項」。

295929616

混合式 1.10.0 以上版本 已修正 hybrid 1.10.3 在 OpenShift (OSE) 上安裝 Apigee Hybrid 1.10 時,可能會因記憶體不足而失敗。

在 OSE 上安裝或升級至 Apigee Hybrid 1.10.0 到 1.10.2 時,可能會因記憶體不足而失敗。Apigee Hybrid 1.10.3 版已修正此問題。

292118812

混合式 1.10.1 固定 apigee-udca 可能不會採用 HTTP Proxy 設定。

如果防火牆強制所有流量通過轉送 Proxy,apigee-udca 可能會進入當機迴圈退避狀態。

292558790

Apigee
Hybrid 1.8.0 以上版本
開啟 OASValidation 政策失敗,並顯示 Unable to parse JSON 錯誤。
  • 如果 JSON 內容與預期模式不符,OASValidation 政策就會失敗。舉例來說,如果標題預期值為 <text>@<text> 格式,但填入的文字缺少 @ 符號,政策就會因 Unable to parse JSON 錯誤而失敗。
  • 如果 OASValidation 政策指定含有 path 參數的 <OASResource>,而該參數使用 $ref 架構,政策就會失敗並顯示 Unable to parse JSON - Unrecognized token 錯誤。

    解決方法:請勿在 <OASResource> 元素指定的 OpenAPI 規格的 path 參數中使用 $ref

297012500

Apigee
Hybrid 1.8.0 以上版本
開啟 使用循環參照時,OAS 驗證的部署作業問題。
  • 使用 OpenAPI 3.0.0 規格的循環參照時,OAS 驗證政策會導致 Apigee 部署作業失敗,因為這會進入無限迴圈。
  • 解決方法:使用沒有循環參照的 OpenAPI 規格 YAML。

289254725

Apigee
Apigee 1-10-0-apigee-3
hybrid 1.8.8
hybrid 1.9.3
Apigee 1-10-0-apigee-5
已修正,hybrid 已修正
包含 OASValidation 政策的 Proxy 部署作業可能會失敗。

如果符合下列情況,包含 OASValidation 政策的 Proxy 部署作業可能會失敗:

  • OASValidation 政策中用於驗證的 OpenAPI 規格採用 YAML 格式,且
  • YAML 格式的 OpenAPI 規格包含浮點數。例如:
    schema:
    type: number
    example: 2.345

284500460

Apigee
Apigee 1-10-0-apigee-1
固定 搭配 Cloud Logging 使用時,Message Logging 政策的延遲時間會增加。

為避免增加用戶端回覆的延遲時間,訊息記錄政策應附加至 PostClientFlow。如要進一步瞭解如何在 PostClientFlows 中使用政策,請參閱「 使用流程控管 API Proxy」。

282997216

混合式 1.8.0 以上版本
混合式 1.9.0 以上版本
開啟 Cassandra Jolokia 密碼不得使用特殊字元

Cassandra Jolokia 密碼只能使用英數字元。使用特殊字元 (包括但不限於「!」、「@」、「#」、「$」、「%」、「^」、「&」和「*」) 可能會導致 Cassandra 無法啟動。

270371160

混合式 1.9.0 以上版本 固定 Apigee Ingress 閘道僅支援 TLS1.2 以上的通訊協定/密碼

Apigee Ingress 閘道僅支援 TLS1.2 以上版本,不支援舊版 TLS。

269139342

混合式 1.7.0 以上版本 固定 apigeectl getOrg 不會遵循overrides.yaml中的HTTP_PROXY 設定

Apigee 組織驗證不會遵循 overrides.yaml 中設定的 HTTP Forward Proxy 規則。設定 validateOrg: false 即可略過這項驗證。

266452840

Apigee
Hybrid 1.7.0 以上版本
Hybrid 1.8.0 以上版本
Hybrid 1.9.0 以上版本
固定 在 Apigee X 和 Apigee Hybrid 中,Web Sockets 無法搭配 Anthos 服務網格 1.15.3 運作

在特定情況下,使用 Anthos 服務網格 1.15.3-asm.6 時,Apigee X 和 Apigee Hybrid 的 WebSocket 無法運作。

287922301

Apigee 開啟 音量帶門檻附近的營利比率不準確

由於目前的設計,如果交易量接近量帶門檻,系統可能會評估出不準確的營利比率。這表示有太多交易以門檻前費率計算,如果特定開發人員和費率方案組合的許多交易都在 30 秒內發生,就更有可能出現這種情況。也就是說,如果分級費率降低,營利報表會高估費用;如果分級費率提高,營利報表則會低估費用。這個問題會發生在 Apigee X 和 Apigee Hybrid 中,目前沒有已知的解決方法。 我們已開始解決問題,並會在日後推出的版本中提供修正內容。

242213234

Apigee 固定 API 產品無法載入,並顯示「no connections available」錯誤

嘗試載入 API 產品時,可能會傳回這項錯誤: 「Products were not loaded successfully. 錯誤:Apigee 連線代理程式沒有可用的連線。"

在 Google Cloud 專案中啟用 VPC 服務控制項,並將 iamcredentials.googleapis.com 新增為服務範圍中受限制的服務後,就會發生這個問題。

解決方法:手動建立輸出規則,例如:

-egressTo:
    operations:
    -serviceName: "iamcredentials.googleapis.com"
        methodSelectors:
        -method:
    resources:
    -projects/608305225983
  egressFrom:
    identityType: ANY_IDENTITY

247540503

混合式 1.7.0 以上版本
混合式 1.8.0 以上版本
固定 加密金鑰查詢的競爭情況可能會導致 KVM 查詢失敗。

在某些情況下,如果輸送量極高,加密金鑰查閱的競爭條件可能會導致 KVM 查閱失敗。

258699204

混合式 1.8.0 以上版本 固定 指標 Pod 的預設記憶體要求和限制在 1.8.x 中意外變更。

如果發現 apigee-telemetry-app 或 apigee-telemetry-proxy Pod 未執行,請變更 metrics 資源要求和資源限制屬性,以符合 設定屬性參考資料:指標中的下列預設值。

設定屬性 預設值
metrics.aggregator.resources.requests.memory 512Mi
metrics.aggregator.resources.limits.memory 3Gi
metrics.app.resources.requests.memory 512Mi
metrics.app.resources.limits.memory 1Gi
metrics.appStackdriverExporter.resources.requests.memory 512Mi
metrics.appStackdriverExporter.resources.limits.memory 1Gi
metrics.proxy.resources.requests.memory 512Mi
metrics.proxy.resources.limits.memory 1Gi
metrics.proxyStackdriverExporter.resources.requests.memory 512Mi
metrics.proxyStackdriverExporter.resources.limits.memory 1Gi

使用 apigeectl apply 並加上 ‑‑telemetry 旗標,套用變更:

apigeectl apply --telemetry -f overrides.yaml

260324159

Apigee 1-9-0-apigee-16 固定 API Proxy 和共用流程部署作業最多需要 30 分鐘。

在某些情況下,由於同步器發生「socket closed」錯誤,API Proxy 和共用流程可能需要 20 到 30 分鐘才能部署到執行階段層面。

214447386

全部 開啟 Apigee API 資料存取稽核記錄會顯示「config not modified」(設定未修改) 訊息,如圖所示:Error

這項作業預計每分鐘都會發生,不會影響帳單費用。

260772383

混合式 1.8.0 以上版本 開啟 AKS 平台上的 Socket 繫結錯誤

如果要在 AKS 上安裝 Hybrid,可能會看到以下錯誤:

envoy config listener '0.0.0.0_443' failed to bind or apply socket options: cannot bind '0.0.0.0:443': Permission denied

解決方法:在覆寫檔案中新增以下 svcAnnotations 節:

ingressGateways:
- name: INGRESS_NAME
...
svcAnnotations:
service.beta.kubernetes.io/azure-load-balancer-internal: "true"

請參閱 設定 Hybrid 執行階段。另請參閱 搭配 AKS 使用內部負載平衡器

241786534

混合式 1.8.0 以上版本 固定 MART 有時無法連線至 FluentD。

使用機構範圍的 UDCA 時,MART 有時無法連線至 FluentD。在 Apigee Hybrid 1.8 版中,以機構為範圍的 UDCA 是預設設定。請參閱「設定屬性參考資料」中的 orgScopedUDCA

不適用 混合式 1.6.0 以上版本 開啟 apigee-logger 無法在搭載 CentOS 或 RHEL 的 Anthos Bare Metal 上運作。

在 Apigee Hybrid 1.6.6 版中,將 apigee-loggerfluend 遷移至 fluent-bit 後,記錄器在 CentOS 或 RHEL 的 Anthos Bare Metal 上停止運作。

207762842 混合式 1.5.0 以上版本 固定 apigee-logger 未將記錄檔傳送至 Cloud Logging。

目前的 apigee-logger 設定 (包括有效性探測) 與 Kubernetes 執行階段不相容,因此記錄檔無法如預期傳送至 Cloud Logging。這個問題也會導致 apigee-logger Pod 定期當機。這個問題會影響 AKS、Anthos Bare Metal 和其他平台上的 Apigee Hybrid 安裝作業。請注意,在某些情況下,這個問題會導致記錄量過多。

191291501、191000617 Apigee 固定 在使用者介面中變更開發人員實體的電子郵件地址會失敗。
191002224 混合式 1.5.0 以上版本 固定 使用 PUT /organizations/{org_name}/developers/{developer_email} API 時,無法變更電子郵件地址。
184555974 混合式 1.5.0 以上版本 固定 apigee-logger Fluentd 無法剖析 OpenShift 叢集中的記錄。
不適用 封存部署作業 開啟 UI 不支援管理及偵錯 Apigee 封存部署作業

在 Apigee 使用者介面中,您無法查看、確認部署狀態或管理封存部署作業 (如「 部署 API Proxy」一文所述),也無法使用「偵錯」使用者介面 (如「 使用偵錯」一文所述)。如要解決這個問題,可以使用 gcloud 或 API 列出環境中的所有封存部署作業,並使用 Debug API

不適用 封存部署作業 開啟 系統不支援復原封存部署作業

目前不支援還原封存的部署作業。 如要移除封存部署作業的版本,您必須 重新部署封存的舊版,或 刪除環境

421402073

VS Code 中的 Apigee 開啟 Apigee in Visual Studio Code (VS Code) 不支援政策中的 Google 驗證

Apigee in VS Code 不支援 ServiceCallout 和 ExternalCallout 政策中的 Google 驗證,如「 使用 Google 驗證」一文所述。

422757662 Apigee 1-15-0-apigee-5
hybrid 1.15.0
Apigee 1-15-0-apigee-7 和 Apigee 1-15-0-apigee-8「已修正」

停用 DistributedTrace 時,無法使用 x-b3 標頭

在 Apigee 1-15-0-apigee-5 和 Hybrid 1.15.0 版本中,Apigee 會在停用分散式追蹤時,停止將 x-b3 標頭傳送至目標端點。不過,部分 Apigee 安裝作業會傳送 x-b3 標頭,無論是否啟用或停用分散式追蹤功能。因此,這項變更已從 Apigee 1-15-0-apigee-7 開始還原。

146222881 hybrid 1.3.0 以上版本 固定 HTTP 標頭無效錯誤

HTTP 標頭無效錯誤:Istio Ingress 會將所有傳入的目標回應切換至 HTTP2 通訊協定。由於混合式訊息處理器僅支援 HTTP1,因此呼叫 API Proxy 時,您可能會看到下列錯誤:

http2 error: Invalid HTTP header field was received: frame type: 1, stream: 1,

name: [:authority], value: [domain_name]

如果看到這則錯誤訊息,請採取下列任一做法來修正問題:

  • 修改目標服務,在回應中省略 Host 標頭。
  • 視需要使用 API Proxy 中的 AssignMessage 政策移除 Host 標頭。

420985360

整合式入口網站 開啟 SmartDocs
  • 透過入口網站上的 SmartDocs 發布 API 時,Apigee 支援 OpenAPI 規格 3.0,但目前尚未支援部分功能。舉例來說,allOf 屬性可合併及擴充結構定義。

    如果 OpenAPI 規格中參照了不支援的功能,工具有時會忽略該功能,但仍會算繪 API 參考文件。在其他情況下,不支援的功能會導致錯誤,進而無法順利算繪 API 參考文件。無論是哪種情況,您都必須修改 OpenAPI 規格,避免使用不支援的功能,直到日後版本支援為止。

  • 「試用這個 API」有下列限制:
    • 無論 OpenAPI 規格中為 consumes 設定的值為何,Accept 標頭都會設為 application/json
    • 系統不支援字串以外類型的要求標頭。
不適用 整合式入口網站 開啟 入口網站管理員

  • 目前不支援多位使用者同時更新入口網站 (例如編輯頁面、主題、CSS 或指令碼)。
  • 如果從入口網站刪除 API 參考說明文件頁面,就無法重新建立。您必須刪除並重新新增 API 產品,然後重新產生 API 參考說明文件。
  • 自訂入口網站主題時,變更最多可能需要 5 分鐘才會全面套用。
不適用 整合式入口網站 開啟 入口網站功能

搜尋功能將整合至整合式入口網站,並在日後推出。

不適用 整合式入口網站 開啟 SAML 識別資訊提供者

自訂網域不支援使用 SAML 識別資訊提供者的單一登出 (SLO) 服務。如要透過 SAML 識別資訊提供者啟用自訂網域,請在 設定 SAML 設定時,將「登出網址」欄位留空。

191815997 混合式 1.6.0 以上版本 固定 如果混合式客戶為 API Proxy 設定轉送 Proxy,Google 權杖必須具備 *.googleapis.com 的直接存取權,才能正常運作。
不適用 Apigee Apigee 1-12-0-apigee-2 和 Hybrid 1.12.0「已修正」 API Monitoring 和 Cloud Monitoring 顯示異常尖峰

  • API Proxy 要求和回應計數 (適用於 Proxy 和目標) 顯示異常尖峰

    以下是這類尖峰的範例:

    (查看較大圖片)

  • 由於發生錯誤,系統會在短時間內錯誤記錄次數,隨後修正。如果 API 流量減少 (導致 API 閘道縮減),就會發生這種情況。
  • 如要區分實際要求量暴增和這個問題, 請參閱 API Analytics 頁面 (特別是「Proxy 效能」和「目標效能」頁面)

受影響的指標:

  • apigee.googleapis.com/proxyv2/request_count
  • apigee.googleapis.com/proxyv2/response_count
  • apigee.googleapis.com/targetv2/request_count
  • apigee.googleapis.com/targetv2/response_count

新指標

您可以運用這些新指標避免發生這個問題。

指標 說明
apigee.googleapis.com/proxy/request_count 自上次記錄樣本以來,對 Apigee Proxy 發出的要求數。
apigee.googleapis.com/proxy/response_count Apigee API Proxy 傳送的回應數量。
apigee.googleapis.com/proxy/latencies 延遲時間分布情形,計算方式是從 Apigee Proxy 收到要求的時間,到 Apigee Proxy 將回應傳送至用戶端的時間。
apigee.googleapis.com/target/request_count 自上次記錄樣本以來,傳送至 Apigee 目標的要求數量。
apigee.googleapis.com/target/response_count 自上次記錄樣本以來,從 Apigee 目標收到的回應數量。
apigee.googleapis.com/target/latencies 延遲時間分布情形,計算方式是從要求傳送至 Apigee 目標的時間,到 Apigee Proxy 接收回應的時間。時間不包括 Apigee API Proxy 的額外負荷。

如果是 Apigee Hybrid,請參閱「指標收集總覽」和「查看指標」。

203778087 混合雲 1.5.3 以上版本 開啟 apigee-stackdriver-logging-agent目前以根身分執行。

解決方法:在混合式系統上停用記錄代理程式。

205629443 Apigee 固定 如果 ServiceCallout 是 fire and forget (沒有 <Response> 標記),且後續有其他政策,就可能發生競爭條件。

因應措施:如要維持啟動後便不須控制的行為,請採取下列做法:

  1. <Response>calloutResponse</Response> 新增至 ServiceCallout。
  2. continueOnError 設為 true
207719377 Apigee Apigee 1-11-0-apigee-1 中已修正 如果套件中有多個 SpikeArrest 政策,就會發生 502 錯誤。

解決方法:避免在 Proxy 中使用多個 SpikeArrest 政策,以免發生問題。

209097822 hybrid 1.5.0 以上版本
Apigee
固定 尖峰抑制期間的費率動態更新可能不會立即反映

如果特定金鑰的流量持續不斷,系統可能不會以更新後的速率限制該金鑰。如果特定金鑰在五分鐘內沒有任何流量,系統就會反映費率。

解決方法:如果費率必須立即生效,請使用新的參照變數重新部署 Proxy。或者,使用兩個具有不同流程變數的條件式尖峰抑制機制,調整速率。

221305498 Apigee 開啟 API 監控可能會顯示「(未設定)」的錯誤代碼。

如果目標傳回的狀態不是 2xx,可設定 API Proxy 的 API 監控功能可能會顯示「(未設定)」的錯誤代碼。

246774745 Apigee 固定 與多個動態目標搭配使用時,系統不會採用 io.timeout.millis 的值。

如果 Proxy 在兩個以上的流程中,使用相同目標主機設定兩個以上的 io.timeout.millis 值,系統只會採用一個 io.timeout.millis 值。

245664917 混合式 1.8.x 固定 可以忽略 Apigee Hybrid 升級錯誤

升級至 Apigee Hybrid 1.8.x 時,執行 apigeectl init 並確認 check-ready 成功後,您可能會發現 Cassandra 結構定義驗證工作處於錯誤狀態 (如果查看 Pod 的話)。這是無害的狀況,您可以安全地繼續升級程序的下一個步驟。

300660653 Apigee 固定 如果將路徑相同的 Proxy 部署至多個環境,且這些環境附加至相同執行個體和環境群組,系統應傳回錯誤,但實際並未傳回

您不得將路徑相同的 Proxy 部署至附加至相同執行個體和環境群組的多個環境,否則系統會傳回有關基本路徑衝突的警告訊息。但系統不會顯示錯誤,且部署作業看似成功。

解決方法:部署期間和部署後,請確認部署的 Proxy 沒有基本路徑衝突,並視需要修正。

301458133 Apigee 固定 部分 Proxy 部署作業會傳回錯誤,指出修訂版本不可變更

嘗試儲存先前部署的 Proxy 時,部署作業可能會失敗,並顯示修訂版本不可變更的錯誤訊息。

解決方法:按一下「儲存」按鈕旁的下拉式箭頭,然後選取「另存為新的修訂版本」。然後重新嘗試部署。

301845257 Apigee 固定 如果嘗試將超過 800 個 Proxy 部署至環境群組,系統會顯示錯誤訊息。如果基本路徑長度超過 15 個字元,系統傳回錯誤的上限會低於 800。

315820718 Apigee 固定 使用 gRPC Proxy 要求時,系統會從回應中移除 gRPC 尾部

呼叫 gRPC 目標伺服器時,系統只會傳回「grpc-status」預告。回應中會移除所有其他預告片。

341157011 Apigee 固定 如果使用 Cloud Code 中的 Gemini Code Assist 生成規格,且規格中包含非 ASCII UTF-8 字元,上傳至 API 中樞時將無法正確剖析。

因此,API 中心無法正確擷取作業、定義和其他中繼資料。
338285095 Apigee 固定 與 AppGroup 相關聯的應用程式不會顯示在 Apigee 使用者介面的「應用程式」清單中。因此,使用者無法在控制台中存取應用程式的「應用程式詳細資料」頁面。在問題解決前,控制台不支援使用部分應用程式名稱或 API 金鑰搜尋應用程式。

Apigee Hybrid 組織不受這個問題影響,因為他們使用傳統 UI 查看應用程式詳細資料。

部分解決方法:您可以使用 API 查看所有應用程式的清單。請參閱 organizations.apps.list
355714868 Monetization
Apigee Hybrid
已修正:混合式 1.14.3、混合式 1.15.1、混合式 1.16.0 未擷取或收取混合式機構的週期性、設定和加值費用資料

對於已啟用營利的混合式機構,系統不會擷取或收取後付費帳單的週期性費用 (RECURRING_FEE)、設定費用 (SETUP_FEE) 和加值費用 (TOPUP_FEE) 資料。如果是預付型帳單,系統會從錢包扣除這些費用,但不會回報。
438850078 Apigee 開啟

當後端回應包含與父項結構定義相同的鑑別器型別時,OASValidation 政策中會發生無限遞迴。這個問題可能會導致StackOverflowError

449012244 Apigee 開啟

請為 SSE (伺服器傳送事件) 目標使用個別的目標端點定義。如果將 SSE 和非 SSE 目標端點混用,可能會導致行為不一致,例如 response.content 流程變數為空。

445936920 Apigee 1-16-0-apigee-2 以上版本 開啟

先前未偵測到的 DNS 設定問題,現在可能會導致 DNS 錯誤。Apigee 已移除 1-16-0-apigee-2 中的自動 DNS 備援功能。這項移除作業會導致平台無法因應 DNS 設定錯誤,現在可能導致 DNS 錯誤。

請檢查 DNS 解析錯誤的執行階段記錄,找出相關錯誤。

383372330 Apigee Emulator 1.13.0 版至 1.15.1 版 (不含 1.15.1 版) Apigee 模擬工具 1.15.1 以上版本已修正此問題

所有 Proxy 部署作業在本機都會失敗,並顯示錯誤訊息,包括 Error parsing deployment report as JSON

06/13/2025 6:45 PM EMULATOR INFO Deploying environment testenv, to Container apigee-1.14.2 (1.14.2)
06/13/2025 6:45 PM EMULATOR ERROR Error parsing deployment report as JSON
06/13/2025 6:45 PM EMULATOR ERROR null
06/13/2025 6:45 PM EMULATOR ERROR Environment testenv deployment, to Container apigee-1.14.2 (1.14.2) failed with Error: 500
06/13/2025 6:45 PM EMULATOR ERROR Deploy to Container apigee-1.14.2 (1.14.2), failed with Error: Environment testenv deployment, to Container apigee-1.14.2 (1.14.2) failed with Error: 500
修正:更新至 Apigee 模擬器 1.15.1 以上版本。