Skip to content

Spoje-NET/zabbix-sender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zabbix Sender - Debian Package

Zabbix logo

This repository contains the Debian packaging for Zabbix Sender - a standalone command line utility for sending monitoring data to Zabbix server or proxy.

About

Zabbix sender is a command line utility that may be used to send performance data to Zabbix server for processing. The utility is usually used in long running user scripts for periodical sending of availability and performance data.

This package contains only the zabbix_sender utility extracted from the full Zabbix monitoring solution, making it lightweight and suitable for systems that only need to send data to Zabbix without running a full agent.

Package Information

  • Package Name: zabbix-sender
  • Version: 8.0.0alpha1
  • Architecture: amd64
  • Section: net
  • Priority: optional

Dependencies

  • libc6 (>= 2.34)
  • libssl3t64 (>= 3.0.0)

Features

  • Full TLS support (certificates and PSK)
  • Support for timestamps and nanosecond precision
  • Batch processing of multiple metrics
  • Real-time metric sending
  • Configuration file support

Installation

From Pre-built Package

# Download the .deb package
wget https://github.com/Spoje-NET/zabbix-sender/releases/download/v8.0.0alpha1/zabbix-sender_8.0.0alpha1_amd64.deb

# Install the package
sudo dpkg -i zabbix-sender_8.0.0alpha1_amd64.deb
sudo apt-get install -f  # Fix dependencies if needed

Building from Source

  1. Clone this repository:
git clone https://github.com/Spoje-NET/zabbix-sender.git
cd zabbix-sender
  1. Install build dependencies:
sudo apt-get update
sudo apt-get install build-essential debhelper dh-make devscripts \
    libssl-dev libpcre2-dev autotools-dev pkg-config
  1. Build the package:
dpkg-buildpackage -us -uc

The built packages will be available in the parent directory:

  • zabbix-sender_8.0.0alpha1_amd64.deb - Main package
  • zabbix-sender-dbgsym_8.0.0alpha1_amd64.deb - Debug symbols

Usage

Basic Usage

# Send a single metric
zabbix_sender -z zabbix-server -s "hostname" -k "key" -o "value"

# Send metrics from file
zabbix_sender -z zabbix-server -i /path/to/metrics.txt

# Use TLS with certificates
zabbix_sender -z zabbix-server -s "hostname" -k "key" -o "value" \
  --tls-connect cert --tls-ca-file ca.crt \
  --tls-cert-file client.crt --tls-key-file client.key

Configuration File

You can use a configuration file (similar to Zabbix agent configuration):

zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k "key" -o "value"

Input File Format

For batch sending, create a file with format:

hostname key1 value1
hostname key2 value2
hostname key3 1234567890 value3  # with timestamp

Advanced Examples

# Send metrics with timestamps
zabbix_sender -z zabbix-server -T -i metrics_with_timestamps.txt

# Send metrics with nanosecond precision
zabbix_sender -z zabbix-server -T -N -i metrics_with_ns.txt

# Real-time sending from stdin
echo "hostname cpu.usage 85.5" | zabbix_sender -z zabbix-server -r -i -

# Group metrics by hosts
zabbix_sender -z zabbix-server -g -i multiple_hosts_metrics.txt

Building Process

This package uses a custom build approach:

  1. Source Preparation: Uses official Zabbix 8.0.0alpha1 source code
  2. Minimal Configuration: Configures build system to compile only zabbix_sender and required libraries
  3. Dependency Resolution: Includes stub implementations for zbxregexp functions to avoid PCRE2 runtime dependencies
  4. Debian Packaging: Uses debhelper for standard Debian package creation

Build System Details

The build process:

  • Runs ./configure with minimal options: --disable-server --disable-proxy --disable-agent --disable-webservice --with-openssl
  • Compiles only required Zabbix libraries: zbxalgo, zbxcommon, zbxcomms, zbxcfg, zbxcrypto, etc.
  • Patches Makefile to remove zbxregexp dependency
  • Links with system OpenSSL libraries for TLS support

Technical Notes

Stub Implementation

To avoid runtime dependency on PCRE2 (which would be needed for full regex support), this package includes stub implementations of zbxregexp functions. This means:

  • JSONPath regex matching is disabled (always returns no match)
  • The binary is smaller and has fewer dependencies
  • All other functionality remains fully operational

TLS Support

Full TLS support is maintained including:

  • Certificate-based authentication
  • PSK (Pre-Shared Key) authentication
  • Custom cipher configuration
  • Certificate validation options

Files Included

/usr/bin/zabbix_sender                    - Main executable
/usr/share/doc/zabbix-sender/copyright    - Copyright information
/usr/share/doc/zabbix-sender/changelog.gz - Package changelog

Documentation

Zabbix documentation is available at zabbix.com/documentation

License

Zabbix is distributed under AGPL-3.0-only

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test the build process
  5. Submit a pull request

Support

Author

Vitex Software [email protected]


This is an unofficial package created for easier deployment of standalone Zabbix sender functionality.

About

Zabbix sender standalone package

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published