Destaques
Uma organização costumava ser apenas uma linha que comportava uma única pessoa. Agora é uma página que você gerencia: convide um colega, atribua uma função e permita que ele crie chaves cobradas pela empresa. O Proxy Finder também parou de responder apenas "tentativas esgotadas" e passou a identificar a barreira encontrada, enquanto o Browser passou a semana garantindo que apresenta a mesma consistência de dados para uma página.
Novidades
Organizações que você realmente pode gerenciar
Adicionar um colega costumava exigir o envio de um e-mail para nós, fazendo com que equipes comprassem duas assinaturas separadas.
Sua organização agora tem sua própria página no Dashboard, com três funções disponíveis. O proprietário mantém a assinatura na qual as chaves são faturadas, portanto existe exatamente um e a propriedade muda por transferência. Administradores gerenciam uso, faturamento e membros. Membros utilizam os recursos. Os convites são enviados por e-mail e funcionam mesmo para quem nunca se cadastrou.
Qualquer pessoa em uma organização pode criar chaves vinculadas a ela e transferir uma chave pessoal para a organização, evitando que um desenvolvedor use uma chave pessoal cobrada dele para trabalhos da empresa. O consumo em uma chave da organização é faturado no plano do proprietário, e cada confirmação indica de quem é o plano pagador. Qualquer membro pode renomear uma chave; regenerar, desativar e excluir continuam restritos a proprietários e administradores, pois essas ações interrompem o uso por qualquer colega no mesmo instante.
Um filtro de Proprietário abrange Overview, Detailed Metrics, Recent Activity e sua lista de chaves. As seções Usage & Limits e Billing permanecem pessoais, já que um membro não precisa acessar a cota do proprietário.
Proxy Finder deixa de adivinhar
A mensagem "Download maxTry limit reached" era exibida da mesma forma se todas as saídas estivessem bloqueadas, se todas estivessem inoperantes ou se tivéssemos obtido a página real e sua própria regra a tivesse descartado. Esses três cenários exigem soluções opostas.
Uma tarefa com falha agora inclui attemptReport: quantas saídas nunca responderam, quantas foram recusadas por defesas identificadas e quais fornecedores fizeram isso, quantas o seu validate.status rejeitou e quantas retornaram HTTP 200 sem qualquer defesa aparente, falhando apenas no seu validate.data. Uma frase de resumo simples acompanha esses dados.
Essa última contagem é a mais importante. Uma regra de conteúdo sem correspondência parece idêntica a um bloqueio sob qualquer métrica anterior, e nenhuma nova tentativa resolverá o problema. (Mais detalhes sobre como as regras de validação definem o sucesso.)
A outra parte envolve o perfil. O Proxy Finder alternava as saídas, mas nunca a assinatura do cliente, fazendo com que um site que recusasse determinado perfil de navegador o recusasse em todas as saídas do pool. Agora, uma recusa alterna o perfil durante uma nova tentativa já programada, sem alterar as requisições e créditos por tarefa. Fixe o profile manualmente e nada muda. Vale notar que, nos alvos mais complexos, o IP de saída utilizado ainda tem mais peso do que o perfil enviado.
Browser para de se contradizer
Pedir um User-Agent ao Browser costumava ser pior do que não pedir. Três camadas tinham, cada uma, sua própria ideia de quem era a request, de modo que uma única request podia declarar Windows, um Mac e uma versão que a frota nem estava executando, tudo ao mesmo tempo. Agora é um valor único, definido uma só vez, propagado para todo lado: a inicialização, a página, os workers que a página inicia.
Os client hints são derivados dessa string, portanto sec-ch-ua, a plataforma e navigator.platform concordam com ela. A response retorna a string exata que enviamos, o que importa porque os cookies de clearance ficam vinculados à saída e ao User-Agent juntos. A verificação do renderer agora também responde da mesma forma no documento e em um worker, mais um dos sinais fracos que se acumulam.
Mais três melhorias chegaram com isso:
- O relógio segue a saída. O Browser é executado no fuso horário do país onde sua saída está localizada, para que uma página renderizando horários locais exiba o que um visitante de lá veria. Quando o país não é conhecido, o relógio não é alterado.
- O WebRTC permanece no mesmo caminho de todo o resto. Uma configuração de proxy cobre o que um navegador envia via TCP. O WebRTC não está nesse caminho, portanto uma página que solicite candidatos ICE a ele recebe uma resposta separada. O Browser desativa isso sempre que uma request carrega uma saída.
- URLs com âncora custam o que deveriam. Uma URL terminando em
#reviewscostumava estourar o tempo limite a cada execução. Ela voltou à velocidade normal.
Rotas mais baratas e um Dashboard com contagem precisa
A Imperva injeta seu script em páginas saudáveis, não apenas em páginas de bloqueio, e o Auto não conseguia diferenciar as duas, fazendo com que páginas normais escalassem para um navegador sem necessidade. Em um site de aluguel de carros, isso custava 75 créditos e 27,5 segundos ao longo de seis tentativas; agora é uma única tentativa, 10 créditos e cerca de seis segundos e meio. Alguns sites fornecem uma sessão dentro da recusa com que respondem a uma request sem sessão, e todos os quatro motores agora a reenviam imediatamente antes de escalar.
O card de créditos da Visão Geral exibia tudo o que foi consumido e rotulava como faturado. No modelo de pagamento por sucesso esses valores diferem, e a diferença representa dinheiro real, portanto ambos estão no card: o faturado como o número principal, o consumido logo abaixo, por produto e no total. O card de Requests divide os dados da mesma forma. Período e nível de detalhe também são controles separados agora, de 30 minutos a um ano mais um intervalo personalizado, aposentando o botão que indicava "1D" e abria trinta dias.
No Playground, o botão de carregar agora oferece o perfil da última response, para que uma request enviada sob um perfil que você não digitou reproduza a versão que funcionou. Todos os parâmetros estão na referência da API.
Bastidores
O Proxy Finder mantém mais histórico por host: 32 saídas em vez de uma dúzia. Em um teste A/B em produção, o desempenho foi equivalente em alvos fáceis e melhor nos difíceis, onde o tempo mediano até a página caiu de 5,5s para 3,8s, enquanto a latência de toda a frota não se alterou. Um alvo seguiu o caminho oposto e ainda não sabemos o motivo, por isso ele terá sua própria medição.
Uma tarefa que vai falhar vai falhar de qualquer jeito. A diferença é se você fecha o chamado em um minuto ou passa a tarde medindo a coisa errada.