Edit file File name : a2_user_mem.shared Content :#!/bin/bash LOG_FILE="/var/log/memory_usage_user.log" DATE=$(date "+%Y-%m-%d %H:%M:%S") get_memory_faults() { local faults_output=$(lveinfo -d --period 1d --by-fault pmem --show-columns id,PMemF -j) if [ "$faults_output" ]; then echo "$faults_output" | jq -r --arg date "$DATE" '.data[] | "\($date) \(.ID): \(.PMemF) faults"' >> $LOG_FILE fi } calculate_average_memory() { local json_output=$(lveinfo --order-by pmem_avg --limit 10 -d --show-columns aPMem,id -j) # Check if the data array in the JSON output is empty if [ "$(echo "$json_output" | jq '.data | length')" -gt 0 ]; then # Get sum and count of aPMem local sum=$(echo "$json_output" | jq '[.data[].aPMem] | add') local count=$(echo "$json_output" | jq '.data | length') local bytes_to_gb=1073741824 # 1024*1024*1024 # Calculate the average in GB local average=$(echo "scale=2; $sum / $count / $bytes_to_gb" | bc) echo "avg_top_10_user_mem=${average} Top 10 user's average memory usage: ${average} GB" exit 0 else echo "No data to calculate average" exit 1 fi } calculate_average_memory get_memory_faults Save