Memlog - скрипт собирает информацию по загруженности сервера по процессам.

Основные функции

Собирает информацию по загруженности сервера по процессам.

Установка

  • Перейти в автоматизацию, нажать «Загрузить пример» и выбрать «Из файла», указав путь к скрипту.
  • Снять галочку «Включить скрипт».
  • Выполнить настройку скрипта.
  • Нажать "Сохранить".
  • Активировать галочку "Включить скрипт".


Собирает информацию о процессах и общей загруженности сервера.

Скрипт предназначен для серверов младше версии 128632.

На более новых версиях имеется LOG_RSS или LOG_MEMORY в примерах скриптов.

Посмотреть можно создав Новый скрипт -> Загрузить пример -> Нужный скрипт .



"""
<parameters>
    <company>DSSL</company>
    <title>Memlog</title>
    <version>2.0</version>

    <parameter>
        <type>caption</type>
        <name>Настройки</name>
    </parameter>
    <parameter>
        <type>integer</type>
        <name>Интервал сбора лога(мин)</name>
        <id>DELAY</id>
        <value>60</value>
        <min>1</min>
        <max>100000</max>
    </parameter>
</parameters>
"""

import os
from subprocess import PIPE, Popen
from datetime import datetime

log_path = os.path.join(settings('system_wide_options')['screenshots_folder'], "memlog_v2.log")

def start():
	proc = Popen(["top","-b","-n","1"], stdout=PIPE)
	res = proc.stdout.read()
	dt_str = datetime.now().strftime("%d.%m.%Y %H:%M:%S")
	with open(log_path, "a") as f:
		f.write("\n" + "="*30 + dt_str + "="*30 + "\n")
		f.write(res)
	host.stats()["run_count"] += 1
	timeout(1000 * 60 * DELAY, start)

start()



Скачать