我目前在GCP中有一个管道,该管道使用Cloud函数提取数据,将其存储到PubSub中,在Dataflow中进行处理,最后将其插入BigQuery中。我正在尝试计算平均消息从Cloud Function提取到BigQuery花费的时间(包括插入时间)。
我知道Stackdriver指标/仪表板以及GCP的API仪表板。我很想简单地将每个服务的所有延迟值加起来,但是我不确定它是否涵盖了我无法控制的延迟(例如,插入BQ,从数据流推送到pubsub等)。
哪些可用指标可以帮助我计算总体管道延迟?如果无法解释管道的一部分,是否有办法进行估算或使用外部工具进行计算?
答案 0 :(得分:0)
数据流显示一个称为“系统延迟”的度量,该度量表示数据流管道的端到端延迟。这应该可以帮助您了解管道的PubSub(output)-> Dataflow-> BQ部分的延迟。
尽管我自己并没有使用过它,但是您可以使用Stackdriver Trace来跟踪您的Cloud Function中的某些事件,并在Dataflow提取该事件时跟踪该事件。这样一来,您就可以衡量管道的Cloud Functions-> PubSub(in)-> PubSub(output)部分的延迟。
LMK,如果这似乎是一个有趣的途径,我们可以尝试以此为基础。