Client for UDP-Agent https://github.com/easybill/serverdensity-udp-agent
This project is build on each release for Linux & Mac x86, aarch64. You can download these pre-build binaries from the releases tab., (*1)
For other platforms you need to compile this lib yourself:, (*2)
cargo b --release --bin=openmetrics_udpserver
target/release/openmetrics_udpserver
The UDP-Server will collect sent metrics and make them available through a http endpoint using the openmetrics-text encoding. Sent values for the metric types Min, Average & Peak are just single values (if a value is received twice before collection, the old value gets overridden). The Sum metric type will sum up all received values until a collection happens - then the counter is reset to 0., (*3)
From performance perspective you could send thousands of messages per second., (*4)
We provide a small php client, (*5)
composer require easybill/serverdensity_udp_metric_client
<?php $client = new ServerdensityUDPAgent(); $client->sendSum('[METRIC_GROUP].[METRIC]', 1);
The data format that must be used to send data to the server must be as follows:, (*6)
All numbers must be encoded using big endian byte order., (*7)
Type | ID |
---|---|
Sum | 42 |
Average | 43 |
Peak | 44 |
Min | 45 |
# replace the download link for the required platform wget https://github.com/easybill/openmetrics-udp-agent/releases/latest/download/openmetrics_udpserver_linux_x86_64 chmod +x sopenmetrics_udpserver mv openmetrics_udpserver /usr/local/bin/
now you can test if the server starts:, (*8)
./openmetrics_udpserver
open /etc/supervisor/conf.d/openmetrics_udpserver.conf
and add:, (*9)
[program:openmetrics_udpserver] command=openmetrics_udpserver user=sd-agent process_name=%(program_name)s numprocs=1 directory=/tmp autostart=true autorestart=true startsecs=0 startretries=10 stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s_error.log stopsignal=QUIT
Check the update of the new process, (*10)
supervisorctl status openmetrics_udpserver
, (*11)
wget https://github.com/easybill/openmetrics-udp-agent/releases/latest/download/openmetrics_udpserver_linux_x86_64 chmod +x openmetrics_udpserver supervisorctl stop openmetrics_udpserver rm /usr/local/bin/openmetrics_udpserver mv openmetrics_udpserver /usr/local/bin/ supervisorctl start openmetrics_udpserver supervisorctl status openmetrics_udpserver