ZFS makes this completely trivial except for the "beeps and lights a led" part
smartmontools makes this trivial and can email you which might be better than beeping and lights if you’re not always near your server.
I use that plus smartctl_exporter so I can do metrics and alerting off that.
To be fair, the "beeps and lights a led" part is very important in case of a dead disk in an array. The only time, I disrupted a service in production for longer than a few hours was when I didn't get the email of a degraded raid 1 array and the second disk died a few weeks later.