Onebox e Amazon não estão funcionando (para mim)

Estou continuamente recebendo um erro “Desculpe, não foi possível gerar uma prévia desta página da web porque a seguinte tag oEmbed / OpenGraph não pôde ser encontrada: description.”

Coisas que validei:

  • Todos os links testados têm uma tag meta name=description.
  • Os links criam um onebox válido no meta.discourse

Portanto, o problema não é um problema da página da Amazon.

Passos para remediar:

  • Sistema está atualizado (3.4.0.beta4-dev)
  • Reconstruí o aplicativo com todos os plugins removidos. (Inicialmente instalado: discourse-adplugin, discourse-affiliate, discourse-subscriptions, discourse-yearly-review, discourse-whos-online, discourse-data-explorer e DiscoTOC)
  • Reconstruí o aplicativo com todos os componentes removidos. (Inicialmente instalado: header submenus, easy responsive footer, discotoc e discourse ebay affiliate)
  • Reiniciei o servidor
  • Navegadores diferentes

O Onebox não puxará as informações da página, embora eu receba um Onebox bem-sucedido criado em cerca de 1 em cada 20 tentativas. Isso tem sido muito frustrante.

Então, Perguntas:

  1. Onde encontraria informações de log e erro para o onebox?
  2. O Onebox parece ter um mecanismo de cache. Como você limpa o cache?

Quaisquer sugestões para rastrear o quê e como seriam muito úteis.

obrigado

1 curtida

Removi todas as personalizações de software dos plugins e componentes listados acima. Reconstruí o servidor e reiniciei o servidor. (Eu sei que não é Windows, mas estou tentando de tudo.)

Agora consigo fazer 9 de 10 Amazon one boxes funcionarem.

Começaremos a adicionar um componente e um plugin por vez para descobrir o que está causando os problemas.

Qualquer assistência detalhada de diagnóstico além do abaixo seria útil:

1 curtida

Do console do Rails:

[1] pry(main)> Oneboxer.invalidate 'https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X'
=> 0

[2] pry(main)> Oneboxer.onebox 'https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X'
=> "<aside class=\"onebox amazon\" data-onebox-src=\"https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X\">\n  <header class=\"source\">\n\n      <a href=\"https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X\" target=\"_blank\" rel=\"nofollow ugc noopener\">amazon.ca</a>\n  </header>\n\n  <article class=\"onebox-body\">\n    <img src=\"https://m.media-amazon.com/images/I/919CVPkFxjL._SL1500_.jpg\" class=\"thumbnail\">\n\n<h3><a href=\"https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X\" target=\"_blank\" rel=\"nofollow ugc noopener\">Thud!: (Discworld Novel 34) : Pratchett, Terry: Amazon.ca: Books</a></h3>\n\n\n\n<p>Thud!: (Discworld Novel 34) : Pratchett, Terry: Amazon.ca: Books</p>\n\n<p>\n  \n  \n  \n  \n  <strong></strong>\n</p>\n\n  </article>\n\n  <div class=\"onebox-metadata\">\n    \n    \n  </div>\n\n  <div style=\"clear: both\"></div>\n</aside>\n"

Você pode examinar o que está disponível na classe Oneboxer.

2 curtidas

Secundariamente, também existem os InlineOneboxers, por exemplo https://www.amazon.ca/Thud-Terry-Pratchett/dp/055216769X

Da mesma forma, você pode usar

InlineOneboxer.invalidate(url)
InlineOneboxer.lookup(url)
2 curtidas

Após remover todos os componentes e plugins e reiniciar, os links da Amazon apareceram como oneboxes corretos.

Em seguida, instalei o discourse-adplugin e imediatamente voltei a ter 9 falhas em 10 tentativas. Quando o desativei, consegui que alguns funcionassem e, em seguida, ele voltou ao modo de falha de não obter a descrição.

Removi o discourse-adplugin do app.yml e o reconstruí. Em seguida, reiniciei o servidor. Os links da Amazon voltaram a funcionar com onebox.

Deve haver algum conflito com a combinação de plugins e componentes que estou usando. Que opções existem para depurar isso?

1 curtida

Após 12 horas de solução de problemas e testes combinados de plugins e componentes e inúmeras reconstruções, está funcionando neste momento. Veremos como ele responderá nas próximas semanas.

A única coisa que mudou fundamentalmente foi a ordem dos plugins em app.yml. O discourse-adplugin é o plugin mais alto após o docker_manager.

          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-adplugin
          - git clone https://github.com/discourse/discourse-affiliate
          - git clone https://github.com/discourse/discourse-subscriptions
          - git clone https://github.com/discourse/discourse-yearly-review
          - git clone https://github.com/discourse/discourse-whos-online
          - git clone https://github.com/discourse/discourse-data-explorer

Eu não pensaria que a sequência dos plugins importaria, mas importou. Quando o discourse-adplugin estava nos últimos lugares, os links da Amazon não funcionavam com o Onebox.

3 curtidas

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.