Google cloud platform GCP API网关创建失败,出现内部服务器错误
我正在尝试自动化api配置和api网关创建,以使用terraform公开云运行服务。直到昨天,它还运行得很好,api网关正在为流量提供服务。 但是考虑到大量的请求击中了API网关,我决定将读取请求的配额增加到一个更高的数字&那是在我修改openapi-swagger文件为我的API添加配额的时候 它工作了一段时间,但现在当我触发我的管道时,它失败了,出现了一个内部服务器错误。我还尝试使用cloud命令创建一个API网关,将verbosity设置为DEBUG,但找不到任何有用的东西。 使用openapi文件创建api&api配置,但api网关的创建已停止…出现内部服务器错误 正在附加我的openapi文件以供参考:Google cloud platform GCP API网关创建失败,出现内部服务器错误,google-cloud-platform,openapi,gateway,google-cloud-run,Google Cloud Platform,Openapi,Gateway,Google Cloud Run,我正在尝试自动化api配置和api网关创建,以使用terraform公开云运行服务。直到昨天,它还运行得很好,api网关正在为流量提供服务。 但是考虑到大量的请求击中了API网关,我决定将读取请求的配额增加到一个更高的数字&那是在我修改openapi-swagger文件为我的API添加配额的时候 它工作了一段时间,但现在当我触发我的管道时,它失败了,出现了一个内部服务器错误。我还尝试使用cloud命令创建一个API网关,将verbosity设置为DEBUG,但找不到任何有用的东西。 使用open
swagger: "2.0"
info:
version: 1.0.0
title: Offer api
description: API to get personalized offrs
produces:
- application/json
schemes:
- https
x-google-management:
metrics:
# Define a metric for read requests.
- name: "read-requests"
displayName: "Read requests"
valueType: INT64
metricKind: DELTA
quota:
limits:
# Define the limit or the read-requests metric.
- name: "read-limit"
metric: "read-requests"
unit: "1/min/{project}"
values:
STANDARD: 20000
paths:
/offers: #/{deviceID}/{restaurantID}:
get:
description: get personalized offers
operationId: app.get_offers
x-google-backend:
address: ${backend_address}
parameters:
- name: deviceID
in: header
required: True
type: string
- name: storeID
in: header
required: True
type: string
x-google-quota:
metricCosts:
"read-requests": 1
security:
- APIKeyHeader: []
responses:
200:
description: Successful Operation
schema:
$ref: '#/definitions/APIResponse'
#headers:
# Content-Type:
# schema:
# type: string
# Content-Encoding?:
# schema:
# type: string
# mcd-apiversion:
# type: string
# mcd-uuid:
# schema:
# type: string
# Cache-Control?:
# schema:
# type: string
# ETag:
# schema:
# type: string
400:
description: Bad Request - Invalid ID Supplied
schema:
$ref: '#/definitions/APIErrorResponse'
# headers:
# Content-Type:
# schema:
# type: string
# Content-Encoding?:
# schema:
# type: string
# 401:
# description: "Not Authorized - API KEY is invalid"
# content:
# application/json:
# schema:
# $ref: "#/responses/UnauthorizedError"
404:
description: "Resource not available - ID not found"
schema:
$ref: '#/definitions/APIErrorResponse'
# headers:
# Content-Type:
# type: "string"
# Content-Encoding?:
# type: "string"
415:
description: "Unsupported media Type. Please check the content type in request"
schema:
$ref: '#/definitions/APIErrorResponse'
# headers:
# Content-Type:
# type: "string"
# Content-Encoding?:
# type: "string"
500:
description: "Internal Server Error. Please refer logs for further details."
schema:
$ref: '#/definitions/APIErrorResponse'
# headers:
# Content-Type:
# type: "string"
# Content-Encoding?:
# type: "string"
503:
description: "Service is unavailable. Please try after some time"
schema:
$ref: '#/definitions/APIErrorResponse'
# headers:
# Content-Type:
# type: "string"
# Content-Encoding?:
# type: "string"
definitions:
APIResponse:
type: object
required:
- customerID
- coupon
properties:
customerID:
type: string
example: "0000"
coupon:
type: string
example: "Christmas100"
APIErrorResponse:
type: object
required:
- code
- message
properties:
code:
type: integer
type:
type: string
message:
type: string
path:
type: string
service:
type: string
property:
type: string
securityDefinitions:
# This section configures basic authentication with an API key.
APIKeyHeader:
type: apiKey
name: x-api-key
in: header
编辑
问题已经解决。但似乎还有更多,有人知道如何定义每天请求的配额吗?从GCP文档中,我可以发现我们可以定义每分钟请求数(读写),但是有没有办法定义每天API请求数的限制?不可能,因为GCP中唯一支持openapi配额的单位是
1/min/{project}
,因为问题已经解决。但似乎还有更多,有人知道如何定义每天请求的配额吗?从GCP文档中,我可以发现我们可以定义每分钟请求数(读和写),但是有没有办法定义每天API请求数的限制?