Pb avec shiny-server et stopApp

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Pb avec shiny-server et stopApp

Messagepar Serge Rapenne » 21 Jan 2022, 13:17

Bonjour à vous,

j'ai un pb avec shiny-server qui me laisse "chèvre". Je voudrais utiliser la fonction stopApp. Soit le programme shiny minimal (dans mon vrai code je voudrais faire plus de chose dans le stopApp) suivant :
ui.R

Code : Tout sélectionner

library(shiny)
shinyUI(fluidPage(
  actionButton("stopApp", "Stop app")
)
)

server.R

Code : Tout sélectionner

shinyServer(function(input, output,session){ 
  observeEvent(input$stopApp, {
    cat("Stopping shiny app%s\n")
    stopApp()
  })
 
})


Cette appli fonctionne sans soucis qd je la lance avec runApp, par contre en la lançant dans un navigateur via shiny-server, l'interface s'ouvre bien mais qd j'appuie sur le bouton "stopApp" ça provoque un plantage de l'appli.

Toute aide sera la bienvenue

Serge

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Pb avec shiny-server et stopApp

Messagepar Mickael Canouil » 21 Jan 2022, 15:51

Bonjour,

C'est le but de stopApp() de "planter" l'application.
En local (runApp(), etc.), j'ai bien un "plantage" de l'application quand je clic sur le bouton, preuve en est je récupère la main sur mon terminal R.

Quelque-chose n'est pas claire ...
Peut-être stopApp() n'est pas la fonction que vous cherchez en fait.

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Pb avec shiny-server et stopApp

Messagepar Serge Rapenne » 21 Jan 2022, 16:54

pour moi, le but de stopApp n'est pas de "planter" l'application mais de la fermer proprement,
Si j'utilise le server.r suivant

Code : Tout sélectionner

shinyServer(function(input, output,session){
  observeEvent(input$stopApp, {
    a=1
    save(a,file="test.RData")
    stopApp()
  })
})

le fichier RData est bien créé avec un runApp alors que dans shiny-server, l'appli plante avant avec un message "disconnected from server"

Serge

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Pb avec shiny-server et stopApp

Messagepar Mickael Canouil » 22 Jan 2022, 10:22

C'est normal que la connection à l'application soit interrompu (c'est aussi le cas via un runApp) quand l'application est arrêté ou qu'elle plante.

Le message sur shiny-server apparaît parce-que l'utilisateur n'a pas accès au terminal R / processus pour savoir s'il est actif ou non, alors qu'en local/interactif c'est le cas.
Sur la première capture, une connection est en cours (terminal R occupé).
Sur la seconde capture, la connection a été interrompu par stopApp() : la fenêtre web est grisée (inaccessible) et le terminal est disponible.
Image
Image
Mickaël
mickael.canouil.fr | rlille.fr


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité