rstudio / shiny

Easy interactive web applications with R
https://shiny.posit.co/
Other
5.35k stars 1.87k forks source link

feature request: anonymous user or session id in shinyapps.io logs #3887

Open alvarosantamariagomez opened 1 year ago

alvarosantamariagomez commented 1 year ago

Currently, my shinyapps logs look like this (appID is hidden)

2023-09-05T08:11:33.192052+00:00 shinyapps[appID]: Container event from container-8569266: start
2023-09-05T08:11:38.191571+00:00 shinyapps[appID]: Running on host: a95ed15339d3
2023-09-05T08:11:38.196477+00:00 shinyapps[appID]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:38.201047+00:00 shinyapps[appID]: Connect version: 2023.03.0
2023-09-05T08:11:38.205649+00:00 shinyapps[appID]: LANG: C.UTF-8
2023-09-05T08:11:38.210205+00:00 shinyapps[appID]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:38.214517+00:00 shinyapps[appID]: Using R 4.1.2
2023-09-05T08:11:38.219163+00:00 shinyapps[appID]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:38.223717+00:00 shinyapps[appID]: Content will use current R environment
2023-09-05T08:11:38.228034+00:00 shinyapps[appID]: R_LIBS: (unset)
2023-09-05T08:11:38.232495+00:00 shinyapps[appID]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:38.237053+00:00 shinyapps[appID]: shiny version: 1.7.3
2023-09-05T08:11:38.241808+00:00 shinyapps[appID]: httpuv version: 1.6.5
2023-09-05T08:11:38.246364+00:00 shinyapps[appID]: rmarkdown version: 2.11
2023-09-05T08:11:38.251344+00:00 shinyapps[appID]: knitr version: 1.36
2023-09-05T08:11:38.255934+00:00 shinyapps[appID]: jsonlite version: 1.8.0
2023-09-05T08:11:38.260361+00:00 shinyapps[appID]: RJSONIO version: (none)
2023-09-05T08:11:38.265076+00:00 shinyapps[appID]: htmltools version: 0.5.4
2023-09-05T08:11:38.269975+00:00 shinyapps[appID]: reticulate version: (none)
2023-09-05T08:11:38.274818+00:00 shinyapps[appID]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:38.279509+00:00 shinyapps[appID]: 
2023-09-05T08:11:38.284147+00:00 shinyapps[appID]: Starting R with process ID: '37'
2023-09-05T08:11:38.288703+00:00 shinyapps[appID]: Shiny application starting ...
2023-09-05T08:11:38.293366+00:00 shinyapps[appID]: Running on host: a95ed15339d3
2023-09-05T08:11:38.298159+00:00 shinyapps[appID]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:38.303239+00:00 shinyapps[appID]: Connect version: 2023.03.0
2023-09-05T08:11:38.308555+00:00 shinyapps[appID]: LANG: C.UTF-8
2023-09-05T08:11:38.313322+00:00 shinyapps[appID]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:38.318100+00:00 shinyapps[appID]: Using R 4.1.2
2023-09-05T08:11:38.322760+00:00 shinyapps[appID]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:38.327450+00:00 shinyapps[appID]: Content will use current R environment
2023-09-05T08:11:38.332180+00:00 shinyapps[appID]: R_LIBS: (unset)
2023-09-05T08:11:38.336975+00:00 shinyapps[appID]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:38.341540+00:00 shinyapps[appID]: shiny version: 1.7.3
2023-09-05T08:11:38.345943+00:00 shinyapps[appID]: httpuv version: 1.6.5
2023-09-05T08:11:38.350565+00:00 shinyapps[appID]: rmarkdown version: 2.11
2023-09-05T08:11:38.355544+00:00 shinyapps[appID]: knitr version: 1.36
2023-09-05T08:11:38.360113+00:00 shinyapps[appID]: jsonlite version: 1.8.0
2023-09-05T08:11:38.364819+00:00 shinyapps[appID]: RJSONIO version: (none)
2023-09-05T08:11:38.369432+00:00 shinyapps[appID]: htmltools version: 0.5.4
2023-09-05T08:11:38.374215+00:00 shinyapps[appID]: reticulate version: (none)
2023-09-05T08:11:38.378685+00:00 shinyapps[appID]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:38.383275+00:00 shinyapps[appID]: 
2023-09-05T08:11:38.387594+00:00 shinyapps[appID]: Starting R with process ID: '54'
2023-09-05T08:11:38.392301+00:00 shinyapps[appID]: Shiny application starting ...
2023-09-05T08:11:38.396694+00:00 shinyapps[appID]: 
2023-09-05T08:11:38.401148+00:00 shinyapps[appID]: Listening on http://127.0.0.1:36891
2023-09-05T08:11:40.191564+00:00 shinyapps[appID]: 
2023-09-05T08:11:40.196311+00:00 shinyapps[appID]:  
2023-09-05T08:11:40.201152+00:00 shinyapps[appID]:  >>> APP IS READY <<< 
2023-09-05T08:11:41.192231+00:00 shinyapps[appID]: Running on host: a95ed15339d3
2023-09-05T08:11:41.197427+00:00 shinyapps[appID]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:41.202309+00:00 shinyapps[appID]: Connect version: 2023.03.0
2023-09-05T08:11:41.207135+00:00 shinyapps[appID]: LANG: C.UTF-8
2023-09-05T08:11:41.211764+00:00 shinyapps[appID]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:41.216355+00:00 shinyapps[appID]: Using R 4.1.2
2023-09-05T08:11:41.221066+00:00 shinyapps[appID]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:41.225715+00:00 shinyapps[appID]: Content will use current R environment
2023-09-05T08:11:41.230499+00:00 shinyapps[appID]: R_LIBS: (unset)
2023-09-05T08:11:41.235271+00:00 shinyapps[appID]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:41.240256+00:00 shinyapps[appID]: shiny version: 1.7.3
2023-09-05T08:11:41.245080+00:00 shinyapps[appID]: httpuv version: 1.6.5
2023-09-05T08:11:41.250475+00:00 shinyapps[appID]: rmarkdown version: 2.11
2023-09-05T08:11:41.255588+00:00 shinyapps[appID]: knitr version: 1.36
2023-09-05T08:11:41.260283+00:00 shinyapps[appID]: jsonlite version: 1.8.0
2023-09-05T08:11:41.265140+00:00 shinyapps[appID]: RJSONIO version: (none)
2023-09-05T08:11:41.269773+00:00 shinyapps[appID]: htmltools version: 0.5.4
2023-09-05T08:11:41.278089+00:00 shinyapps[appID]: reticulate version: (none)
2023-09-05T08:11:41.282953+00:00 shinyapps[appID]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:42.196130+00:00 shinyapps[appID]: 
2023-09-05T08:11:42.200860+00:00 shinyapps[appID]: Starting R with process ID: '81'
2023-09-05T08:11:42.205473+00:00 shinyapps[appID]: Shiny application starting ...
2023-09-05T08:11:44.223599+00:00 shinyapps[appID]: 
2023-09-05T08:11:44.228179+00:00 shinyapps[appID]: Listening on http://127.0.0.1:39677
2023-09-05T08:11:45.203113+00:00 shinyapps[appID]: 
2023-09-05T08:11:45.207734+00:00 shinyapps[appID]:  
2023-09-05T08:11:45.212370+00:00 shinyapps[appID]:  >>> APP IS READY <<< 
2023-09-05T08:12:01.192204+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:01.197171+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:02.197428+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:03.192048+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:04.191499+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:04.196764+00:00 shinyapps[appID]: WOOPS ERROR
2023-09-05T08:12:04.201727+00:00 shinyapps[appID]: DOING STUFF
2023-09-05T08:12:10.191532+00:00 shinyapps[appID]: DOING STUFF

