correlation with
https://teguhth.blogspot.com/2024/01/shell-script-to-get-cpu-memory-usage.html
1. install mpstat & run
dnf install -y sysstat
mpstat 1 1 | awk '/Average:/ {printf "%.2f", 100-$NF}'
2. run script local_check_bar.sh
sh /data/local_check_bar.sh
watch sh /data/local_check_bar.sh
[root@teguhth10x data]# pwd
/data
[root@teguhth10x data]#
[root@teguhth10x data]# cat /data/local_check_bar.sh
#!/bin/bash
# dnf install -y sysstat
#CPU=$(top -bn1 | awk '/Cpu\(s\)/ {printf "%.2f", 100 - $8}')
CPU=$(mpstat 1 1 | awk '/Average:/ {printf "%.2f", 100-$NF}')
Mem_Used_mb=$(free -m | awk 'NR==2 {printf "%.0f", $3}')
Mem_Total_mb=$(free -m | awk 'NR==2 {printf "%.0f", $2}')
Mem_Used_kb=$(free -m | awk 'NR==2 {printf "%.0f", $3*1024}')
Mem_Total_kb=$(free -m | awk 'NR==2 {printf "%.0f", $2*1024}')
Mem_Used_gb=$(free -m | awk 'NR==2 {printf "%.0f", $3/1024}')
Mem_Total_gb=$(free -m | awk 'NR==2 {printf "%.0f", $2/1024}')
Mem_Used_percent=$(free -m | awk 'NR==2 {printf "%.2f", $3*100/$2}')
Mem_swap_used_mb=$(free -m | awk 'NR==3 {printf "%.0f", $3}')
Mem_swap_total_mb=$(free -m | awk 'NR==3 {printf "%.0f", $2}')
Mem_swap_used_kb=$(free -m | awk 'NR==3 {printf "%.0f", $3*1024}')
Mem_swap_total_kb=$(free -m | awk 'NR==3 {printf "%.0f", $2*1024}')
Mem_swap_used_gb=$(free -m | awk 'NR==3 {printf "%.0f", $3/1024}')
Mem_swap_total_gb=$(free -m | awk 'NR==3 {printf "%.0f", $2/1024}')
Mem_swap_percent=$(free -m | awk 'NR==3 {printf "%.2f", $3*100/$2}')
Mem_mTotal_mb=$(free -m | awk 'NR==2 {print $2}')
MEMORY_MARIA_MB=$(ps -C mariadbd -o rss= | awk '{sum+=$1} END {printf "%.0f", sum/1024}')
MEMORY_MARIA_USAGE=$(awk -v used="$MEMORY_MARIA_MB" -v total="$Mem_mTotal_mb" 'BEGIN {if(total>0) printf "%.2f",(used/total)*100; else printf "0.00"}')
width=50
filledc=$(awk -v usage="$CPU" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
barc=$(printf "%${filledc}s" "" | tr ' ' 'o')
filledm=$(awk -v usage="$MEMORY_MARIA_USAGE" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
barm=$(printf "%${filledm}s" "" | tr ' ' 'o')
filleds=$(awk -v usage="$Mem_Used_percent" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
bars=$(printf "%${filleds}s" "" | tr ' ' 'o')
filledsw=$(awk -v usage="$Mem_swap_percent" -v width="$width" 'BEGIN {printf "%d", usage*width/100}')
barsw=$(printf "%${filledsw}s" "" | tr ' ' 'o')
Server=$(hostname -s)
osx=$(grep '^PRETTY_NAME=' /etc/os-release | cut -d= -f2- | tr -d '"')
ip_address=$(hostname -I | awk '{print $1}')
echo ".::: Result checking on server with hostname << $Server >> & << $ip_address >> :::."
echo ""
echo "Hostname Server : $Server"
echo "IP Address(ifconfig) : $ip_address"
printf "CPU Usage(%%) :%6.2f%% [%-50s]\n" "$CPU" "$barc"
printf "Memory Usage(%%) Maria :%6.2f%% [%-50s]\n" "$MEMORY_MARIA_USAGE" "$barm"
printf "Memory Usage(%%) Total :%6.2f%% [%-50s]\n" "$Mem_Used_percent" "$bars"
printf "Swap Usage(%%) :%6.2f%% [%-50s]\n" "$Mem_swap_percent" "$barsw"
echo "Memory Usage Maria : ${MEMORY_MARIA_MB} MB"
echo "Used Memory : $Mem_Used_gb GB, $Mem_Used_mb MB, $Mem_Used_kb KB"
echo "Total Memory : $Mem_Total_gb GB, $Mem_Total_mb MB, $Mem_Total_kb KB"
echo "Used Swap : $Mem_swap_used_gb GB, $Mem_swap_used_mb MB, $Mem_swap_used_kb KB"
echo "Total Swap : $Mem_swap_total_gb GB, $Mem_swap_total_mb MB, $Mem_swap_total_kb KB"
echo ""
systemctl status mariadb --no-pager | grep "Active:"
echo ""
echo "disk info"
df -h
echo ""
echo "Copyright by : Teguh Triharto"
echo "Website : https://www.linkedin.com/in/teguhth"
echo "Operating System : $osx"
[root@teguhth10x data]#
3. run script local_check_loop.sh
sh /data/local_check_loop.sh
[root@teguhth10x data]# pwd
/data
[root@teguhth10x data]# cat /data/local_check_loop.sh
#!/bin/bash
while true
do
clear
#CPU=$(top -bn1 | awk '/Cpu\(s\)/ {printf "%.2f", 100 - $8}')
CPU=$(mpstat 1 1 | awk '/Average:/ {printf "%.2f", 100-$NF}')
Mem_Used_mb=$(free -m | awk 'NR==2 {printf "%.0f", $3}')
Mem_Total_mb=$(free -m | awk 'NR==2 {printf "%.0f", $2}')
Mem_Used_kb=$(free -m | awk 'NR==2 {printf "%.0f", $3*1024}')
Mem_Total_kb=$(free -m | awk 'NR==2 {printf "%.0f", $2*1024}')
Mem_Used_gb=$(free -m | awk 'NR==2 {printf "%.0f", $3/1024}')
Mem_Total_gb=$(free -m | awk 'NR==2 {printf "%.0f", $2/1024}')
Mem_Used_percent=$(free -m | awk 'NR==2 {printf "%.2f", $3*100/$2}')
Mem_swap_used_mb=$(free -m | awk 'NR==3 {printf "%.0f", $3}')
Mem_swap_total_mb=$(free -m | awk 'NR==3 {printf "%.0f", $2}')
Mem_swap_used_kb=$(free -m | awk 'NR==3 {printf "%.0f", $3*1024}')
Mem_swap_total_kb=$(free -m | awk 'NR==3 {printf "%.0f", $2*1024}')
Mem_swap_used_gb=$(free -m | awk 'NR==3 {printf "%.0f", $3/1024}')
Mem_swap_total_gb=$(free -m | awk 'NR==3 {printf "%.0f", $2/1024}')
Mem_swap_percent=$(free -m | awk 'NR==3 {printf "%.2f", $3*100/$2}')
Mem_mTotal_mb=$(free -m | awk 'NR==2 {print $2}')
MEMORY_MARIA_MB=$(ps -C mariadbd -o rss= | awk '{sum+=$1} END {printf "%.0f", sum/1024}')
MEMORY_MARIA_USAGE=$(awk -v used="$MEMORY_MARIA_MB" -v total="$Mem_mTotal_mb" 'BEGIN {if(total>0) printf "%.2f",(used/total)*100; else printf "0.00"}')
width=50
filledc=$(awk -v usage="$CPU" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
barc=$(printf "%${filledc}s" "" | tr ' ' 'o')
filledm=$(awk -v usage="$MEMORY_MARIA_USAGE" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
barm=$(printf "%${filledm}s" "" | tr ' ' 'o')
filleds=$(awk -v usage="$Mem_Used_percent" -v width="$width" 'BEGIN {printf "%d",usage*width/100}')
bars=$(printf "%${filleds}s" "" | tr ' ' 'o')
filledsw=$(awk -v usage="$Mem_swap_percent" -v width="$width" 'BEGIN {printf "%d", usage*width/100}')
barsw=$(printf "%${filledsw}s" "" | tr ' ' 'o')
Server=$(hostname -s)
osx=$(grep '^PRETTY_NAME=' /etc/os-release | cut -d= -f2- | tr -d '"')
ip_address=$(hostname -I | awk '{print $1}')
echo ".::: Result checking on server with hostname << $Server >> & << $ip_address >> :::."
echo
echo "Hostname Server : $Server"
echo "IP Address(ifconfig) : $ip_address"
printf "CPU Usage(%%) :%6.2f%% [%-50s]\n" "$CPU" "$barc"
printf "Memory Usage(%%) Maria :%6.2f%% [%-50s]\n" "$MEMORY_MARIA_USAGE" "$barm"
printf "Memory Usage(%%) Total :%6.2f%% [%-50s]\n" "$Mem_Used_percent" "$bars"
printf "Swap Usage(%%) :%6.2f%% [%-50s]\n" "$Mem_swap_percent" "$barsw"
echo "Memory Usage Maria : ${MEMORY_MARIA_MB} MB"
echo "Used Memory : $Mem_Used_gb GB, $Mem_Used_mb MB, $Mem_Used_kb KB"
echo "Total Memory : $Mem_Total_gb GB, $Mem_Total_mb MB, $Mem_Total_kb KB"
echo "Used Swap : $Mem_swap_used_gb GB, $Mem_swap_used_mb MB, $Mem_swap_used_kb KB"
echo "Total Swap : $Mem_swap_total_gb GB, $Mem_swap_total_mb MB, $Mem_swap_total_kb KB"
echo
systemctl status mariadb --no-pager | grep "Active:"
echo
echo "disk info"
df -h
echo
echo "Copyright by : Teguh Triharto"
echo "Website : https://www.linkedin.com/in/teguhth"
echo "Operating System : $osx"
sleep 2
done
[root@teguhth10x data]#





No comments:
Post a Comment