BigQuery INFORMATION_SCHEMA.SESSIONS_BY_PROJECT查询返回0行需配置吗?
问题排查与解答
不需要额外配置项目就能查询INFORMATION_SCHEMA.SESSIONS_BY_PROJECT视图,但返回0行通常是以下几个原因导致的,你可以逐一排查:
区域不匹配:BigQuery会话是区域级资源,你查询的是
region-us下的会话,但如果你的实际会话是在其他区域(比如europe-west1、asia-southeast1)创建的,就会返回空。可以尝试更换为你常用的BigQuery区域重新查询,比如:select session_id, user_email, project_id, creation_time FROM `region-europe-west1.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT` WHERE is_active = true AND creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY);权限不足:虽然没有报错,但如果你的账号没有
bigquery.sessions.list权限,或者没有目标项目的BigQuery Data Viewer及以上权限,视图可能返回空结果而非权限错误。可以确认你的账号权限配置是否正确。活跃会话过滤条件过严:
is_active = true仅返回当前处于活跃状态的会话,如果你最近一天内没有持续运行的会话(比如所有查询都已执行完毕、会话已关闭),这个条件会过滤掉所有历史会话。建议先去掉is_active = true条件,仅查询最近一天的所有会话,验证是否有数据:select session_id, user_email, project_id, creation_time FROM `region-us.INFORMATION_SCHEMA.SESSIONS_BY_PROJECT` WHERE creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY);项目范围错误:
SESSIONS_BY_PROJECT仅返回当前查询所在项目的会话,如果你要查询的会话属于另一个项目,需要切换到对应项目执行查询,或者确保跨项目权限已配置。
内容的提问来源于stack exchange,提问作者Louise Paterson
相关产品推荐
相关产品推荐

