mapredue日志查看方式

日志相关的一般配置项

  • NodeManager 存储容器日志文件的本地文件系统中的目录列表。
    yarn.nodemanager.log-dirs
  • 选择是否启用日志聚合. 如果不启用聚合, NMs 会把日志存储在节点本地(就像第一代所做的那样).默认值为true
    yarn.log-aggregation-enable

yarn.log-aggregation-enable=false
1,容器日志在节点上的存储位置, 默认值是 ${yarn.log.dir}/userlogs.
2,一个应用的本地化日志目录是这样的格式 ${yarn.nodemanager.log-dirs}/application_${appid}
3,一个独立的容器的日志文件夹会在上面的文件夹下, 文件夹命名格式是这样 container_${containerid}
4,对于 MapReduce 的应用, 每个容器目录下会包含容器生成的三个文件, stderr, stdin 和 syslog
5,当yarn.log-aggregation-enable为true时,会将yarn.nodemanager.log-dirs 目录下的所有日志聚合到hdfs中。
yarn.log-aggregation-enable=true
1,本地目录不会有日志,会随时上传到聚合后的hdfs目录中。


日志聚合启用后的相关配置

  • 应用程序结束时存储应用程序日志的 HDFS 目录, 默认值/tmp/logs
    yarn.nodemanager.remote-app-log-dir

  • 将在 {yarn.nodemanager.remote-app-log-dir}/${user}/{thisParam} 创建删除日志目录,这个目录下会有容器的日志,默认值logs
    yarn.nodemanager.remote-app-log-dir-suffix

  • 删除聚合日志前要保留它们多久,配置成 -1 或者一个负值就不会删除聚合日志,默认值 7天
    yarn.log-aggregation.retain-seconds

  • cdh中默认没有这个属性,确定多长时间去检查一次聚合日志的留存情况以执行日志的删除. 如果设置为 0 或者负值, 那这个值就会用聚合日志的留存时间的十分之一来自动配置, 默认值是 -1.
    yarn.log-aggregation.retain-check-interval-seconds


日志聚合未启用的相关配置

  • 保留用户日志的时间(以秒为单位)。仅适用在日志聚合已禁用的情况下,默认3小时
    yarn.nodemanager.log.retain-seconds

命令行查看方式

[root@datanode1 container-logs]# yarn logs
Retrieve logs for completed YARN applications.
usage: yarn logs -applicationId  [OPTIONS]

general options are:
 -appOwner    AppOwner (assumed to be current user if
                                 not specified)
 -containerId      ContainerId (must be specified if node
                                 address is specified)
 -nodeAddress      NodeAddress in the format nodename:port
                                 (must be specified if container id is
                                 specified)


你可能感兴趣的:(mapredue日志查看方式)