What are the advantages of a shunt resistor vs. a hall effect sensor?
I am not an expert in the field but I can try to help jotting down some quick ideas.

Hall effect sensor
pros:


galvanic insulation between the measurement circuit and the circuit to be measured
they can be placed anywhere on the current path (voltage is not a problem), thus easyness of installation and eventually servicing
they nearly do not affect the measured current so they are great if this is a concern


cons:


cost: a high current, precise sensor can cost tens of bucks
bandwidth: the sensor and the sensed wire are coupled through a transformer, and of course it has its own frequecny response. A piece of copper (aka shunt resistor) is less affected by this problem.
magnetic fields: an external fixed magnetic field can cause an offset in the measurement that must be somehow taken into account


Shunt resistor
pros:


small and cheap, I bet that with a good pcb manufacturer you can make your shunt resistor on the pcb paying only for the increased size, but keep in mind that the copper resistivity depends on temperature, moreover the pcb outer layers thickness is not precise while inner layers are somewhat better.
You can get cheap SMD shunt resistors down to 1m\$\Omega\$ from ohmite


cons:


they can dissipate quite an amount of power, and a tradeoff exists between precision and dissipated power. They can get quite hot too.
they do affect the measured circuit, namely there's a voltage drop across them and that might not be acceptable for very low voltage, high current applications. You can't measure the current consumed by an array of cores that are powered with 1.8V with a shunt that drops some 100mV


That is just what comes to me from the top of my mind, I'd be very happy to integrate/correct this list reflecting any reasonable comment from below.