Registro de federación

De Wiki Diaspora*
Saltar a: navegación, buscar

El registro de federación es una herramienta que brinda información sobre eventos relacionados a la federación (como el envío de mensajes de estado y fotografías), para poder ver lo que sucede internamente. Entonces,si tienes una instancia de Diaspora configurada, puedes ayudarnos a hacer pruebas, y mejorar la federación.

También hay un video, si prefieres seguir instrucciones de esta manera, en vez de leer.

Preparación

(Se asume que estás ejecutando todos los comandos en el directorio raíz de Diaspora)

Para configurar el entorno de pruebas de federación, debes copiar los bloques que contienen la configuración en config/database.yml.example, y config/application.yml.example, a tus archivos de configuración reales, en config/database.yml y config/application.yml. Simplemente pega estos fragmentos al final del archivo correspondiente.

config/database.yml

integration1:
  <<: *common
  database: diaspora_integration1
integration2:
  <<: *common
  database: diaspora_integration2

config/application.yml

integration1:
  <<: *defaults
  pod_url: "http://localhost:3001/"
  serve_static_assets: true

integration2:
  <<: *defaults
  pod_url: "http://localhost:3002/"
  serve_static_assets: true

Ahora, tienes que ejecutar un comando rake, esto configurará las bases de datos y preparará las tablas (puede tomar algo de tiempo).

$ bundle exec rake db:integration:prepare

Una vez este hecho, debes eliminar el directorio public/.well-known (si existe), pues ya que estarás ejecutando dos servidores a partir del mismo código base, y este directorio contiene información en cache que normalmente contiene el nombre del servidor, que es importante para descubrir usuarios entre servidores, pero en este caso no debe estar presente.

$ rm -rI public/.well-known

Iniciar

Ahora, iniciaremos los servidores. Al ejecutar el siguiente comando deberás ver dos servidores redis, dos workers y dos servidores ejecutándose para el entorno de pruebas de federación (nuevamente, esto puede llevar un poco de tiempo, y consumir mucha memoria RAM).

$ bundle exec foreman start -f FederationProcfile

Una vez se haya iniciado todo, puedes abrir dos navegadores (ya sean dos distintos o dos ventanas del mismo navegador, con una en modo «incógnito». Esto es porque se requieren dos sesiones distintas) y abrir en estos http://localhost:3001 y http://localhost:3002, respectivamente, y registrar a un usuario nuevo en cada uno. Tendrás que recordar qué usuario está en cada servidor. Una vez hayas terminado, puedes buscar al usuario de un servidor con el usuario del otro servidor, y conectarlos añadiéndolos mútuamente a un aspecto.

Esto por sí solo debería haber inciado el registro de federación. Puedes verlo abriendo el archivo de registro:

$ tail -f log/federation_logger.log

Listo

Eso es todo. Ahora te será posible ver los eventos en el log de federación, y si algo no funciona, brindar los archivos de registro de ambos lados para seguir depurando errores,

A pesar que que nos es posible por el momento hacer registros básicos de eventos entre servidores, esto no es de ninguna manera una herramienta completa que se encargue de todo. Te invitamos a mejorar el proceso de configuración o el comportamiento, haciendo un pull request.

Y como siempre, si algo no funciona o necesitas ayuda, te esperamos en el canal IRC, o en la lista de correo.