Devido à maneira como find avalia os testes lógicos, você provavelmente precisará agrupar os testes -name usando parênteses [escapados] para obter o comportamento desejado:
find /etc \( -name "*.txt" -o -name "*.log" \) -type f -mtime +7 -exec echo {} \;
Estou assumindo que você está usando echo como um espaço reservado para alguma outra ação -exec que você deseja executar, caso contrário, você poderia simplesmente usar
find /etc \( -name "*.txt" -o -name "*.log" \) -type f -mtime +7 -print