-
Notifications
You must be signed in to change notification settings - Fork 50
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
telemetry: Adding metrics for amazonq unit test generation #915
Conversation
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.
significant concerns with this
"description": "Number of characters of code generated" | ||
}, | ||
{ | ||
"name": "generatedCount", |
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.
this name is unhelpful. why not generatedTestCasesCount
?
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.
Please refer this PR
Long story short Toolkit want to reuse the fields so the ask is to keep this as generic as possible.
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.
Each field is "namespaced" in a metric, so there is no need to name each field in a globally-unique way, and it's actually counterproductive (because it results in 10x or 100x the number of field names, which reduces discoverability, re-use, and leads to less-helpful dashboards and queries).
So for example, this field would live on a metric named amazon_foo
and so amazonq_foo.generatedCount
would clearly be understood based on the metric it is part of.
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.
You probably don't need this field, just use the count
field:
"name": "count", |
{ | ||
"name": "buildSystemVersion", | ||
"type": "string", | ||
"description": "The build system version on the user's machine" | ||
}, | ||
{ | ||
"name": "buildZipFileBytes", |
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.
what about number of files?
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.
We does not have a field for Number of files
and I do not think it adds a value as file can be of any size and number does not define our latency or test generation experience.
Correct me If I am missing something.
"required": false | ||
}, | ||
{ | ||
"type": "cwsprChatProgrammingLanguage" |
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.
why is this a chat programming language?
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.
We planned to reuse existing fields as much as possible. Please refer this PR
"required": false | ||
}, | ||
{ | ||
"type": "generatedCount", |
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.
same comment as above.
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.
This is on a metric named amazonq_unitTestGeneration
. Can just use the count
field:
"name": "count", |
each field does not need its own namespace; it's already namespaced in a metric.
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.
Follow this suggestion.
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.
Sure, but count
already exists... when a metric's main topic needs a count, just use the existing count
field.
"required": false | ||
}, | ||
{ | ||
"type": "userEnteredPromptMessage" |
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.
you cannot save this as telemetry. This is customer 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.
As declared this is boolean, so there is no harm for customer data.
"required": false | ||
}, | ||
{ | ||
"type": "userEnteredPromptMessage" |
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.
This is customer 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.
Replied above
"required": false | ||
}, | ||
{ | ||
"type": "generatedCount", |
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.
This is on a metric named amazonq_unitTestGeneration
. Can just use the count
field:
"name": "count", |
each field does not need its own namespace; it's already namespaced in a metric.
"name": "amazonq_utg_generateTests", | ||
"description": "Client side invocation of the AmazonQ Unit Test Generation", |
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.
how is this different than amazonq_unitTestGeneration
?
"name": "amazonq_unitTestGeneration", "description": "Client side metrics of AmazonQ Unit Test Generation",
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.
This will be the E2E metric after Build execution loop
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.
That isn't indicated in the description, and still doesn't explain how it's different
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.
This is not being added as part of RIV.
Problem
Solution
Planning to add 4 metrics for Unit test generation.
License
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.