SyAgent is a lightweight, comprehensive system monitoring agent written in Bash that collects detailed system metrics and securely transmits them to the SyAgent monitoring service. It provides real-time visibility into your server's performance, resource usage, and system health.
- Comprehensive Monitoring: Tracks CPU, memory, disk, network, GPU, and process metrics
- Lightweight: Pure Bash implementation with minimal system overhead
- Secure: Token-based authentication for data transmission
- Easy Installation: One-command setup with automatic dependency management
- Cross-Platform: Supports major Linux distributions (Ubuntu, CentOS, Arch, etc.)
- Real-time: Collects and reports metrics every minute via cron
- Get your authentication token from the SyAgent dashboard
- Run the installer as root:
curl -sSL https://raw.githubusercontent.com/syagent/agent-2/main/install.sh | bash -s 'YOUR_TOKEN_HERE'Alternatively, download and run manually:
wget https://raw.githubusercontent.com/syagent/agent-2/main/install.sh
chmod +x install.sh
sudo ./install.sh 'YOUR_TOKEN_HERE'- Downloads the monitoring agent to
/etc/syAgent/ - Creates a dedicated
syAgentuser for security - Sets up a cron job to run every minute
- Installs cron if not already present
- Configures proper permissions and security settings
- Operating System: Linux (any modern distribution)
- Permissions: Root access for installation (agent runs as dedicated user)
- Dependencies:
bash(installed by default on most systems)cron(auto-installed if missing)wgetorcurl(for installation and data transmission)- Standard system utilities (
ps,df,who, etc.)
- System uptime
- System load average
- IO load and wait times
- OS kernel version
- OS name and distribution
- System architecture (x64, x86, ARM, etc.)
- CPU identifier and model
- Number of CPU cores
- CPU frequency
- Real-time CPU load percentage
- RAM total capacity
- RAM usage (used/free)
- SWAP total capacity
- SWAP usage statistics
- Disk list and mount points
- Total disk capacity
- Disk usage per partition
- Available free space
- Active connection count
- Network interface identifiers
- IPv4 and IPv6 addresses
- RX/TX bytes since boot
- Current RX/TX transfer rates
- Total process count
- Process list with CPU/memory usage
- Top processes by resource consumption
- Open file handle count
- System file handle limits
- GPU identifier and model
- GPU memory total/usage
- GPU utilization percentage
- GPU temperature
- Running GPU processes
- Installed application versions
- Running services and daemons
- Database versions (MySQL, PostgreSQL, MongoDB, Redis)
- Web server versions (Apache, Nginx)
- Programming language versions (Python, Node.js, Java, etc.)
- SSH connection attempts (successful/failed)
- Login session count
- Security event monitoring
- Agent version
- Active user sessions
- System configuration details
The agent stores its configuration in /etc/syAgent/:
sa-auth.log: Contains your authentication tokensh-agent.sh: The main monitoring scriptsh-cron.log: Execution logs from cronsh-agent.log: Data transmission logs
sudo crontab -u syAgent -lsudo tail -f /etc/syAgent/sh-cron.logsudo -u syAgent bash /etc/syAgent/sh-agent.sh# The installer automatically removes old installations
sudo ./install.sh 'YOUR_TOKEN_HERE'To remove SyAgent completely:
# Remove cron job
sudo crontab -u syAgent -r 2>/dev/null
# Remove user
sudo userdel syAgent 2>/dev/null
# Remove files
sudo rm -rf /etc/syAgent- Agent runs as a dedicated non-privileged user (
syAgent) - Secure token-based authentication
- HTTPS encryption for all data transmission
- No sensitive data stored locally except authentication token
- Minimal system permissions required for operation
We welcome contributions! Please feel free to submit issues, feature requests, or pull requests.
- Issues: Report bugs or request features via GitHub issues
- Documentation: Visit the SyAgent dashboard for detailed setup guides
- Community: Join our community forums for tips and support
Version: 1.0.9
Compatibility: Linux (Ubuntu, CentOS, Debian, Arch, RHEL, and more)