我一直在使用Big查询通过Web服务生成报告一年,但是在过去一个月左右的时间里,我注意到HTTP 500错误以响应我的大多数查询请求,即使没有对其进行任何更改网络服务。在我当前的设置中,我同时进行5次查询,并且5次查询中有4次失败,出现500错误。有时会返回所有5个查询,但最近这种情况很少发生,导致我的应用程序几乎无法使用。
我使用服务帐户令牌使用服务器到服务器身份验证,我的大查询客户端应用程序是根据此处给出的示例进行了严格建模 -
https://developers.google.com/bigquery/articles/dashboard#class
以下是完整的错误消息 -
HttpError:https://www.googleapis.com/bigquery/v2/projects/1021946877460/queries?val = json返回“意外。请再试一次。”>
我的bigquery客户端的片段 -
def generateToken():
"""
generates OAuth2.0 token/credentials for login to google big query
"""
credentials = SignedJwtAssertionCredentials(
SERVICE_ACCOUNT_EMAIL,
KEY,
"https://www.googleapis.com/auth/bigquery")
return credentials
class BigQueryClient(object):
def authenticate(self, credentials):
http = httplib2.Http(proxy_info = httplib2.ProxyInfo(
socks.PROXY_TYPE_HTTP,
PROXY_IP,
PROXY_PORT))
http = credentials.authorize(http)
return http
def __init__(self, credentials, project):
http = self.authenticate(credentials)
self.service = build('bigquery', 'v2', http=http)
如果我在这里做错了或者在bigquery后端发生了任何变化,例如限制在一段时间内允许的查询请求数量,请告诉我。
感谢。
答案 0 :(得分:2)
500s总是BigQuery错误。我相信我已经跟踪了BigQuery服务器日志中的一个错误,并正在调查。