Hive - 查找用户完成的更新

Gib*_*bbs 6 hive hiveql

我正在寻找一种方法来找出谁在Hive外部表上运行update/drop/alter命令.我对select,show命令不感兴趣.

我找不到任何解决方法.有什么方法可以找到它吗?

如果我们需要做任何先前的工作,也可以.

有什么建议?

S.S*_*ker 0

我在 python 中找到了一个脚本,可以使用用户提取所有 SQL 命令,您可以扩展该脚本。

./hqe.py --help 
usage: hqe.py [-h] [--since SINCE] [--to TO] [--logdir LOGDIR]
          [--glob LOGFILE_GLOB]
          [--loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}]

Displays queries ran on Hive.

optional arguments:
 -h, --help show this help message and exit
 --since SINCE how far to look back. (default: 15m)
 --to TO How far to look forward. (default: now)
 --logdir LOGDIR Directory of hive log files. (default: /var/log/hive)
 --glob LOGFILE_GLOB Shell pattern of hive logfiles inside their logdir.
 (default: hiveserver2.log*)
 --loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}, -l {DEBUG,INFO,WARNING,ERROR,CRITICAL}
 Log level. (default: warn)
Run Code Online (Sandbox Code Playgroud)

如果知道显示用户、主机名和持续时间,则查询将以与发送时相同的格式显示,包括注释,

博客文章:https://thisdataguy.com/2017/06/23/extracting-queries-from-hive-logs/

Github项目