refactor: moved org-agent to its own repository as a submodule
This commit is contained in:
38
system/hourly-tracker.sh
Executable file
38
system/hourly-tracker.sh
Executable file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Hourly Tracker Script for OpenClaw Workspace
|
||||
# Created: 2026-03-13
|
||||
# Purpose: Track CPU, Memory, Disk, and Network Connections
|
||||
|
||||
LOG_DIR="/home/amr/.openclaw/workspace/memex/7_system/logs"
|
||||
LOG_FILE="$LOG_DIR/hourly-stats.log"
|
||||
DATE=$(date "+%Y-%m-%d %H:%M:%S")
|
||||
|
||||
mkdir -p "$LOG_DIR"
|
||||
|
||||
log_stats() {
|
||||
# 1. CPU
|
||||
CPU_LOAD=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}')
|
||||
|
||||
# 2. Memory
|
||||
MEM_USAGE=$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')
|
||||
|
||||
# 3. Load average
|
||||
LOAD_AVG=$(uptime | awk -F'load average:' '{ print $2 }' | xargs)
|
||||
|
||||
# 4. Disk (/)
|
||||
DISK_USAGE=$(df -h / | awk 'NR==2 {print $5}')
|
||||
|
||||
# 5. Network connections
|
||||
NET_CONNS=$(netstat -an | grep ESTABLISHED | wc -l)
|
||||
|
||||
echo "[$DATE] CPU: $CPU_LOAD%, MEM: $MEM_USAGE, LOAD: $LOAD_AVG, DISK: $DISK_USAGE, NET: $NET_CONNS" >> "$LOG_FILE"
|
||||
}
|
||||
|
||||
cleanup_logs() {
|
||||
# 6. Auto-cleanup logs older than 30 days
|
||||
find "$LOG_DIR" -type f -mtime +30 -delete
|
||||
}
|
||||
|
||||
log_stats
|
||||
cleanup_logs
|
||||
Reference in New Issue
Block a user