"Some macros have been running for a long time"

Off the top of my head I can’t think of any way except checking the menu bar icon under the cancel macro item. That lists all currently running macros (and allows you to cancel them individually or all together).

For instance, see this topic where it is definitively stated that not even GUI AppleScripting can reliably retrieve a list of currently executing macros.