Added fix for memory calculation

devel
Alexey Berezhok 2 months ago
parent bf9de36753
commit cc59572a59

@ -8,6 +8,7 @@ All notable changes to this project will be documented in this file.
- Fixed separate edition of php.ini in multiphp mode
- Added usemirrorclamav for install script for uieng Russian mirror for Clamav databases
- Added devel mode of installation for installing not from github by default. With this parameter installation will be from devel repo dev.brepo.ru
- Fixed memory calculation in service list
## [1.9.4.rpm] - Release

@ -34,7 +34,8 @@ json_list() {
"STATE": "'$STATE'",
"CPU": "'$CPU'",
"MEM": "'$MEM'",
"RTIME": "'$RTIME'"
"RTIME": "'$RTIME'",
"PMEM": "'$PHM'"
}'
if [ "$i" -lt "$objects" ]; then
echo ','
@ -49,11 +50,11 @@ json_list() {
# SHELL list function
shell_list() {
IFS=$'\n'
echo "NAME STATE CPU MEM UPTIME"
echo "---- ----- --- --- ------"
echo "NAME STATE CPU MEM UPTIME PMEM"
echo "---- ----- --- --- ------ ----"
while read str; do
parse_object_kv_list "$str"
echo "$NAME $STATE $CPU $MEM $RTIME"
echo "$NAME $STATE $CPU $MEM $RTIME $PHM"
done < <(echo -e "$data" | grep NAME)
}
@ -62,17 +63,17 @@ plain_list() {
IFS=$'\n'
while read str; do
parse_object_kv_list "$str"
echo -e "$NAME\t$SYSTEM\t$STATE\t$CPU\t$MEM\t$RTIME"
echo -e "$NAME\t$SYSTEM\t$STATE\t$CPU\t$MEM\t$RTIME\t$PHM"
done < <(echo -e "$data" | grep NAME)
}
# CSV list function
csv_list() {
IFS=$'\n'
echo "NAME,SYSTEM,STATE,CPU,MEM,RTIME"
echo "NAME,SYSTEM,STATE,CPU,MEM,RTIME,PMEM"
while read str; do
parse_object_kv_list "$str"
echo "$NAME,\"$SYSTEM\",$STATE,$CPU,$MEM,$RTIME"
echo "$NAME,\"$SYSTEM\",$STATE,$CPU,$MEM,$RTIME,$PHM"
done < <(echo -e "$data" | grep NAME)
}
@ -84,6 +85,7 @@ get_srv_state() {
mem=0
cpu=0
rtime="0"
pmem=0
# Searching related pids
if [ "$name" = "php-fpm" ]; then
@ -91,7 +93,11 @@ get_srv_state() {
for php_pid in $(pidof php-fpm); do
process_info=$(ps -p "$php_pid" -o args | tail -n1 | grep "$srv")
if [ -n "$process_info" ]; then
pids="${pids}|${php_pid}"
if [ -z "$pids" ];then
pids="${php_pid}"
else
pids="${pids}|${php_pid}"
fi
fi
done
else
@ -123,6 +129,9 @@ get_srv_state() {
mem=$(echo "$pids" | awk '{sum += $3} END {print sum/1024 }')
mem=$(echo "${mem%%.*}")
pmem=$(echo "$pids" | awk '{sum += $4} END {print sum/1024 }')
pmem=$(echo "${pmem%%.*}")
# Searching pid file
pid_file=''
if [ -e "/run/$srv.pid" ]; then
@ -151,6 +160,7 @@ get_srv_state() {
mem=0
cpu=0
rtime="0"
pmem=0
fi
}
@ -160,7 +170,7 @@ get_srv_state() {
# Saving current proccess list
tmp_file=$(mktemp)
ps -eo pid,pcpu,size > $tmp_file
ps -eo pid,pcpu,size,rss > $tmp_file
# Checking current time
ctime=$(date +%s)
@ -169,7 +179,7 @@ ctime=$(date +%s)
if [ -n "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'remote' ]; then
get_srv_state $WEB_SYSTEM
data="NAME='$WEB_SYSTEM' SYSTEM='web server' STATE='$state' CPU='$cpu'"
data="$data MEM='$mem' RTIME='$rtime'"
data="$data MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking PHP intepreter
@ -179,18 +189,18 @@ if [ -n "$WEB_BACKEND" ] && [ "$WEB_BACKEND" != 'remote' ]; then
for version in $php_versions; do
proc_name="php-fpm"
service_name="fpm${version}"
get_srv_state "$proc_name"
get_srv_state "/opt/brepo/php${version}" "$proc_name"
data="$data\nNAME='brepo-php-$service_name' SYSTEM='php interpreter' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
done
else
php_versions=$(ls /opt/remi/php*/root/sbin/php-fpm | cut -d'/' -f4 | sed 's|php||')
for version in $php_versions; do
proc_name="php-fpm"
service_name="php${version}"
get_srv_state "$proc_name"
get_srv_state "/opt/remi/php${version}" "$proc_name"
data="$data\nNAME='$service_name-php-fpm' SYSTEM='php interpreter' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
done
fi
fi
@ -199,7 +209,7 @@ fi
if [ -n "$PROXY_SYSTEM" ] && [ "$PROXY_SYSTEM" != 'remote' ]; then
get_srv_state "$PROXY_SYSTEM"
data="$data\nNAME='$PROXY_SYSTEM' SYSTEM='reverse proxy' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# DNS
@ -208,21 +218,21 @@ if [ -n "$service" ] && [ "$service" != 'remote' ]; then
proc_name='named'
get_srv_state $service $proc_name
data="$data\nNAME='$service' SYSTEM='dns server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking MAIL system
if [ -n "$MAIL_SYSTEM" ] && [ "$MAIL_SYSTEM" != 'remote' ]; then
get_srv_state "$MAIL_SYSTEM"
data="$data\nNAME='$MAIL_SYSTEM' SYSTEM='mail server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking MAIL IMAP
if [ -n "$IMAP_SYSTEM" ] && [ "$IMAP_SYSTEM" != 'remote' ]; then
get_srv_state "$IMAP_SYSTEM"
data="$data\nNAME='$IMAP_SYSTEM' SYSTEM='imap/pop3 server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking MAIL ANTIVIRUS
@ -244,7 +254,7 @@ if [ -n "$ANTIVIRUS_SYSTEM" ] && [ "$ANTIVIRUS_SYSTEM" != 'remote' ]; then
get_srv_state "$ANTIVIRUS_SYSTEM" "$proc_name"
fi
data="$data\nNAME='$ANTIVIRUS_SYSTEM' SYSTEM='email anti-virus'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
proc_name=''
fi
@ -252,7 +262,7 @@ fi
if [ -n "$ANTISPAM_SYSTEM" ] && [ "$ANTISPAM_SYSTEM" != 'remote' ]; then
get_srv_state "$ANTISPAM_SYSTEM" "spamd"
data="$data\nNAME='$ANTISPAM_SYSTEM' SYSTEM='email spam filter'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking DB system
@ -299,7 +309,7 @@ if [ -n "$DB_SYSTEM" ] && [ "$DB_SYSTEM" != 'remote' ]; then
fi
get_srv_state "$service" "$proc_name"
data="$data\nNAME='$service' SYSTEM='database server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
proc_name=''
done
fi
@ -308,21 +318,21 @@ fi
if [ -n "$FTP_SYSTEM" ] && [ "$FTP_SYSTEM" != 'remote' ]; then
get_srv_state "$FTP_SYSTEM"
data="$data\nNAME='$FTP_SYSTEM' SYSTEM='ftp server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking CRON system
if [ -n "$CRON_SYSTEM" ] && [ "$CRON_SYSTEM" != 'remote' ]; then
get_srv_state "$CRON_SYSTEM"
data="$data\nNAME='$CRON_SYSTEM' SYSTEM='job scheduler' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking SSH daemon
if [ -e "/etc/ssh/sshd_config" ]; then
get_srv_state ssh
data="$data\nNAME='ssh' SYSTEM='ssh server' STATE='$state'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Checking FIREWALL system
@ -339,7 +349,7 @@ if [ -n "$FIREWALL_SYSTEM" ] && [ "$FIREWALL_SYSTEM" != 'remote' ]; then
fi
fi
data="$data\nNAME='$FIREWALL_SYSTEM' SYSTEM='firewall'"
data="$data STATE='$state' CPU='0' MEM='0' RTIME='0'"
data="$data STATE='$state' CPU='0' MEM='0' RTIME='0' PHM='0'"
fi
# Checking FIREWALL Fail2ban extention
@ -354,7 +364,7 @@ if [ -n "$FIREWALL_EXTENSION" ]; then
get_srv_state "$FIREWALL_EXTENSION" fail2ban-server script
fi
data="$data\nNAME='$FIREWALL_EXTENSION' SYSTEM='brute-force protection'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime'"
data="$data STATE='$state' CPU='$cpu' MEM='$mem' RTIME='$rtime' PHM='$pmem'"
fi
# Listing data

@ -3,7 +3,7 @@
Name: hestia
Version: 1.9.5
Release: 3%{dist}
Release: 4%{dist}
Summary: Hestia Control Panel
Group: System Environment/Base
License: GPLv3
@ -184,6 +184,9 @@ fi
%{_tmpfilesdir}/%{name}.conf
%changelog
* Thu Jun 05 2025 Alexey Berezhok <a@bayrepo.ru> - 1.9.5-4
- Fixed memory calculation in service list
* Sun Jun 01 2025 Alexey Berezhok <a@bayrepo.ru> - 1.9.5-3
- Added documentation fixes
- Change download path to github

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-02-02 21:50+0300\n"
"POT-Creation-Date: 2025-06-05 22:46+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -921,7 +921,6 @@ msgstr ""
#: ../../web/edit/server/exim4/index.php:44
#: ../../web/edit/server/fail2ban/index.php:44
#: ../../web/edit/server/httpd/index.php:44
#: ../../web/edit/server/index.php:1748 ../../web/edit/server/index.php:1752
#: ../../web/edit/server/mariadb/index.php:44
#: ../../web/edit/server/mysql/index.php:44
#: ../../web/edit/server/mysqld/index.php:44
@ -935,8 +934,9 @@ msgstr ""
#: ../../web/edit/server/spamassassin/index.php:44
#: ../../web/edit/server/spamd/index.php:44
#: ../../web/edit/server/ssh/index.php:44
#: ../../web/edit/server/vsftpd/index.php:44 ../../web/edit/user/index.php:558
#: ../../web/edit/web/index.php:1689
#: ../../web/edit/server/vsftpd/index.php:44
#: ../../web/edit/server/index.php:1748 ../../web/edit/server/index.php:1752
#: ../../web/edit/user/index.php:558 ../../web/edit/web/index.php:1689
msgid "Changes have been saved."
msgstr ""
@ -4349,10 +4349,10 @@ msgstr ""
#: ../../web/templates/pages/list_updates.php:34
#: ../../web/templates/pages/list_updates.php:58
#: ../../web/templates/pages/list_services.php:104
#: ../../web/templates/pages/list_services.php:209
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:39
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:69
#: ../../web/templates/pages/list_services.php:104
#: ../../web/templates/pages/list_services.php:209
msgid "Description"
msgstr ""
@ -4756,6 +4756,40 @@ msgstr ""
msgid "Ruby available list"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:27
msgid "Available PHP list"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:31
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:40
msgid "PHP version"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:45
msgid "Change modules list"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:46
msgid "Change modules list for PHP"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:59
msgid "PHP modules tunning"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:32
msgid "Available modules list for version PHP"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:38
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:47
msgid "PHP module name"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:82
msgid "PHP modules list"
msgstr ""
#: ../../web/templates/pages/list_services.php:9
msgid "Task Monitor"
msgstr ""
@ -4808,8 +4842,7 @@ msgid "Service"
msgstr ""
#: ../../web/templates/pages/list_services.php:107
#: ../../web/templates/pages/list_services.php:221
msgid "Memory"
msgid "Memory(Physical memory)"
msgstr ""
#: ../../web/templates/pages/list_services.php:200
@ -4822,42 +4855,12 @@ msgstr ""
msgid "Are you sure you want to start service %s?"
msgstr ""
#: ../../web/templates/pages/list_services.php:222
msgid "MB"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:27
msgid "Available PHP list"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:31
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:40
msgid "PHP version"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:45
msgid "Change modules list"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:46
msgid "Change modules list for PHP"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules.php:59
msgid "PHP modules tunning"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:32
msgid "Available modules list for version PHP"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:38
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:47
msgid "PHP module name"
#: ../../web/templates/pages/list_services.php:221
msgid "Memory"
msgstr ""
#: ../../web/templates/pages/extmodules/extmodules_php_brepo_modules_list.php:82
msgid "PHP modules list"
#: ../../web/templates/pages/list_services.php:222
msgid "MB"
msgstr ""
#: ../../web/update/hestia/index.php:20
@ -4877,59 +4880,59 @@ msgstr ""
msgid "Hestia internal web server"
msgstr ""
#: ../../bin/v-list-sys-services:171
#: ../../bin/v-list-sys-services:181
msgid "web server"
msgstr ""
#: ../../bin/v-list-sys-services:183
192
#: ../../bin/v-list-sys-services:193
202
msgid "php interpreter"
msgstr ""
#: ../../bin/v-list-sys-services:201
#: ../../bin/v-list-sys-services:211
msgid "reverse proxy"
msgstr ""
#: ../../bin/v-list-sys-services:210
#: ../../bin/v-list-sys-services:220
msgid "dns server"
msgstr ""
#: ../../bin/v-list-sys-services:217
#: ../../bin/v-list-sys-services:227
msgid "mail server"
msgstr ""
#: ../../bin/v-list-sys-services:224
#: ../../bin/v-list-sys-services:234
msgid "imap/pop3 server"
msgstr ""
#: ../../bin/v-list-sys-services:246
#: ../../bin/v-list-sys-services:256
msgid "email anti-virus"
msgstr ""
#: ../../bin/v-list-sys-services:254
#: ../../bin/v-list-sys-services:264
msgid "email spam filter"
msgstr ""
#: ../../bin/v-list-sys-services:301
#: ../../bin/v-list-sys-services:311
msgid "database server"
msgstr ""
#: ../../bin/v-list-sys-services:310
#: ../../bin/v-list-sys-services:320
msgid "ftp server"
msgstr ""
#: ../../bin/v-list-sys-services:317
#: ../../bin/v-list-sys-services:327
msgid "job scheduler"
msgstr ""
#: ../../bin/v-list-sys-services:324
#: ../../bin/v-list-sys-services:334
msgid "ssh server"
msgstr ""
#: ../../bin/v-list-sys-services:341
#: ../../bin/v-list-sys-services:351
msgid "firewall"
msgstr ""
#: ../../bin/v-list-sys-services:356
#: ../../bin/v-list-sys-services:366
msgid "brute-force protection"
msgstr ""

File diff suppressed because it is too large Load Diff

@ -104,7 +104,7 @@
<div class="units-table-cell"><?= _("Description") ?></div>
<div class="units-table-cell u-text-center"><?= _("Uptime") ?></div>
<div class="units-table-cell u-text-center"><?= _("CPU") ?></div>
<div class="units-table-cell u-text-center"><?= _("Memory") ?></div>
<div class="units-table-cell u-text-center"><?= _("Memory(Physical memory)") ?></div>
</div>
<!-- Begin services status list item loop -->
@ -219,7 +219,7 @@
</div>
<div class="units-table-cell u-text-bold u-text-center-desktop">
<span class="u-hide-desktop"><?= _("Memory") ?>:</span>
<?= $data[$key]["MEM"] ?> <?= _("MB") ?>
<?= $data[$key]["MEM"] ?> <?= _("MB") ?> (<?= $data[$key]["PMEM"] ?> <?= _("MB") ?>)
</div>
</div>
<?php } ?>

Loading…
Cancel
Save