where you can see two new connections (in two different workers) almost simultaneously. The text in capitals at the end is the log from the app itself. One of the user/connections fired an error in the app. I can find the line of the app code that fired the error, but I cannot know what the user did to fire the error because I cannot separate the output of both user/connections. This makes very difficult to reproduce the error and debug the app code.

What I'm proposing is to add an extra label to the logs indicating a random and anonymous user or session id, or maybe even the server port number? something that helps separate the output between simultaneous connections. For instance, something like this:

2023-09-05T08:11:33.192052+00:00 shinyapps[appID] session[1]: Container event from container-8569266: start
2023-09-05T08:11:38.191571+00:00 shinyapps[appID] session[1]: Running on host: a95ed15339d3
2023-09-05T08:11:38.196477+00:00 shinyapps[appID] session[1]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:38.201047+00:00 shinyapps[appID] session[1]: Connect version: 2023.03.0
2023-09-05T08:11:38.205649+00:00 shinyapps[appID] session[1]: LANG: C.UTF-8
2023-09-05T08:11:38.210205+00:00 shinyapps[appID] session[1]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:38.214517+00:00 shinyapps[appID] session[1]: Using R 4.1.2
2023-09-05T08:11:38.219163+00:00 shinyapps[appID] session[1]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:38.223717+00:00 shinyapps[appID] session[1]: Content will use current R environment
2023-09-05T08:11:38.228034+00:00 shinyapps[appID] session[1]: R_LIBS: (unset)
2023-09-05T08:11:38.232495+00:00 shinyapps[appID] session[1]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:38.237053+00:00 shinyapps[appID] session[1]: shiny version: 1.7.3
2023-09-05T08:11:38.241808+00:00 shinyapps[appID] session[1]: httpuv version: 1.6.5
2023-09-05T08:11:38.246364+00:00 shinyapps[appID] session[1]: rmarkdown version: 2.11
2023-09-05T08:11:38.251344+00:00 shinyapps[appID] session[1]: knitr version: 1.36
2023-09-05T08:11:38.255934+00:00 shinyapps[appID] session[1]: jsonlite version: 1.8.0
2023-09-05T08:11:38.260361+00:00 shinyapps[appID] session[1]: RJSONIO version: (none)
2023-09-05T08:11:38.265076+00:00 shinyapps[appID] session[1]: htmltools version: 0.5.4
2023-09-05T08:11:38.269975+00:00 shinyapps[appID] session[1]: reticulate version: (none)
2023-09-05T08:11:38.274818+00:00 shinyapps[appID] session[1]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:38.279509+00:00 shinyapps[appID] session[1]: 
2023-09-05T08:11:38.284147+00:00 shinyapps[appID] session[1]: Starting R with process ID: '37'
2023-09-05T08:11:38.288703+00:00 shinyapps[appID] session[1]: Shiny application starting ...
2023-09-05T08:11:38.293366+00:00 shinyapps[appID] session[1]: Running on host: a95ed15339d3
2023-09-05T08:11:38.298159+00:00 shinyapps[appID] session[1]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:38.303239+00:00 shinyapps[appID] session[1]: Connect version: 2023.03.0
2023-09-05T08:11:38.308555+00:00 shinyapps[appID] session[1]: LANG: C.UTF-8
2023-09-05T08:11:38.313322+00:00 shinyapps[appID] session[1]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:38.318100+00:00 shinyapps[appID] session[1]: Using R 4.1.2
2023-09-05T08:11:38.322760+00:00 shinyapps[appID] session[1]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:38.327450+00:00 shinyapps[appID] session[1]: Content will use current R environment
2023-09-05T08:11:38.332180+00:00 shinyapps[appID] session[1]: R_LIBS: (unset)
2023-09-05T08:11:38.336975+00:00 shinyapps[appID] session[1]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:38.341540+00:00 shinyapps[appID] session[1]: shiny version: 1.7.3
2023-09-05T08:11:38.345943+00:00 shinyapps[appID] session[1]: httpuv version: 1.6.5
2023-09-05T08:11:38.350565+00:00 shinyapps[appID] session[1]: rmarkdown version: 2.11
2023-09-05T08:11:38.355544+00:00 shinyapps[appID] session[1]: knitr version: 1.36
2023-09-05T08:11:38.360113+00:00 shinyapps[appID] session[1]: jsonlite version: 1.8.0
2023-09-05T08:11:38.364819+00:00 shinyapps[appID] session[1]: RJSONIO version: (none)
2023-09-05T08:11:38.369432+00:00 shinyapps[appID] session[1]: htmltools version: 0.5.4
2023-09-05T08:11:38.374215+00:00 shinyapps[appID] session[1]: reticulate version: (none)
2023-09-05T08:11:38.378685+00:00 shinyapps[appID] session[1]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:38.383275+00:00 shinyapps[appID] session[1]: 
2023-09-05T08:11:38.387594+00:00 shinyapps[appID] session[1]: Starting R with process ID: '54'
2023-09-05T08:11:38.392301+00:00 shinyapps[appID] session[1]: Shiny application starting ...
2023-09-05T08:11:38.396694+00:00 shinyapps[appID] session[1]: 
2023-09-05T08:11:38.401148+00:00 shinyapps[appID] session[1]: Listening on http://127.0.0.1:36891
2023-09-05T08:11:40.191564+00:00 shinyapps[appID] session[1]: 
2023-09-05T08:11:40.196311+00:00 shinyapps[appID] session[1]:  
2023-09-05T08:11:40.201152+00:00 shinyapps[appID] session[1]:  >>> APP IS READY <<< 
2023-09-05T08:11:41.192231+00:00 shinyapps[appID] session[2]: Running on host: a95ed15339d3
2023-09-05T08:11:41.197427+00:00 shinyapps[appID] session[2]: Running as user: uid=10001(shiny) gid=10001(shiny) groups=10001(shiny)
2023-09-05T08:11:41.202309+00:00 shinyapps[appID] session[2]: Connect version: 2023.03.0
2023-09-05T08:11:41.207135+00:00 shinyapps[appID] session[2]: LANG: C.UTF-8
2023-09-05T08:11:41.211764+00:00 shinyapps[appID] session[2]: Working directory: /srv/connect/apps/sari
2023-09-05T08:11:41.216355+00:00 shinyapps[appID] session[2]: Using R 4.1.2
2023-09-05T08:11:41.221066+00:00 shinyapps[appID] session[2]: R.home(): /opt/R/4.1.2/lib/R
2023-09-05T08:11:41.225715+00:00 shinyapps[appID] session[2]: Content will use current R environment
2023-09-05T08:11:41.230499+00:00 shinyapps[appID] session[2]: R_LIBS: (unset)
2023-09-05T08:11:41.235271+00:00 shinyapps[appID] session[2]: .libPaths(): /opt/R/4.1.2/lib/R/library
2023-09-05T08:11:41.240256+00:00 shinyapps[appID] session[2]: shiny version: 1.7.3
2023-09-05T08:11:41.245080+00:00 shinyapps[appID] session[2]: httpuv version: 1.6.5
2023-09-05T08:11:41.250475+00:00 shinyapps[appID] session[2]: rmarkdown version: 2.11
2023-09-05T08:11:41.255588+00:00 shinyapps[appID] session[2]: knitr version: 1.36
2023-09-05T08:11:41.260283+00:00 shinyapps[appID] session[2]: jsonlite version: 1.8.0
2023-09-05T08:11:41.265140+00:00 shinyapps[appID] session[2]: RJSONIO version: (none)
2023-09-05T08:11:41.269773+00:00 shinyapps[appID] session[2]: htmltools version: 0.5.4
2023-09-05T08:11:41.278089+00:00 shinyapps[appID] session[2]: reticulate version: (none)
2023-09-05T08:11:41.282953+00:00 shinyapps[appID] session[2]: Using pandoc: /opt/connect/ext/pandoc/2.16
2023-09-05T08:11:42.196130+00:00 shinyapps[appID] session[2]: 
2023-09-05T08:11:42.200860+00:00 shinyapps[appID] session[2]: Starting R with process ID: '81'
2023-09-05T08:11:42.205473+00:00 shinyapps[appID] session[2]: Shiny application starting ...
2023-09-05T08:11:44.223599+00:00 shinyapps[appID] session[2]: 
2023-09-05T08:11:44.228179+00:00 shinyapps[appID] session[2]: Listening on http://127.0.0.1:39677
2023-09-05T08:11:45.203113+00:00 shinyapps[appID] session[2]: 
2023-09-05T08:11:45.207734+00:00 shinyapps[appID] session[2]:  
2023-09-05T08:11:45.212370+00:00 shinyapps[appID] session[2]:  >>> APP IS READY <<< 
2023-09-05T08:12:01.192204+00:00 shinyapps[appID] session[1]: DOING STUFF
2023-09-05T08:12:01.197171+00:00 shinyapps[appID] session[1]: DOING STUFF
2023-09-05T08:12:02.197428+00:00 shinyapps[appID] session[2]: DOING STUFF
2023-09-05T08:12:03.192048+00:00 shinyapps[appID] session[1]: DOING STUFF
2023-09-05T08:12:04.191499+00:00 shinyapps[appID] session[2]: DOING STUFF
2023-09-05T08:12:04.196764+00:00 shinyapps[appID] session[1]: WOOPS ERROR
2023-09-05T08:12:04.201727+00:00 shinyapps[appID] session[2]: DOING STUFF
2023-09-05T08:12:10.191532+00:00 shinyapps[appID] session[1]: DOING STUFF
### Tasks
cpsievert commented 11 months ago

Thanks for the suggestion, @alvarosantamariagomez. I've added a ticket for this request in our internal system (because any changes will have to derive from a private repository). I'll try to relay any progress along here.