Skip to content

Tratar o erro abaixo, retentar a conexão #3

@robertatakenaka

Description

@robertatakenaka

Usuários coletam dados em https://analytics.scielo.org/w/reports.
KBART é um formato de arquivo TXT com metadados de artigos que informa a URL do texto completo para OpenURLs.
Enquando o XML informa os metadados, o KBART vincula os metadados ao link do texto completo.

tabs_ven.zip

O procedimento que gera este .zip é:

# Puppet Name: Log Processing Tabs
PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/gandalf/bin
0 3 10 1-12 * /scripts/nefertiti/processing/tabs/run.sh > /tmp/processing_tabs.log 2>&1 && mail -s "Log Processing Tabs" infra@scielo.org < /tmp/processing_tabs.log

Quando executou a última vez levantou esta exceção. Segundo @fabiobatalha , houve falha de conexão e/ou disponibilidade.

Dumping tabs data for ven
Traceback (most recent call last):
  File "/var/www/.virtualenvs/processing/bin/processing_publication_journals", line 9, in <module>
    load_entry_point('processing==1.32.0', 'console_scripts', 'processing_publication_journals')()
  File "/var/www/.virtualenvs/processing/src/processing/publication/journals.py", line 414, in main
    dumper.run()
  File "/var/www/.virtualenvs/processing/src/processing/publication/journals.py", line 209, in run
    for item in self.items():
  File "/var/www/.virtualenvs/processing/src/processing/publication/journals.py", line 221, in items
    yield self.fmt_csv(data)
  File "/var/www/.virtualenvs/processing/src/processing/publication/journals.py", line 273, in fmt_csv
    years=0
  File "/var/www/.virtualenvs/processing/src/processing/publication/journals.py", line 143, in _number_of_issues_by_year
    issn, collection, years=years, type=type)
  File "/var/www/.virtualenvs/processing/src/processing/thrift/clients.py", line 571, in number_of_issues_by_year
    'article', json.dumps(body), query_parameters
  File "/var/www/.virtualenvs/processing/lib/python2.7/site-packages/publicationstats/client.py", line 88, in search
    raise ServerError('you may trying to run a bad DSL Query')
publicationstats.client.ServerError: you may trying to run a bad DSL Query
Traceback (most recent call last):
  File "/var/www/.virtualenvs/processing/bin/processing_accesses_documents_by_journals", line 9, in <module>
    load_entry_point('processing==1.32.0', 'console_scripts', 'processing_accesses_documents_by_journals')()
  File "/var/www/.virtualenvs/processing/src/processing/accesses/documents_by_journals.py", line 177, in main
    dumper.run()
  File "/var/www/.virtualenvs/processing/src/processing/accesses/documents_by_journals.py", line 82, in run
    for item in self.items():
  File "/var/www/.virtualenvs/processing/src/processing/accesses/documents_by_journals.py", line 93, in items
    for item in self.fmt_csv(data):
  File "/var/www/.virtualenvs/processing/src/processing/accesses/documents_by_journals.py", line 120, in fmt_csv
    acessos = self._accessstats.access_lifetime(data.scielo_issn, self.collection)
  File "/var/www/.virtualenvs/processing/src/processing/thrift/clients.py", line 133, in access_lifetime
    query_result = self.search(json.dumps(body), query_parameters)
  File "/var/www/.virtualenvs/processing/lib/python2.7/site-packages/accessstats/client.py", line 88, in search
    raise ServerError('you may trying to run a bad DSL Query')
accessstats.client.ServerError: you may trying to run a bad DSL Query
Traceback (most recent call last):
  File "/var/www/.virtualenvs/processing/bin/processing_export_kbart", line 9, in <module>
    load_entry_point('processing==1.32.0', 'console_scripts', 'processing_export_kbart')()
  File "/var/www/.virtualenvs/processing/src/processing/export/kbart.py", line 228, in main
    dumper.run()
  File "/var/www/.virtualenvs/processing/src/processing/export/kbart.py", line 122, in run
    for item in self.items():
  File "/var/www/.virtualenvs/processing/src/processing/export/kbart.py", line 133, in items
    yield self.fmt_csv(data)
  File "/var/www/.virtualenvs/processing/src/processing/export/kbart.py", line 138, in fmt_csv
    first_document = self._first_included_document_by_journal(data.scielo_issn, data.collection_acronym)
  File "/var/www/.virtualenvs/processing/src/processing/export/kbart.py", line 88, in _first_included_document_by_journal
    issn, collection)
  File "/var/www/.virtualenvs/processing/src/processing/thrift/clients.py", line 625, in first_included_document_by_journal
    query_result = self.search('article', json.dumps(body), query_parameters)
  File "/var/www/.virtualenvs/processing/lib/python2.7/site-packages/publicationstats/client.py", line 88, in search
    raise ServerError('you may trying to run a bad DSL Query')
    publicationstats.client.ServerError: you may trying to run a bad DSL Query
updating: accesses_by_journals.csv (deflated 57%)
updating: documents_altmetrics.csv (deflated 95%)
updating: documents_affiliations.csv (deflated 95%)
updating: documents_authors.csv (deflated 93%)
updating: documents_counts.csv (deflated 95%)
updating: documents_languages.csv (deflated 97%)
updating: documents_licenses.csv (deflated 97%)
updating: documents_dates.csv (deflated 95%)
updating: journals.csv (deflated 77%)
updating: journals_status_changes.csv (deflated 86%)
updating: journals_kbart.csv (deflated 64%)

Consultando Fabio, perguntei se é um processamento demorado (sim) e se minimizaria se fizéssemos uma melhoria de retentar a tarefa por algumas vezes até estar bem sucedida a fim de não depender de manualmente executar novamente já que é uma rotina que está em um cron em um servidor cujo acesso é restrito. Fabio recomendou o código abaixo para "retentar" a tarefa.

Referências

https://github.com/scieloorg/articlemetaapi/blob/master/articlemeta/client.py#L601

Como publicationstatsapi é um dependência de processing, tem que ser publicado uma distribuição no PyPi e atualizar:
https://github.com/scieloorg/processing/blob/master/requirements.txt
e só então implantar no servidor.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions