如何设置项目ID以避免警告?

时间:2017-11-21 22:23:28

标签: google-colaboratory

我正在尝试建立一个新的Colaboratory笔记本来分析我们在BigQuery中的数据。在示例文档之后,我将第一个代码段作为:

project_id = '<redacted>'
from google.colab import auth
auth.authenticate_user()

当我运行时,我收到以下警告,重复两次:

WARNING:google.auth._default:No project ID could be determined from the credentials 
at GOOGLE_APPLICATION_CREDENTIALS Consider setting the GOOGLE_CLOUD_PROJECT 
environment variable

尝试通过os.environ设置项目ID无效。

每次我使用pandas执行SQL语句时,我也会收到此错误,即使我提供它,ála:

pd.io.gbq.read_gbq(sql, project_id=project_id, verbose=False, dialect='standard')

2 个答案:

答案 0 :(得分:1)

所以这里有几个问题:

  1. 你为什么看到这些警告?

    您看到的消息是日志消息;如果您看到它们,则表示您调用的代码或代码正在调用类似logging.basicConfig()的内容。这将导致足够级别的日志消息(默认为WARNING)将显示给stderr,这就是这里发生的事情。

  2. 这些警告是什么?

    此案例中的警告告诉您google.auth无法找出项目;碰巧,关于环境变量的消息实际上是假的,因为在这个路径中没有读取命名的var。我filed a bug upstream

  3. 您有两个简单的选择:

    1. 关闭日志记录(如何执行此操作将根据您的启用方式而有所不同)。您还可以有选择地将日志级别设置为其他级别。

    2. 忽略这些消息。 (它们是无害的,但令人讨厌。)

    3. 我提交了一个colab issue来跟踪,让这不那么烦人。

答案 1 :(得分:0)

您应该能够使用

为指定项目的 GCP 调用设置环境
import os
os.environ["GOOGLE_CLOUD_PROJECT"] = project_id