Próbuję wysłać mały ciąg do statystyki przez nc wewnątrz bloku odczytu:
while read line; do
printf "folder.counter:value|1c" | nc -q 0 -u $host $port
done
Niestety, gdy jest w trybie UDP, nc wydaje się chcieć czekać w nieskończoność, mimo że to określiłem -q 0
, co według strony podręcznika spowoduje, że program wyjdzie natychmiast po EOF.
Próbowałem przekazać -w 1
, ale jeśli dane, które wysyłam, przychodzą z więcej niż jedną linią na sekundę, bufory danych się zwiększają i tracę statystyki w czasie rzeczywistym (nie wspominając o ryzyku przepełnienia bufora).
Czy można zrobić to, co próbuję zrobić z netcat, czy też muszę napisać coś w języku, który ma bibliotekę statystyk?