como monitorar chamadas cURL

2

Eu tenho um CMS baseado em PHP que faz solicitações ao provedor de serviços (um ECM baseado em java (gerenciamento de conteúdo corporativo) atualmente localizado no mesmo servidor que o meu PHP) e insere a resposta para o mysql.

O que inicialmente começa em uma boa taxa degrada lentamente para 1 / 10th da busca de dados original e velocidade de inserção que eu verifico usando a contagem dos registros. Estou tendo problemas para descobrir o motivo da degradação e preciso descobrir se a solicitação cURL está atrasada no final do ECM, onde a resposta é gerada (como XML) ou quando a resposta é retornada de volta ao meu fim do PHP. Não há nenhuma mudança na carga do servidor com o banco de dados (mysql) e tenho minhas próprias razões para acreditar que não poderia haver um problema de otimização de banco de dados.

O que eu realmente gostaria de fazer é saber se há alguma maneira de rastrear quais solicitações estão sendo feitas, quando elas alcançam o ECM quando a resposta é dada e quando ela alcança o PHP novamente (uma soma total da atividade de cada chamada cURL ). Eu verifiquei meu log de acesso do Apache se eles estão logados como GET e POST solicitações, mas não consegui encontrá-los. A única opção no nível de código é definir um verbose, embora eu não tenha certeza do quão útil seria o resultado. Por isso, deseja conhecer as opções possíveis para o mesmo.

    
por optimusprime619 21.06.2012 / 20:56

1 resposta

2

Você pode pegar um pacote de captura do processo (com tcpdump ou wireshark), depois analisá-lo para ver quanto tempo demora cada transação http. Tenha em mente que você também pode receber descarte de pacotes para a interface 127.0.0.1, já que pode ser necessário se as solicitações estiverem sendo feitas para o host local.

Para ver as solicitações de curvatura, você pode fornecer um agente de usuário específico para a solicitação de curvatura e, mais tarde, procurar solicitações desse agente do usuário nos registros do apache.

    
por 22.06.2012 / 12:18

Tags