What is the impact of SHOW STATUS, and how often is acceptable to call it?
SHOW STATUS has minor impact on the system.

For monitoring, you really need SHOW GLOBAL STATUS so you can get the system-wide counters, not the SESSION counters for the monitor's connection.

It is probably unreasonable to do SHOW GLOBAL STATUS more than once a second.  And, at that frequency, it has negligible overhead.  Keep in mind that you then have to do something with the hundreds of values.  If you turn around and INSERT it into the same server, that action may be more invasive.

Or is this what you are doing to see what is happening with a query?

FLUSH STATUS;
SELECT ...;
SHOW SESSION STATUS LIKE 'Handler%';


Again, do it as needed; don't worry.