作为Apps Script项目所有者,如何查看组织内执行脚本的用户?
嘿,作为Apps Script项目所有者,要搞清楚组织里谁在执行你的脚本,这几个方法应该能帮到你:
1. 查看Apps Script内置执行日志
打开你的Apps Script项目,点击左侧菜单栏那个时钟样式的执行选项。在执行记录列表里,每条执行条目通常会显示执行用户的邮箱(组织内用户会显示他们的工作邮箱)。不过要注意,如果用户是通过匿名方式或者未授权的情况执行,可能不会显示,但正常组织内授权用户执行的话,这里应该能看到身份信息。
如果这里没显示用户信息,你可以检查下脚本里有没有用console.log()输出关键信息,或者调整日志的显示级别,确保用户身份相关的日志被记录。
2. 在脚本中主动添加用户追踪代码
如果默认日志没提供足够信息,你可以在脚本里加一段代码,主动记录执行用户的邮箱:
function yourMainScriptFunction() { // 获取当前执行脚本的用户邮箱 const currentUser = Session.getActiveUser().getEmail(); // 将用户信息写入日志 console.log(`脚本执行用户:${currentUser}`); // 这里放你原有的脚本逻辑 // ... }
每次脚本执行时,这条日志就会被记录下来,你在执行日志里就能直接看到用户邮箱。另外,如果脚本是通过时间驱动触发器执行的,Session.getActiveUser()可能返回空值,这时候可以改用Session.getEffectiveUser().getEmail()来获取设置触发器的用户身份。
3. 借助Google Workspace管理员日志查询
如果你是Google Workspace管理员,或者能联系到组织的管理员帮忙,可以通过Admin控制台查询:
- 登录Google Workspace Admin控制台,进入报告 > 日志 > Apps Script日志
- 在筛选条件里输入你的脚本项目ID,就能筛选出所有组织内用户执行该脚本的记录,里面包含用户邮箱、执行时间、执行状态等详细信息。
这个方法特别适合批量查询,尤其是脚本被多人频繁执行的场景。
额外注意事项
- 确保脚本的权限设置正确,组织内用户执行脚本时需要完成授权流程,这样系统才能捕获到他们的身份信息。
- 如果脚本是通过服务账号部署执行的,可能无法直接获取终端用户信息,这时候需要检查脚本的部署方式和权限配置。
内容的提问来源于stack exchange,提问作者wcndave
相关产品推荐
相关产品推荐

