I was testing light shafts with volumetrics and when unable to get anything working I searched online. Although I found a workaround, this seems to be a pretty strange issue, and for any scenario other than a static camera this technique does not work at all.
At first I was using a global volume, but switched to a box to allow more light to get in initially. This didn't work, and the workaround I found is to move the volumetrics box just outside the camera. For some reason this works perfectly, and I'm guessing booleaning a tiny sphere out right at the camera would work too.
Camera is inside fog volume:

Volume mesh is edited so camera is just outside, but the rest of the volume is kept as identical as possible.

An observer should not need to be in a different participating media (or here vacuum) to see light shafts inside the media.