What you mention is quite correct but usually, you're not going to leave the hub on that port but for the time period you'll be doing some packet capturing. So though it is a bottleneck it's not one forever :)
There are always trade-off regardless of how you do it. For example, you get a switch that supports port mirroring, you still have to configure that port to do it and essentially if you're dedicating that port for port-mirroring you're taking a port out of production. If you're sending a copy of traffic from all other ports into that single port, it will do it but remember that could be a tremendous amount of data through one port and trying to filter out all that data can be quite daunting for the novice.
If you use a hub, you're really limited to only the traffic you're tying up, granted in this thread that is the router port but you are then sending all traffic through that port at half-duplex. There is no way to get around some of these performance hits. But, it's a solid reminder to be careful when doing this stuff and it's appreciated. :+1: