-
Notifications
You must be signed in to change notification settings - Fork 634
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ADP opt-in ui under DebugMode #10638
Conversation
ADP opt-in/opt-out values are common to all ADSK products (not per individual product). This means that Dynamo will not have exclusive control of ADP opt-in/opt-out. @QilongTang @mjkkirschner thoughts? |
This needs to be reviewed carefully, I see you undid some recent changes by @QilongTang which stopped instrumentation and analytics from being started/loaded at all if disabled. These were put in to investigate http errors in specific proxy environments. Was that needed? |
@mjkkirschner Regarding |
{ | ||
//If not ReportingAnalytics, then set the idle time as infinite so idle state is not recorded. | ||
Service.StartUp(product, new UserInfo(Session.UserId), preferences.IsAnalyticsReportingApproved ? TimeSpan.FromMinutes(30) : TimeSpan.MaxValue); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I removed the backup value TimeSpan.MaxValue
since it seems it was never hit before...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pinzart Yes, now I remember because we made the change that if GA is not agreed, we do not initialize the client at all. It seems this change will undo that previous change though. e.g. if the ADP is agreed on, the service will be started regardless
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@QilongTang
ADP is agreed on, the service will be started regardless
That is correct. My intention was to make ADP and Google independent of each other. So if a user opts into ADP (but not Google) ...then Analytics service will be started (but only ADPTracker will process events). Similar if Google is opted in but ADP is not.
I did not refactor the code to remove the Instrumentation option (for logging PII). That can be done in a separate PR |
In this PR, ADP analytics are still fully under a debug mode |
@QilongTang - I'm having trouble remembering the option added by Alias team, but we should make sure that this option to completely disable the UI for analytics (and also disable all analytics) continues to work. |
@mjkkirschner Regarding #10217 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM other than the comments we have not reached agreement.
@pinzart @QilongTang - I think the host name is unneeded - as confusing as it is the AppVersion contains the process name. Dynamo/src/DynamoCore/Models/DynamoModel.cs Line 331 in 31cb44e
|
@mjkkirschner hmm process name for DynamoForAdavanceSteel and DynamoForCivil3D is same, both |
* separate functions for tracker registrations Use separate functions so that we do not load GA dll at runtime if it is not opted in..
// If the Analytics Client was initialized, shut it down. | ||
// Otherwise skip this step because it would cause an exception. | ||
if (Service.IsInitialized) | ||
Service.ShutDown(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Service.ShutDown() will clean all factories and all tracker related data
@@ -30,20 +23,6 @@ public DynamoAnalyticsSession() | |||
|
|||
public void Start(DynamoModel model) | |||
{ | |||
//Whether enabled or not, we still record the startup. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved this tracker registration/cleanup code in the Client instance. (to have access to client's data)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with one last comment
Purpose
Added UI for ADP (replaces the Instrumentation consent UI)
Still fully under a debug mode.
Exposed the ADP opt-in/opt-out API in Preferences as a non-serializable property,
Google and ADP are handled separately.
Declarations
Check these if you believe they are true
*.resx
filesReviewers
(FILL ME IN) Reviewer 1 (If possible, assign the Reviewer for the PR)
(FILL ME IN, optional) Any additional notes to reviewers or testers.
FYIs
(FILL ME IN, Optional) Names of anyone else you wish to be notified of