Consumo de memória por processo
Publicado por Leonardo Berbert Gomes (última atualização em 03/07/2020)
[ Hits: 4.404 ]
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)
Script em Python com várias funções matemáticas [iniciante]
Resolução de problemas por meio de buscas - Labirinto (Inteligência Artificial)
Nenhum coment�rio foi encontrado.
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
Problema com o Centro de Aplicativos Ubuntu 25.04 (1)
Maquina não se comunica [RESOLVIDO] (5)
E aí? O Warsaw já está funcionando no Debian 13? (5)
Direcionar uma URL para Outra No Mikrotik (2)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (5)