Browse Source

Make all external module imports namespaced

check-vt100
Aleksander Kiryk 4 years ago committed by Aleksander Kiryk
parent
commit
f55f8af4cd
  1. 15
      graph.py
  2. 30
      watch.py

15
graph.py

@ -6,14 +6,13 @@
#
import datetime
import os
import socket
import subprocess
import sys
import time
from datetime import datetime, timedelta
from socket import gethostname
from common import *
global gnuplot
@ -160,8 +159,8 @@ g("set output 'plot.%s'" % OUTPUT_EXT)
g("set multiplot layout 3,1 title \"%s\"" % "\\n\\n\\n")
sdt = datetime.strptime(START_DATE, '%Y-%m-%d-%H:%M:%S')
edt = datetime.strptime(END_DATE, '%Y-%m-%d-%H:%M:%S')
sdt = datetime.datetime.strptime(START_DATE, '%Y-%m-%d-%H:%M:%S')
edt = datetime.datetime.strptime(END_DATE, '%Y-%m-%d-%H:%M:%S')
delta_t = ((edt - sdt).total_seconds()) / 60.0
g("set title 'cpu load (average = %.2f %%)'" % AVERAGE_LOAD)
@ -171,12 +170,12 @@ seconds_between = (edt - sdt).total_seconds()
if seconds_between < 100:
seconds_between = 100
nsdt = sdt - timedelta(seconds = (seconds_between * 0.01))
nedt = edt + timedelta(seconds = (seconds_between * 0.01))
nsdt = sdt - datetime.timedelta(seconds = (seconds_between * 0.01))
nedt = edt + datetime.timedelta(seconds = (seconds_between * 0.01))
g("set xrange ['%s':'%s']" % (nsdt.strftime("%Y-%m-%d-%H:%M:%S"), nedt.strftime("%Y-%m-%d-%H:%M:%S")));
g("set label 101 at screen 0.02, screen 0.95 'Running on {/:Bold %s} \@ {/:Bold %s}, {/:Bold %d} threads x {/:Bold %s}, total ram: {/:Bold %.2f GB}, total disk space: {/:Bold %.2f GB}' tc rgb 'white'" % (gethostname(), uname, cpus, cpu_name, TOTAL_RAM, TOTAL_FS))
g("set label 101 at screen 0.02, screen 0.95 'Running on {/:Bold %s} \@ {/:Bold %s}, {/:Bold %d} threads x {/:Bold %s}, total ram: {/:Bold %.2f GB}, total disk space: {/:Bold %.2f GB}' tc rgb 'white'" % (socket.gethostname(), uname, cpus, cpu_name, TOTAL_RAM, TOTAL_FS))
g("set label 102 at screen 0.02, screen 0.93 'duration: {/:Bold %s} .. {/:Bold %s} (%.2f minutes)' tc rgb 'white'" % (START_DATE, END_DATE, delta_t))
i = 0

30
watch.py

@ -7,26 +7,24 @@
import argparse
import datetime
import fcntl
import os
import re
import select
import signal
import subprocess
import sys
import time
from datetime import datetime
from select import select
from fcntl import fcntl, F_GETFL, F_SETFL
from os.path import realpath
from re import escape
from common import *
global gnuplot
global die
die = 0
# Declare and parse command line flags
parser = argparse.ArgumentParser()
parser.add_argument('session', metavar='SESSION-NAME', type=str, nargs='?', default=None, help='sargraph session name')
parser.add_argument('command', metavar='COMMAND', type=str, nargs='*', help='send command')
@ -104,7 +102,7 @@ if args.session:
if cmd[0] == "start":
print("Starting sargraph session '%s'" % sid)
p = subprocess.Popen(["screen", "-dmSL", sid, realpath(__file__), *sys.argv[3:]])
p = subprocess.Popen(["screen", "-dmSL", sid, os.path.realpath(__file__), *sys.argv[3:]])
while p.poll() is None:
time.sleep(0.1)
gpid = 0
@ -179,10 +177,10 @@ with open("data.txt", "w") as f:
p.stdout.readline()
if args.fspath:
args.fspath = realpath(args.fspath)
args.fspath = os.path.realpath(args.fspath)
with open("/proc/self/mounts", "r") as f:
while args.fsdev is None:
args.fsdev = scan("^(/dev/\S+)\s+%s\s+" % escape(args.fspath), str, f.readline())
args.fsdev = scan("^(/dev/\S+)\s+%s\s+" % re.escape(args.fspath), str, f.readline())
if not args.fsdev:
print("Error: no device is mounted on %s" % args.fspath)
sys.exit(1)
@ -199,14 +197,14 @@ TOTAL_FS = 0
FS_SAR_INDEX = None
flags = fcntl(sys.stdin, F_GETFL)
fcntl(sys.stdin, F_SETFL, flags | os.O_NONBLOCK)
flags = fcntl.fcntl(sys.stdin, fcntl.F_GETFL)
fcntl.fcntl(sys.stdin, fcntl.F_SETFL, flags | os.O_NONBLOCK)
labels = []
# Gather data from sar output
while 1:
rlist, _, _ = select([p.stdout, sys.stdin], [], [], 0.25)
now = datetime.now()
rlist, _, _ = select.select([p.stdout, sys.stdin], [], [], 0.25)
now = datetime.datetime.now()
if sys.stdin in rlist:
label_line = sys.stdin.readline().replace("\n", "")
if label_line == "q":
@ -271,8 +269,8 @@ AVERAGE_LOAD = AVERAGE_LOAD / float(i)
MAX_USED_RAM = MAX_USED_RAM / 1024.0 / 1024.0
MAX_USED_FS /= 1024.0
sdt = datetime.strptime(START_DATE, '%Y-%m-%d %H:%M:%S')
edt = datetime.strptime(END_DATE, '%Y-%m-%d %H:%M:%S')
sdt = datetime.datetime.strptime(START_DATE, '%Y-%m-%d %H:%M:%S')
edt = datetime.datetime.strptime(END_DATE, '%Y-%m-%d %H:%M:%S')
delta_t = ((edt - sdt).total_seconds()) / 60.0
with open("data.txt", "a") as f:

Loading…
Cancel
Save