Rolisteam / rolisteam

Rolisteam is a virtual tabletop. It helps you to manage tabletop role playing games with remote friends/players. It provides many features to share maps, pictures, dice roller, manage background music and much more. The main git repository is available here: [https://invent.kde.org/kde/rolisteam].
http://www.rolisteam.org/
Other
189 stars 27 forks source link

Roliserver - pas de log #127

Closed EllimacN closed 4 years ago

EllimacN commented 4 years ago

Your configuration:

Rolisteam version: 1.9.2 Operating System and version:

J'ai suivi la documentation pour mettre en place un serveur roliserver : 1) Récupération des sources 2) Compilation de roliserver uniquement (pas besoin du client) A noter ici que dans la documentation les dépendances suivantes ne m'ont pas suffit sudo apt-get install qt5-qmake libqt5network5 libqt5core5a J'ai ajouté qt5-default qml libqt5qml5 en plus. Mais je me suis débrouillé.

3) Configuration du serveur

Bref tout s'est bien passé. Le serveur démarre et j'arrive à me connecter dessus. Avec des amis, nous avons réussi à nous y connectés à plusieurs. Nous avons rencontré quelques déboires en particulier pour le MJ mais ce n'est pas le sujet ici.

En voulant récupérer les logs du serveur pour essayer de voir quels étaient les déboires (cités plus haut) afin d'éventuellement soumettre une requête : pas de log. Le fichier de log a bien été créé mais il est totalement vide.

J'ai refait des essais en testant les 4 niveaux de log voir si ça changeait quelque chose, sans succès. Lorsque je démarre le serveur via le service ou à la main roliserver -c <configFile> le fichier de log se créé bien mais ne se remplit pas. Lorsque je lance manuellement, roliserver garde la main sur la console et là je vois bien les logs défiler.

Si quelqu'un a une idée sur cette situation, je suis preneur. Est-ce qu'il me manquerait une dépendance en particulier ?

obiwankennedy commented 4 years ago

Effectivement, il est pas impossible que les log déconne, Il me semble que j'ai du retoucher la fonctionnalité juste avant la sortie car elle posait problème. Pour ma part, j'ai configuré ma règle systemd pour gérer les log. Je peux du coup, voir les log du serveur grâce à: journalctl -f

Pour le problème, je me suis rendu compte d'un petit bug assez embêtant pouvant empêcher la connexion de MJ. Le mauvais code:

    if(hasNoClient())
    {
        clearData();
    }
    else if((m_currentGm != nullptr) && (m_currentGm == client))
    {
        findNewGM();
    }

le bon (suppression du else):

    if(hasNoClient())
    {
        clearData();
    }
    if((m_currentGm != nullptr) && (m_currentGm == client))
    {
        findNewGM();
    }

https://github.com/Rolisteam/rolisteam/blob/master/client/network/channel.cpp#L454

EllimacN commented 4 years ago

Merci pour la réponse rapide et complète.

Super boulot en tout cas, bravo :).