Bonjour,
Sur une ferme avec x applis publiées, celles-ci sont configurées pour ne permettre le lancement que d’une seule instance par utilisateur.
La temporisation de déconnexion est activée sur chaque serveur à 10 mn.
La persistance ICA est activée sur la ferme à 60s.
Mon problème :
Lorsque qu’un utilisateur quitte son application publiée, la plupart du temps, on voit via la console que la session reste à l’état “active” durant 5-10 minutes, et l’utilisateur doit attendre ce temps là pour pouvoir se reconnecter car il reçoit un beau message du genre :
Erreur de connexion : Vous disposez déjà d’une instance pour cette application et n’êtes pas autorisé à exécuter plus d’une instance.
D’autres fois, il se peut que tout se passe bien, l’utilisateur quitte son appli, et la session disparait de la console. Il peut alors se reconnecter dans la foulée sans problème.
çà me generait d’enlever la limite d’une seule instance par utilisateur…
Une idée ?
Merci.
Quels sont les process qui restent par session, car il est possible que certains process ne prennent pas bien en compte l’event de fermeture de session, cela arrive avec les process des lecteurs de carte vitale notamment.
Voici une clé de registre qui permet de forcer la fermeture des process, à toi d’ajouter les process :
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlCitrixwfshellTWI]
"LogoffCheckSysModules"="ssoshell.exe,ssobho.exe,ssomho.exe,acrodist.exe,acrotray.exe"
Outre cette clé de registre, verifie si l'antivirus ne bloque pas la fermeture de session (Symantec v10.5.5010 pose ce problème) et installe UphClean si ce n'est pas déja fait.
Quand çà arrive et que je me connecte en admin sur le serveur sur lequel la session avait été ouverte par l’utilisateur, il ne subsiste aucun process à son nom.
Uphclean est déjà présent.
Se pourrait-il que dans ma config où un serveur est dédié datacollector et datastore (base access), celui-ci n’ai pas encore l’info que l’utilisateur n’a plus de session active et donc qu’il considère qu’il est toujours connecté ?
Du coup quand l’utilisateur interroge ce serveur pour se connecter à l’appli, il détecte qu’il a déjà une session ouverte alors que ce n’est plus le cas…
donc quand user1 ferme proprement sa session, la CMC indique qu’elle est encore active qq minutes après et semble-t-il tu n’a aucun process dans cette session. Comment vérifies tu cela ? CMC? Task Manager ? Que retourne les commandes qwinsta et quser sur ce serveur où la session est présente ?
quel est le contenu de la clef indiqué par jolebarjo ?
le datacollector est informé des sessions présentes dans sa zone (déco ou active) seulement si le serveur sur laquelle la session est présente lui a envoyé les infos mises à jour. il faudrait donc aussi vérifier cela (avec un outil présent sur le CD de CPS)
Effectivement, c’est ce qui se passe.
Via Task Manager, aucun process au nom de l’utilisateur dont la session apparait active dans la CMC.
Quser et Qwinsta ne remontent pas l’utilisateur.
Pour la clef indiquée par jolebarjo, il y a bien TWI mais la valeur “LogoffCheckSysModules” n’est pas présente. Je n’ai que DllName et NotifyEvent.
J’aime bien l’option selon laquelle le serveur sur lequel la session est présente n’envoie pas les infos mises à jour au DC, mais comment je peux vérifier çà ?
queryds /table:Conn_Sessions
queryds est à lancer sur le DataCollector cet outil est présent dans Support/debug/W2K3
queryds /table:Conn_Sessions => mon utilisateur apparait bien dans la liste alors qu’il n’est plus connecté.
Au bout de 5-10 mn, c’est ok, il disparait de la liste et on peut de nouveau se connecter.
donc le DC voit la session comme active
tu es certain que qwinsta ne retourne aucune session pour cet utilisateur ?
tu peux afficher une capture d’écrand qwinsta et la CMC quand tu regarde les propriétés de cette session “active”
Je suis certain que qwinsta ne retourne rien concernant la session de l’utilisateur.
Pendant ce temps, dans la CMC, je t’assure que l’utilisateur est présent avec un état de session “active”. Par contre, un clic droit/Informations de session sort en erreur de CMC en indiquant que les informations d’état ne sont pas dispo. pour cette session.
…ce qui semble normal puisque il n’est plus connecté…
Bonjour, j’ai à peu près le même style de problème, sauf quand je fais le quser et le qwinsta je vois l’utilisateur toujours actif, alors que sur le client tout est fermé. Je n’ai pas fait encore l’uphclean, est-ce que cela a un incident sur le serveur?
sauf si tu es sur exactement la meme version de produit merci de ne pas remonter un sujet depuis les abimes du forum, contentes toi d’un simple lien dans ton message…
quels processus sont toujours présent pour la session sur le serveur ?
j’imagine, vu que tu as lu le sujet, que LogoffCheckSysModules est en place sur certain des process listés comme toujours actifs (voir http://support.citrix.com/article/CTX891671, attention à ne pas mettre des process systeme ou assimilés !!)
OK, message reçu et merci pour l’info