Loading repository data…
Loading repository data…
SecuryBlack / repository
Agente de telemetría ultraligero escrito en Rust. Monitoriza las constantes vitales de tus servidores (CPU, RAM, Disco, Red) con un consumo de recursos casi nulo y transmisión eficiente vía gRPC.
OxiPulse is an ultralight, open source server monitoring agent written in Rust. It collects your server's vital signs — CPU, RAM, disk, and network — and ships them to any OpenTelemetry-compatible backend using the OTLP protocol.
OxiPulse is designed to be the monitoring agent you actually want to run:
OxiPulse is maintained by SecuryBlack's engineering team as a fully open source project under the Apache 2.0 license.
curl -fsSL https://install.oxipulse.io | bash
The script will ask for your OTLP endpoint and auth token, then install the agent as a systemd service with automatic restart.
irm https://install.oxipulse.io/windows | iex
The script installs the agent as a Windows Service with automatic restart on failure.
Sign in to securyblack.com, add a server, and copy the pre-filled install command — your endpoint and token are already included:
# Linux
curl -fsSL https://install.oxipulse.io | sudo bash -s -- \
# Windows
irm https://install.oxipulse.io/windows | iex -Endpoint ingest.securyblack.com -Token <YOUR_TOKEN>
Download the latest binary for your platform from the Releases page.
| Platform | Asset |
|---|---|
| Linux x86_64 | oxipulse-x86_64-unknown-linux-gnu.tar.gz |
| Linux arm64 | oxipulse-aarch64-unknown-linux-gnu.tar.gz |
| Windows x86_64 | oxipulse-x86_64-pc-windows-msvc.zip |
git clone https://github.com/securyblack/oxi-pulse
cd oxi-pulse
cargo build --release
Requires Rust 1.70+.
OxiPulse is configured via /etc/oxipulse/config.toml (Linux) or
C:\ProgramData\oxipulse\config.toml (Windows), with environment variables
as overrides.
# Required
endpoint = "https://ingest.example.com:4317" # Any OTLP/gRPC endpoint
token = "your-auth-token" # Sent as Authorization: Bearer header
# Optional
interval_secs = 10 # Collection and export interval (default: 10s)
buffer_max_size = 8640 # Max buffered snapshots when offline (default: 8640 = 24h at 10s)
| Variable | Description |
|---|---|
OXIPULSE_ENDPOINT | OTLP collector endpoint URL |
OXIPULSE_TOKEN | Auth token |
OXIPULSE_INTERVAL_SECS | Collection interval in seconds |
OXIPULSE_BUFFER_MAX | Max offline buffer size |
Control log verbosity via the RUST_LOG environment variable:
RUST_LOG=debug oxipulse # Verbose
RUST_LOG=warn oxipulse # Warnings and errors only
| Metric | OTel Instrument | Unit |
|---|---|---|
system.cpu.usage | Gauge | % |
system.memory.used | Gauge | By |
system.memory.total | Gauge | By |
system.disk.used | Gauge | By |
system.disk.total | Gauge | By |
system.network.received | Counter (delta) | By |
system.network.transmitted | Counter (delta) | By |
All metrics use standard OpenTelemetry semantic conventions.
| Feature | OxiPulse | Telegraf | Prometheus Node Exporter | Datadog Agent | New Relic Agent |
|---|---|---|---|---|---|
| Written in Rust | ✓ | ||||
| Single static binary | ✓ | ✓ | ✓ | ||
| OpenTelemetry OTLP native | ✓ | ⚠ | ⚠ | ||
| Vendor-neutral | ✓ | ✓ | ✓ | ||
| Self-updating | ✓ | ✓ | ✓ | ||
| Offline buffer | ✓ | ⚠ | ✓ | ✓ | |
| Memory-safe | ✓ | ||||
| Open source (Apache 2.0) | ✓ | ✓ | ✓ | ||
| <10 MB binary | ✓ | ✓ |
⚠ = Partial or requires additional configuration
# Status
systemctl status oxipulse
# Live logs
journalctl -fu oxipulse
# Restart
systemctl restart oxipulse
# Uninstall
systemctl disable --now oxipulse && rm /usr/local/bin/oxipulse /etc/systemd/system/oxipulse.service
# Status
Get-Service OxiPulse
# Logs (Event Viewer)
Get-EventLog -LogName Application -Source OxiPulse -Newest 50
# Restart
Restart-Service OxiPulse
# Uninstall
Stop-Service OxiPulse; sc.exe delete OxiPulse
OxiPulse is open source and contributions are welcome.
git checkout -b feat/my-featurePlease read our Code of Conduct before contributing.
# Run with a local OTLP collector (e.g. otelcol)
OXIPULSE_ENDPOINT=http://localhost:4317 OXIPULSE_TOKEN=dev cargo run
# Build for all platforms (requires WSL2 on Windows for Linux targets)
cargo build --release --target x86_64-unknown-linux-gnu
cargo build --release --target x86_64-pc-windows-msvc
OxiPulse follows Semantic Versioning. Every push to a v* tag
triggers the CI/CD pipeline, which cross-compiles binaries for all supported
platforms and publishes them to GitHub Releases with SHA256 checksums.
The agent's self-update mechanism checks for new releases every 24 hours and applies updates automatically. No manual intervention required.
If you discover a security vulnerability, please follow our Security Policy and report it privately. Do not open a public GitHub issue for security vulnerabilities.
OxiPulse is licensed under the Apache License, Version 2.0.
All dependencies are compatible with Apache 2.0 (MIT, Apache-2.0, or BSD licensed).