mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-04 20:36:07 +01:00
120 lines
3.3 KiB
Python
120 lines
3.3 KiB
Python
import platform
|
|
import os
|
|
import datetime
|
|
import math
|
|
import argparse
|
|
|
|
class SystemInformation:
|
|
now = datetime.datetime.now()
|
|
olsReport = ""
|
|
|
|
@staticmethod
|
|
def cpuLoad():
|
|
return os.getloadavg()
|
|
|
|
@staticmethod
|
|
def getOSName():
|
|
|
|
OSName = platform.platform()
|
|
data = OSName.split("-")
|
|
|
|
checker = 0
|
|
finalOSName = ""
|
|
|
|
for items in data:
|
|
|
|
if checker == 1:
|
|
finalOSName = items
|
|
break
|
|
|
|
if items == "with":
|
|
checker = 1
|
|
|
|
return finalOSName
|
|
|
|
@staticmethod
|
|
def getCurrentSystemTime():
|
|
return SystemInformation.now.strftime("%I:%M")
|
|
|
|
@staticmethod
|
|
def currentWeekDay():
|
|
return SystemInformation.now.strftime("%a")
|
|
|
|
@staticmethod
|
|
def currentMonth():
|
|
return SystemInformation.now.strftime("%B")
|
|
|
|
@staticmethod
|
|
def currentYear():
|
|
return SystemInformation.now.strftime("%Y")
|
|
|
|
@staticmethod
|
|
def currentDay():
|
|
return SystemInformation.now.strftime("%d")
|
|
|
|
@staticmethod
|
|
def getAllInfo():
|
|
OSName = SystemInformation.getOSName()
|
|
loadAverage = SystemInformation.cpuLoad()
|
|
currentTime = SystemInformation.getCurrentSystemTime()
|
|
weekDayNameInString = SystemInformation.currentWeekDay()
|
|
currentMonthName = SystemInformation.currentMonth()
|
|
currentDayInDecimal = SystemInformation.currentDay()
|
|
currentYear = SystemInformation.currentYear()
|
|
loadAverage = list(loadAverage)
|
|
one = loadAverage[0]
|
|
two = loadAverage[1]
|
|
three = loadAverage[2]
|
|
|
|
data = {"weekDayNameInString": weekDayNameInString, "currentMonthName": currentMonthName,
|
|
"currentDayInDecimal": currentDayInDecimal, "currentYear": currentYear, "OSName": OSName,
|
|
"loadAVG": loadAverage, "currentTime": currentTime, "one":one,"two":two,"three":three}
|
|
|
|
return data
|
|
|
|
|
|
@staticmethod
|
|
def getSystemInformation():
|
|
try:
|
|
import psutil
|
|
SystemInfo = {'ramUsage': int(math.floor(psutil.virtual_memory()[2])), 'cpuUsage': int(math.floor(psutil.cpu_percent())), 'diskUsage': int(math.floor(psutil.disk_usage('/')[3]))}
|
|
return SystemInfo
|
|
except:
|
|
SystemInfo = {'ramUsage': 0,
|
|
'cpuUsage': 0,
|
|
'diskUsage': 0}
|
|
return SystemInfo
|
|
|
|
@staticmethod
|
|
def cpuRamDisk():
|
|
try:
|
|
import psutil
|
|
SystemInfo = {'ramUsage': int(math.floor(psutil.virtual_memory()[2])),
|
|
'cpuUsage': int(math.floor(psutil.cpu_percent())),
|
|
'diskUsage': int(math.floor(psutil.disk_usage('/')[3]))}
|
|
except:
|
|
SystemInfo = {'ramUsage': 0,
|
|
'cpuUsage': 0,
|
|
'diskUsage': 0}
|
|
|
|
return SystemInfo
|
|
|
|
@staticmethod
|
|
def populateOLSReport():
|
|
SystemInformation.olsReport = open("/tmp/lshttpd/.rtreport", "r").readlines()
|
|
|
|
|
|
|
|
def main():
|
|
|
|
parser = argparse.ArgumentParser(description='CyberPanel Installer')
|
|
parser.add_argument('function', help='Specific a function to call!')
|
|
|
|
args = parser.parse_args()
|
|
|
|
if args.function == "populateOLSReport":
|
|
SystemInformation.populateOLSReport()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main() |