After updating some code that was using libudev to the more modern API replacement sd-device, part of systemd; I wrote a simple example code and a post; just in case you are interested on this.
https://dev.to/carvilsi/linux-monitor-usb-devices-libudev-replacement-with-sd-device-3n4d