BF4 has an outbound damage log. A video by Chris at Battle(non)sense is interesting because it shows multiple outbound bullets getting bundled into a single network packet.
Even without the damage log you can tell when the server is rejecting your hits. It's called 'dusting', and you'll see the enemy flinch and blood splatter but you won't see any hit markers. The hit marker is the server accepting and acknowledging your hit. So if you see blood splatter but no hit marker, the server rejected your hit.
Watching all these Battle(non)sense videos reminds me how futile the feedback process is. Just look at how many feedback videos Chris made! He spoon-fed DICE easy to understand feedback in the form of YouTube videos but nothing really changed. DICE keeps repeating the same mistakes and reintroducing the same bugs over and over again.
Chris no longer makes any feedback videos and I don't blame him. Can you imagine creating a YouTube channel around providing feedback for your favorite game and being constantly ignored. Chris really went the extra mile with his feedback, going into great technical details and recording video proof to support his findings. But in the end it was all for naught and he ended up shutting down his YouTube channel. Which is the logical thing to do after it becomes clear you're being ignored and just wasting your time spoon-feeding DICE feedback.