Send Custom Monitoring Data to Zabbix Using zabbix_sender
Zabbix is a powerful monitoring tool, and one of its most flexible features is the ability to send custom data using the zabbix_sender
command. In this guide, you’ll learn step-by-step how to configure and use this functionality.
Requirements
Before proceeding, make sure you meet the following requirements:
- A Zabbix Server is already installed and running.
Check our guide to deploy Zabbix using Docker. - At least one client (host) is registered in Zabbix.
Check our guide to autoregister client VM’s on Zabbix Server. - The client has network access to the Zabbix Server.
- You have root or sudo privileges on the client machine.
1. Add the Zabbix Repository
First, make sure the Zabbix repository is added to your system. For Rocky Linux 9, run:
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm
2. Install the zabbix-sender
Tool
Install the package using DNF:
dnf install zabbix-sender
3. Create a New Template and Item in Zabbix
Go to your Zabbix web interface and follow these steps:
- Navigate to Configuration > Templates and create a new template.
- Assign this template to the desired host (e.g.,
vm-client-1
). - Inside the template, create a new Item with the following key settings:
- Type: Zabbix Trapper
- Key: A descriptive name, e.g.,
custom_item_sender
- Type of Information: Numeric (unsigned), text, etc., depending on the data you’re sending
This tells Zabbix to passively wait for data instead of actively polling.
4. Verify the Item in Zabbix
Go to Monitoring > Latest data, filter by your host and item name, and confirm the item is listed. Initially, it will have no value.

5. Send Custom Data Using zabbix_sender
On the monitored machine, use the following command to send data to the Zabbix server:
zabbix_sender -z <ZABBIX_SERVER_IP> -s <HOST_NAME> -k <ITEM_KEY> -o <VALUE>
Example
zabbix_sender -z ZABBIX_SERVER_IP -s vm-client-1 -k custom_item_sender -o 0
#OUTPUT:
root@vm-client-1# zabbix_sender -z ZABBIX_SERVER_IP -s vm-client-1 -k custom_item_sender -o 0
Response from "ZABBIX_SERVER_IP:10051": "processed: 1; failed: 0; total: 1; seconds spent: 0.000388"
sent: 1; skipped: 0; total: 1
After a few seconds, the value will appear in the Latest Data section of the Zabbix UI.
This setup allows you to send custom metrics (disk usage, log parsing results, script outputs, etc.) from any client to your Zabbix server. Combined with triggers, it becomes a powerful way to monitor exactly what matters most to your infrastructure.