gpt4 book ai didi

apache-spark - Google Cloud Logging 中 Dataproc Spark 作业的输出

转载 作者:行者123 更新时间:2023-12-03 15:00:36 25 4
gpt4 key购买 nike

有没有办法将 Dataproc Spark 作业的输出发送到 Google Cloud 日志记录? As explained in the Dataproc docs作业驱动程序(Spark 作业的主控)的输出在控制台中的 Dataproc->Jobs 下可用。我也希望在 Cloud Logging 中有日志有两个原因:

  • 我想查看执行者的日志。主日志通常会说“执行程序丢失”而没有进一步的细节,如果有更多关于执行程序在做什么的信息会非常有用。
  • Cloud Logging 有很好的过滤和搜索功能

  • 目前,Cloud Logging 中显示的 Dataproc 的唯一输出是来自 yarn-yarn-nodemanager-* 和 container_*.stderr 的日志项。我的应用程序代码的输出显示在 Dataproc->Jobs 中,但未显示在 Cloud Logging 中,并且它只是 Spark 主控器的输出,而不是执行器的输出。

    最佳答案

    tl;博士

    这现在不受 native 支持,但会在 Cloud Dataproc 的 future 版本中得到 native 支持。 .也就是说,在此期间有一个手动解决方法。

    解决方法

    Cloud Dataproc 集群使用 fluentd收集日志并将其转发到 Cloud Logging。 fluentd 的配置就是为什么你看到一些日志转发而不是其他日志的原因。因此,简单的解决方法(直到 Cloud Dataproc 支持 Cloud Logging 中的作业详细信息)是修改 flientd 配置。集群上 fluentd 的配置文件位于:
    /etc/google-fluentd/google-fluentd.conf
    有两件事可以最容易地收集额外的详细信息:

  • 新增 fluentd plugin根据您的需求
  • 将一个新文件添加到收集的现有文件列表中(行 56 包含我的集群上的文件)

  • 编辑配置后,您需要重新启动 google-fluentd服务:
    /etc/init.d/google-fluentd restart
    最后,根据您的需要,您可能需要也可能不需要在集群上的所有节点上执行此操作。根据您的用例,听起来您可能只需更改主节点并进行设置。

    关于apache-spark - Google Cloud Logging 中 Dataproc Spark 作业的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34186511/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com