Giter Site home page Giter Site logo

Comments (5)

qhanam avatar qhanam commented on August 10, 2024

Hi @crowecawcaw thanks for this; I like your proposal. Would you ever dynamically change the sessionId, or would it be sufficient to set the session Id only on initializing AwsRum?

from aws-rum-web.

crowecawcaw avatar crowecawcaw commented on August 10, 2024

For our specific use case, we would only want to set the sessionId at initialization time.

from aws-rum-web.

jffrenc avatar jffrenc commented on August 10, 2024

For a different use case, we need to dynamically set both sessionId and userId:

We'd like to use RUM for a kiosk use case. In the idle state, no user is logged in. Users can authenticate, take some set of actions, and then log out. The page is never reloaded except after a deployment.

We'd like to have the RUM client initialized the entire time, capturing any errors, events, timings, etc. even when logged out (without associating those with the session/user before or after). We'd also like to set the userId and a new sessionId programmatically every time a user logs in (and reset them when they log out).

We'd like to avoid having to manage multiple instances of the RUM client and possibly lose events or get some other bad behavior because we didn't realize we had to call flush() and disable() (we haven't tested this route yet though, so might not even be correct - just trying to point out there's some danger in using multiple instances since most of the docs assume you'd only create one instance of the client) to destruct the previous instance before creating a new one to avoid duplicate or lost events.

from aws-rum-web.

jakob-lj avatar jakob-lj commented on August 10, 2024

@jffrenc From our point of view: the session in AWS RUM is one user session, which may contain that the user is logged in via various users during that session. The session lifecycle might be:

  • logged out
  • logged into userId: A
  • logged out
  • logged into userId: B

Then we would like to catch errors in this lifecycle and put them in relation to each other. We use the metadata feature when adding our custom user identities, and like the fact that we can abstract away in such a matter ^

from aws-rum-web.

williazz avatar williazz commented on August 10, 2024

To summarize, we need the following to close out:

  • Statically set user id at initialization time
  • Statically set session id at initialization time

In addition, I have also received feedback for

  • Dynamically set user id at runtime
  • Dynamically set session id at runtime
  • Dynamically start, stop, and get current session at runtime

from aws-rum-web.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.