Giter VIP home page Giter VIP logo

Comments (33)

matheusdalzot avatar matheusdalzot commented on July 3, 2024 1

I solved after add this code in app.yaml there

basic_scaling:
max_instances: 20
idle_timeout: 5m

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024 1

@skepticaldev sim haha sei como funciona, eu fiz um processo uma vez também o que ocasionou um custo elevado no firestore kkkk fiz um serviço que o app lia para buscar informações, só que eu errei, achei que o firestore retornava uma coleção como 1 solicitação, só que ao consultar a coleção ele executa uma solicitação para cada documento ai você já pode imaginar o estrago né kkkkk durante uma semana todos os dias tiveram 800 mil solicitações de leitura

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024 1

@skepticaldev sim haha sei como funciona, eu fiz um processo uma vez também o que ocasionou um custo elevado no firestore kkkk fiz um serviço que o app lia para buscar informações, só que eu errei, achei que o firestore retornava uma coleção como 1 solicitação, só que ao consultar a coleção ele executa uma solicitação para cada documento ai você já pode imaginar o estrago né kkkkk durante uma semana todos os dias tiveram 800 mil solicitações de leitura

hahaha complicado o firestore e excelente escala tanto que tu chega a perder de vista hahaha. Eu normalmente uso o emulator pra rodar os testes ontem mesmo rodei um que se eu tivesse subido pra produção acho que eu ia ter que vender um rim. Estava utilizando o trigger onwrite, até fiz a verificação para não atualizar caso não tivesse alteração do anterior para o seguinte. Mas quando eu fiz uma inserção em massa no db parece que ficaram algumas operações se sobrescrevendo e ficou um loop sem fim.

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024 1

Opa consegue resolver utilizando o req.query e obtendo o valor assim: let param= (req.query as any).param;

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024 1

@Menighin Quando eu usei pela primeira vez eu tinha dado fork e atualizei a versão do puppeteer não funcionou no cloud functions. Foi só dar um downgrade na versão do puppeteer que funcionou. A versão que eu estou usando e a 2.1.1. Ainda não vi se teve alguma alteração para versões mais novas. Mas o problema se não me engano é a compatibilidade do ambiente em que o cloud functions roda e as novas versões do chromium.

from cei-crawler.

Menighin avatar Menighin commented on July 3, 2024 1

@matheuspcunha lancei a versão 1.2.0. Fiz rollback do puppeteer e parei de fazer o crawling em aba anonima.
Confere se resolveu pfv

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024 1

@Menighin Funcionou! 🎉

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

@matheuspcunha se não me engano, esse erro acontece devido a quantidade de memória alocada pro Browser. Tenta passar esse parâmetro no options: --disable-dev-shm-usage

const ceiCrawlerOptions = {
puppeteerLaunch: {
args: ['--disable-dev-shm-usage']
},
};

Ou se preferir coloque a quantidade de memória que você desejar: '--shm-size=3gb'

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

Oi @skepticaldev, estou com esse parâmetro já, no caso está assim:
Captura de Tela 2020-08-05 às 21 46 14

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Hi, i'm get the same problem after deploy API to App Engine of Google Cloud.
How can I fix it?

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

@matheusdalzot I was facing some issues using cloud functions, the problem was puppeteer version. In the last version released the puppeteer version was updated. The highest version working for me is 2.1.1. Try downgrade the version and see if it works.

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

@matheuspcunha Por acaso voce também esta rodando em algum serviço do google? Eu tive alguns problemas também. A solução foi reduzir a versão.

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

@skepticaldev, a minha versão do App Engine está funcionando normalmente. Está que tive o problema é na máquina local mesmo.

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Vocês falam português hehe eu resolvi depois de adicionar o código acima no app.yaml, estou utilizando o serviço do App Engine do GCloud.
Tentei outras soluções como subir ou descer a versão do purppeteer mas sem sucesso, e agora fui verificar na documentação sobre Timeout e cheguei nessa solução.
Espero que funcione para vocês

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

