The Dead Letter Queue (DLQ) is just like any other Queue in that you can subscribe to it and consume the messages using a JMS MessageConsumer or QueueBrowser. With that you can take a message from the Queue and inspect it as you would any other message. The current ActiveMQ client will usually add a poison cause to the message store in the message property "dlqDeliveryFailureCause" which can indicate what caused the message to be discarded.
Of course if you are looking in the WebConsole you can view the messages in the DLQ that way as well and inspect the properties of the message.
Essentially the whys and hows of the analysis are up to you, the broker gives the means to retrieve the messages, how you make sense of them is up to you.