| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
cgdf
10年前发布

python获得linux服务器的内存使用率,虚拟内存使用率

python获得linux服务器的内存使用率,虚拟内存使用率. linux系统的内存占用信息在/proc/meminfo文件中。 您可以打开这个文件会看到更多详细的信息。

def get_mem_usage_percent():      try:          f = open('/proc/meminfo', 'r')          for line in f:              if line.startswith('MemTotal:'):                  mem_total = int(line.split()[1])              elif line.startswith('MemFree:'):                  mem_free = int(line.split()[1])              elif line.startswith('Buffers:'):                  mem_buffer = int(line.split()[1])              elif line.startswith('Cached:'):                  mem_cache = int(line.split()[1])              elif line.startswith('SwapTotal:'):                  vmem_total = int(line.split()[1])              elif line.startswith('SwapFree:'):                  vmem_free = int(line.split()[1])              else:                  continue          f.close()      except:          return None      physical_percent = usage_percent(mem_total - (mem_free + mem_buffer + mem_cache), mem_total)      virtual_percent = 0      if vmem_total > 0:          virtual_percent = usage_percent((vmem_total - vmem_free), vmem_total)      return physical_percent, virtual_percent    def usage_percent(use, total):      try:          ret = (float(use) / total) * 100      except ZeroDivisionError:          raise Exception("ERROR - zero division error")      return ret