Eu usaria o log de consultas lentas. Ele captura todas as consultas, não apenas aquelas que são lentas, se você definir long_query_time = 0.
Ele também captura TODAS as consultas, o que não é verdade para as técnicas de detecção de TCP mencionadas aqui; aqueles que não capturam consultas executadas por meio de um soquete. Idem para assistir SHOW PROCESSLIST; você vai sentir falta de consultas rápidas.
Se você deseja capturar consultas por meio da lista de processos ou por meio do tráfego TCP, sugiro usar o resumo de consulta de pt do Percona Toolkit. Ele pode pesquisar a lista de processos para você (e fazer sentido para os resultados, o que é muito difícil de fazer se você estiver capturando um monte de amostras dela), e pode interpretar o protocolo TCP do MySQL, assim você pode pegar alguns TCP tráfego e analisá-lo. É claro que também é o melhor agregador / profiler / reporter de consulta já escrito, mas você não disse o que deseja fazer com as consultas depois de capturá-las.