Consumo de memória por processo
Publicado por Leonardo Berbert Gomes (última atualização em 03/07/2020)
[ Hits: 4.559 ]
Homepage: https://www.linkedin.com/in/leoberbert
Script simples que tem como objetivo verificar o consumo de memória dos processos.
Alterar a variável "file = open(home_dir + "/scripts/.Config", "r")" para o caminho onde encontra-se seu arquivo de configuração contendo os nomes dos processos que deseja-se monitorar:
Ex.:
cat .Config
logstash
metricbeat
elasticsearch
kibana
check_process.py
====================================================================================================
Process Status
====================================================================================================
PROCESS: logstash PID: 19133 MEMORY % : 18.59 STARTED: 2020-06-11 15:49:34
PROCESS: metricbeat PID: 65954 MEMORY % : 0.06 STARTED: 2020-05-26 17:20:14
PROCESS: elasticsearch PID: 11989 MEMORY % : 40.73 STARTED: 2020-05-03 23:00:04
PROCESS: kibana PID: 109232 MEMORY % : 0.55 STARTED: 2020-06-18 15:56:20
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import psutil
import re
import os
from datetime import datetime, timedelta
rows, columns = os.popen('stty size', 'r').read().split()
os.system('clear')
home_dir = os.environ["HOME"]
def memory_usage_psutil(pid):
process = psutil.Process(pid)
mem = process.memory_percent()
return mem
try:
print("{:=^100}".format("="))
print("{:^90}".format("Process Status"))
print("{:=^100}".format("="))
file = open(home_dir + "/scripts/.Config", "r")
for line in file:
line = line.rstrip()
pattern = '(.*' + line + '.*)'
for proc in psutil.process_iter():
cmdline = str(proc.cmdline())
proc = str(proc)
splited_proc = proc.split("=")
pid = splited_proc[1]
pid = pid.replace(', name', '')
mem = (memory_usage_psutil(int(pid)))
mem = round(mem, 2)
started = splited_proc[3]
started = started.replace('\'', '')
started = started.replace(')', '')
result = re.match(pattern, cmdline)
if result:
print("{:<29}".format("PROCESS: " + line) + "{:<15}".format("PID: " + pid) + "{:<20}".format("MEMORY % : " + str(mem)) + "{:<20}".format(" STARTED: " + started))
except IOError:
print ("Error: The configuration file does not exist.")
exit(0)
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como quebrar senha usando john the ripper
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Não consigo instalar distro antiga no virtualbox nem direto no hd (22)
Podem me chamar de 1mbecil :) [RESOLVIDO] (29)









