The biggest thing that worries me about all of this, is actually not so much the metrics themselves, but what we intend to do with them. We've been trying to do alerts like this in OpenShift, with not a whole lot of success so far I would say. The fact that there have been 1 or more requests to an API during the lifetime of the apiserver does not suggest it's actively being used, or many things are out of control for the administrator. What would an administrator do about that if they get an alert for it? Interactions via kubectl are probably the easiest, but what about controllers/operators? A user can't just change that, it will need to be fixed in the code most likely. The combination of the above tended to have the alerts just be silenced and/or ignored, as it's not possible to track individual clients with this (nor should we with metrics, as you mentioned this is really a case for the audit log).
Just looking at the metrics, I think I like the balance of 2 the most as well (not extending the existing request metrics, and not adding a whole lot of new series), but I'm still unsure whether it will actually have the result we desire. At the very least we should document how to go from the metric to the audit log entry (simple grepping would be sufficient I think).