@matheusdalzot vc tbm está utilizando a versão 1.1.0 do cei-crawler?
Estranho, no meu caso eu fui testar localmente e já deu este erro =(

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

Vocês falam português hehe eu resolvi depois de adicionar o código acima no app.yaml, estou utilizando o serviço do App Engine do GCloud.
Tentei outras soluções como subir ou descer a versão do purppeteer mas sem sucesso, e agora fui verificar na documentação sobre Timeout e cheguei nessa solução.
Espero que funcione para vocês

Hahaha. Sim falamos. Show, no meu caso no cloud functions só reduzindo a versão mesmo. Fiz diversas pesquisas e todas elas era reduzindo a versão. Ainda não usei o App Engine mas quero migrar depois o projeto pra lá, como já estou quase finalizando no functions vou terminar primeiro.

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

@matheusdalzot vc tbm está utilizando a versão 1.1.0 do cei-crawler?
Estranho, no meu caso eu fui testar localmente e já deu este erro =(

Como eu tive esses problemas no functions eu dei um fork e aproveitei para fazer algumas alterações para o meu projeto então não estou utilizando especificamente essa versão.

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

@matheusdalzot vc tbm está utilizando a versão 1.1.0 do cei-crawler?
Estranho, no meu caso eu fui testar localmente e já deu este erro =(

No meu aplicativo está cei-crawler version 0.2.3 no arquivo package-lock.json

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

Entendi @skepticaldev e @matheusdalzot. Minha versão do App Engine está algumas versões atrás tbm e funcionando, vou manter assim por enquanto, até conseguir testar localmente e resolver o problema com está nova versão

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Vocês falam português hehe eu resolvi depois de adicionar o código acima no app.yaml, estou utilizando o serviço do App Engine do GCloud.
Tentei outras soluções como subir ou descer a versão do purppeteer mas sem sucesso, e agora fui verificar na documentação sobre Timeout e cheguei nessa solução.
Espero que funcione para vocês

Hahaha. Sim falamos. Show, no meu caso no cloud functions só reduzindo a versão mesmo. Fiz diversas pesquisas e todas elas era reduzindo a versão. Ainda não usei o App Engine mas quero migrar depois o projeto pra lá, como já estou quase finalizando no functions vou terminar primeiro.

Ahh sim hehe show de bola, tem como utilizar esse script no cloud functions? Qual seria a limitação e por que pretende migrar ele? Eu estou usando lá mes estou com medo de acabar excedendo o limite free

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

@matheusdalzot Tem sim eu uso lá. Só tive esse problema mesmo quando subi pra produção ai precisei alterar a versão do puppeteer. A questão não seria nem a limitação, o problema e que a versão nova do app que eu montei vai puxar a atualização das cotações de um cache que eu montei no firestore e atualiza de acordo com a demanda dos usuários. Só que por enquanto tem 200 usuários se tiver um aumento desse número vai aumentar e muito os acionamentos das funções ai já viu né hahaha.

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Uma dúvida sobre a requisição do token e passar ele por parâmetro, está funcionando bem para vocês? @skepticaldev e @matheuspcunha pois pra mim sempre que tento recuperar essas informações ele me devolve como 'undefined'

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

Uma dúvida sobre a requisição do token e passar ele por parâmetro, está funcionando bem para vocês? @skepticaldev e @matheuspcunha pois pra mim sempre que tento recuperar essas informações ele me devolve como 'undefined'

Você está se referindo ao token de autenticação?

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Isso estou me referindo aos parâmeros, por exemplo na solicitação da função /token deve passar o username e password certo?
Quando eu passo eles no body com JSON ele me retorna como 'undefined' no CEIController.
O mesmo acontece quando tento passar o 'token' nas funções /wallet /transactions /dividends
Para testar precisei defini-los fixos nas variaveis.

from cei-crawler.

skepticaldev avatar skepticaldev commented on July 3, 2024

Hmm entendi. Nessa nova versão usando o cloud eu ainda não fiz a parte de autenticação na que esta em produção como eu faço as requisições direto pela api do firebase eu uso o security rules para validar as chamadas autenticadas. Você chegou a dar um log assim que recebe a autenticação? e mesmo assim vem undefined?

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Exatamente, eu coloquei para imprimir o 'req.body' , 'req.params' , 'req.query' e todos vem vazios, vou tentar realizar mais alguns testes para verificar se consigo algo, mas a principio estou passando por esse problema, também vou criar um token interno para evitar processos externos de quererem utilizar o serviço sem autorização hehe

from cei-crawler.

Menighin avatar Menighin commented on July 3, 2024

@matheuspcunha esse problema está de fato relacionado ao Puppetter e não ao Crawler em si.
Eu também to tendo ele com meu projeto hahaha
Nessa issue do Puppetter tem um usuario falando que passar o argumento --shm-size=3gb resolveu pra ele. Ainda nao tive a chance de testar.

@matheusdalzot @skepticaldev , nao entendi bem, mas vcs falaram que em versoes antigas do Puppetter isso nao tava rolando?

from cei-crawler.

matheusdalzot avatar matheusdalzot commented on July 3, 2024

Opa @Menighin na versão que eu baixei da api feita pelo Bruno, está cendo usado o cei-crawler ^0.2.3
Não sei se tem algo a ver, não entendo muito sobre Node.JS ou Typescript hehe estou aprendendo com esse serviço em si hehe

Mas no meu caso a solução foi essa que eu postei acima quando utilizado no App Engine do GCloud.

from cei-crawler.

Menighin avatar Menighin commented on July 3, 2024

Hmmm entendi...
@matheuspcunha eu subi a versão do Puppetter quando mudei de 0.3.0 pra 1.0.0.
Se esse args que eu passei em cima nao resolver, será que vc consegue testar se o problema acontece na versao 0.3.0?
Se não acontecer, vou fazer rollback na versao do puppetteer

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

@Menighin, farei esse teste assim que possível e te dou um retorno... Obrigado!

from cei-crawler.

matheuspcunha avatar matheuspcunha commented on July 3, 2024

@Menighin, tudo bem?

Testei com a versão v1.0.0 do cei-crawler e está funcionando corretamente, o erro não acontece como na versão v1.1.0

from cei-crawler.

Menighin avatar Menighin commented on July 3, 2024

@matheuspcunha 1.0.0 ou 0.3.0?

Da 1.0.0 pra 1.1.0 o que mudou foi que to rodando o Puppeteer em aba anonima;
Da 0.3.0 pra 1.0.0 o que mudou foi a versao do Puppeteer 🤔

Vo parar de rodar em aba anonima entao e lançar uma versao asap, vlws

from cei-crawler.

Menighin avatar Menighin commented on July 3, 2024

GG!

from cei-crawler.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.