当BigQuery作业出现错误时,我可以在作业历史记录和StackDriver日志中查看错误。我想在任何工作失败时得到通知(通过电子邮件)。
在用户首选项中,我为新错误启用了“ StackDriver错误报告”。我还查看了StackDriver BigQuery资源,以查看是否可以创建警报策略,但是我不知道是否有任何条件适用于BQ作业错误。
是否可以,如果可以,我如何收到BigQuery作业中的错误通知?
答案 0 :(得分:2)
如果您想为项目中的每个 BQ作业错误发送电子邮件,则可以在Stackdriver中定义log-based custom metric。您需要定义它,这要归功于日志内容上的过滤器,这样它就可以对表示BQ作业错误的日志数进行计数。然后,在为Stackdriver监控,您可以在此自定义指标定义报警政策。
如果要显示作业在错误报告中遇到的错误,则应将代码添加到Cloud Function中,以便在使用错误报告API时将错误报告给Stackdriver。有关如何操作的更多详细信息,请参见this link。这意味着您的Cloud Function将分析BQ API的答案,如果发现作业有错误,则会将其报告给Stackdriver。
Stackdriver错误报告显然支持电子邮件通知,但仅在第一次出现错误时才提供。 (这个功能似乎是in beta)
因此,如果您要为由Cloud Function触发的每个失败的BQ作业接收电子邮件,我相信您应该实现在Cloud Function内部发送电子邮件的逻辑。