Skip to content
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

feat: telemetry api #4968

Merged
merged 27 commits into from
Dec 3, 2020
Merged

feat: telemetry api #4968

merged 27 commits into from
Dec 3, 2020

Conversation

tdurnford
Copy link
Collaborator

Description

Adds support for telemetry api in the client and the server. Also adds the hashed mac address to the electron context.

Task Item

Closes #4765

@coveralls
Copy link

coveralls commented Nov 24, 2020

Coverage Status

Coverage decreased (-0.1%) to 55.815% when pulling 0b84f0a on tdurnford:feature/telemetry into 59f7f11 on microsoft:main.

Copy link
Contributor

@a-b-r-o-w-n a-b-r-o-w-n left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'd like to see the server API support event batching instead of processing singular events since the payloads are small.

The client should then implement a pooling mechanism that processes the events in batches of 10 or 20. This will allow the client-side telemetry to scale better.

Some things to consider with this approach:

  • Set an interval to process all events in queue (like you have now, but call flush every n seconds).
  • Be sure to drain the queue when navigating away from the page.

Also, I might have missed this, but is logPageView being called anywhere?

@tdurnford
Copy link
Collaborator Author

@a-b-r-o-w-n No, logPageView is not used in this PR, but it will be used a follow up PR that wires up all the events.

@tdurnford tdurnford added the 1.3 1.3 Release label Dec 2, 2020
break;
}
} catch (error) {
// swallow the exception on a failed attempt to collect usage data
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

consider adding in retry logic here and in the client.

@a-b-r-o-w-n a-b-r-o-w-n self-assigned this Dec 3, 2020
a-b-r-o-w-n
a-b-r-o-w-n previously approved these changes Dec 3, 2020
@a-b-r-o-w-n a-b-r-o-w-n merged commit 2133a73 into microsoft:main Dec 3, 2020
@tdurnford tdurnford deleted the feature/telemetry branch December 4, 2020 00:54
lei9444 pushed a commit to lei9444/BotFramework-Composer-1 that referenced this pull request Jun 15, 2021
* feat: telemetry api

* lint

* persist machine id

* move telemetry settings to user settings

* reverted changes to en-US

* pool telemetry events

* changed batch size

* fix uuid

* add telemetry classes

* requested changes

* shorted interval

* fix integration test

* change parameter type

Co-authored-by: Andy Brown <asbrown002@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.3 1.3 Release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Telemetry] Add Application Insights telemetry routes, controllers, and service to the server
4 participants