如何 运行 查询配置单元并通过日志获取 applicationID
How to run a query hive and get the applicationID via log
我正在编写一个 shell 脚本来执行配置单元命令,将日志和输出信息写入两个单独的文件:
hive -S -f pdr_extrator.sql 2> pdr_extrator_log.txt | sed 's / [\ t] / | / g' 1> pdr_extrator_out.txt
执行结束后的日志文件如下:
log4j: WARN No such property [maxBackupIndex] in org.apache.log4j.DailyRollingFileAppender.
log4j: WARN No such property [maxFileSize] in org.apache.log4j.DailyRollingFileAppender.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar: file: /usr/hdp/2.2.6.0-2800/hadoop/lib/slf4j-log4j12-1.7.5.jar! /Org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar: file: /usr/hdp/2.2.6.0-2800/hive/lib/hive-jdbc-0.14.0.2.2.6.0-2800-standalone.jar! / Org / slf4j / impl / StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
当我通过命令行运行时,可以获取到我具体查询的applicationID,如下图:
ApplicationID - Hive command line
不知道有没有办法通过日志获取applicationID
今天我正在使用命令 yarn application -list -appTypes TEZ
并监视在我的查询开始附近出现的进程,稍后使用命令 yarn application -status application_XXXXX
仅监视我的执行。
问题是这个方法有缺陷,因为另一个进程可能会在类似的时间进入队列,例如。
感谢您的帮助。
您正在使用 -S
选项 运行ning hive 查询文件,该选项抑制与 yarn application id
相关的日志记录。
尝试运行
hive -f pdr_extrator.sql
如果重定向,您必须能够在控制台或文件上看到如下日志。
Status: Running (Executing on YARN cluster with App id application_1579987899994_341626)
我正在编写一个 shell 脚本来执行配置单元命令,将日志和输出信息写入两个单独的文件:
hive -S -f pdr_extrator.sql 2> pdr_extrator_log.txt | sed 's / [\ t] / | / g' 1> pdr_extrator_out.txt
执行结束后的日志文件如下:
log4j: WARN No such property [maxBackupIndex] in org.apache.log4j.DailyRollingFileAppender. log4j: WARN No such property [maxFileSize] in org.apache.log4j.DailyRollingFileAppender. SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar: file: /usr/hdp/2.2.6.0-2800/hadoop/lib/slf4j-log4j12-1.7.5.jar! /Org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar: file: /usr/hdp/2.2.6.0-2800/hive/lib/hive-jdbc-0.14.0.2.2.6.0-2800-standalone.jar! / Org / slf4j / impl / StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
当我通过命令行运行时,可以获取到我具体查询的applicationID,如下图:
ApplicationID - Hive command line
不知道有没有办法通过日志获取applicationID
今天我正在使用命令 yarn application -list -appTypes TEZ
并监视在我的查询开始附近出现的进程,稍后使用命令 yarn application -status application_XXXXX
仅监视我的执行。
问题是这个方法有缺陷,因为另一个进程可能会在类似的时间进入队列,例如。
感谢您的帮助。
您正在使用 -S
选项 运行ning hive 查询文件,该选项抑制与 yarn application id
相关的日志记录。
尝试运行
hive -f pdr_extrator.sql
如果重定向,您必须能够在控制台或文件上看到如下日志。
Status: Running (Executing on YARN cluster with App id application_1579987899994_341626)