嗨,我需要编写一个python脚本,以便能够监视linux上的特定进程。更具体地说,我希望能够监视Namenode Process是否正在运行,并且如果进程出现故障,我希望能够获得某种消息。我在论坛上看到了类似的内容,这是我应该写的内容,为什么会出现此错误?
>>> if 'namenode' not in subprocess.Popen('tasklist',stdout=subprocess.PIPE).communicate( [0]:
... subprocess.Popen('namenode')
File "<stdin>", line 2
subprocess.Popen('namenode')
^
IndentationError: expected an indented block
最佳答案
您可以使用psutil之类的东西。您可以监视这样的过程。
import psutil
proc = None
for p in psutil.process_iter():
if p.name == 'namenode':
proc = p
break
if proc is None:
print("Can't find namenode")
else:
proc.wait()
print('Namenode not running')
关于python - Python NameNode脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20802866/