I've been using rsync almost since I started using weewx.
It occurred to me that the rstats generated by rsyncupload are a great way to track my ISP's performance; both short term and over time. I thought at first about just writing a script to parse the log and extract then data; but then wondered what it would take to use weewx itself.
I used
claude.ai to help me understand the code, and what it would take; and looked at #951 for some ideas om how to patch rsync, and eventually came up with the attached changes to rsyncupload.py and reportengine.py to add a "record_stats" config option and then a service to actually put the three metrics into the database.
It's pretty lightweight, and hasn't broken anything in a week for running in my system; I use mqtt to send the data out of weewx and into Zabbix for alerts if the speed goes below a threshold or gets stale.
I'd appreciate thoughts on this. If it's thought to be a worthwhile addition, I'll submit a PR.
Clay Jackson