Shields.io no puede recuperar la API de estadísticas de Discourse

Hola a todos,

Hemos tenido un escudo de Discourse en nuestro repositorio durante un tiempo, y recientemente dejó de funcionar.

Si vas a 404: badge not found y seleccionas cualquier escudo de Discourse, puedes ingresar la dirección de tu dominio de Discourse y te mostrará el escudo con las estadísticas correctas. Puedes probar esto con meta.discourse.org.

Sin embargo, cuando ingresamos la dirección de nuestro host de Discourse (https://discuss.grakn.ai), para cualquier estadística y tanto para http como https, siempre devuelve “invalid”.

Discussion Forum

Cuando un host no se encuentra, Shields.io devolvería “inaccessible”. Por lo tanto, asumimos que “invalid” significa que es accesible pero hay problemas de derechos de acceso o respuestas inválidas.

¿Es posible que una actualización reciente haya roto algo en la API de estadísticas de Discourse que utiliza Shields.io?

¡Muchas gracias!

En mi sitio funciona correctamente. Quizás no estás configurando el protocolo correctamente, o la instalación de Grakn en Discourse tiene alguna modificación que rompe ese endpoint.

imagen

Quizás quieras consultar el problema con Shields.io. Funciona con todos los demás sitios que probé, así que este no es un error nuestro.

@marianord esa es exactamente mi pregunta: ¿dónde están los “protocolos” que mencionas? ¿Cómo se pueden configurar? No he cambiado ninguna configuración.

@gerhard dado que shields.io funciona para otros sitios de Discourse, no parece probable que sea un problema de su parte. A menos que no estén leyendo correctamente la salida de nuestras estadísticas del sitio, pero ¿cómo podemos averiguar esto? ¿Cuál es el punto de conexión de Discourse que se usa para consultar las estadísticas? ¿Quizás deberíamos empezar por ahí?

Estoy mencionando http frente a https.

Esto ocurrió porque nuestra instalación de Discourse bloqueó el agente de usuario de Shields.io (Shields.io). Esta configuración se llama agentes de usuario de rastreadores en la lista blanca y se puede editar en
<discourse_server>/admin/site_settings/category/all_results?filter=crawler

¡Interesante! Gracias @max_grakn. Agregamos recientemente a Googlebot a la lista blanca; creo que eso podría ser la causa.

@codinghorror, ¿se supone que debemos usar la lista negra y la lista blanca al mismo tiempo? Es decir, si agregas cosas a la lista blanca, ¿significa que todo lo demás está en la lista negra (lo que haría redundante la lista negra)?

No, la lista blanca de rastreadores es muy peligrosa y solo debe usarse con precaución, según el texto de ayuda.

Agentes de usuario de los rastreadores web que deben tener permitido acceder al sitio. ¡ADVERTENCIA! AL CONFIGURAR ESTO, SE DENEGARÁ EL ACCESO A TODOS LOS RASTREADORES QUE NO ESTÉN INCLUIDOS EN ESTA LISTA!

Hola, tengo el mismo problema cuando recibo datos inválidos en una prueba… ¿tienes alguna idea?

Ahora está bien, es necesario activar las estadísticas anónimas en:

Admin → configuración → otro → compartir estadísticas anonimizadas = Habilitado

y ahora funciona correctamente para shields.io

Tengo el mismo problema, pero las estadísticas anónimas ya están habilitadas
:cry:

[![Racket Discourse](upload://6fa5jbSn04vRLXdubAYmFJt5emf.svg)]

[Racket Discourse]

Relacionado con:

Es porque algunos campos han sido renombrados en su forma plural.

topic_counttopics_count
post_countposts_count
user_countusers_count
like_countlikes_count

Alguien necesitará modificar el código aquí para que recurra a la forma plural:

Esto sigue roto. ¿Funciona para alguien más?

Racket Discourse

![Racket Discourse](upload://7asTK98zfWLXRebm11uEN3KPM5N.svg)

Se abrió una PR hace unos días:

Pero, naturalmente, este cambio supone una carga para shields.io para admitir ambas versiones (a perpetuidad, supongo) ya que no hay garantía de que cualquier instancia de Discourse se haya actualizado o no, por lo que no es tan simple como cambiar a plurales.