getsentry / sentry

Developer-first error tracking and performance monitoring
https://sentry.io
Other
39.06k stars 4.19k forks source link

Include user comments and screenshots in Azure DevOps Issues created from Sentry User Feedback #75775

Open kerenkhatiwada opened 2 months ago

kerenkhatiwada commented 2 months ago

Problem Statement

When creating a new issue from within Sentry's User Feedback to a connected Azure DevOps instance, the new Azure DevOps item does not include the comment the user sent into the description box, just a link back to the event in Sentry. While it's possible to manually add the user comment when creating the Azure DevOps issues manually, it would be great to have the Azure DevOps issue include the user feedback's comment and include screenshots by default.

Solution Brainstorm

No response

Product Area

User Feedback

getsantry[bot] commented 2 months ago

Assigning to @getsentry/support for routing ⏲️

getsantry[bot] commented 2 months ago

Routing to @getsentry/product-owners-user-feedback for triage ⏲️

bruno-garcia commented 2 months ago

Do you create the issue manually?

If so, a template shows up like this:

Image

Do you see the message there? Perhaps under <!--?

johnwc commented 2 months ago

@bruno-garcia You are referring to a sentry issue, we are referring to a User Feedback where a user has entered a comment and potentially added a screenshot from the browser.

bruno-garcia commented 2 months ago

Right, but since we use the same component, and with other providers, I was asking if you see the comment in it.

I have a GitHub integration with my project and I see the comment, eg:

Image

johnwc commented 2 months ago

I created the request because we see nothing in the dialog's Description you are screenshotting. Nor do we see any screenshots added to the issue in Azure DevOps. We also do not see any of those extra options like Assignee.

Image

michellewzhang commented 2 months ago

@bruno-garcia @johnwc 's screenshot is accurate -- we use a different template for non-github/jira linked issues/feedback. the problem is that this template is not azure devops specific -- so changing the template would affect all other integrations sentry offers, which could be problematic. we were able to make this change easily for github/jira linked tickets because they have specific templates, so there wasn't a huge risk in updating those default descriptions.

@johnwc we don't currently support having screenshots in any of the linked integration forms unfortunately, this is probably not something we can support anytime soon due to privacy concerns.

bruno-garcia commented 2 months ago

we use a different template for non-github/jira linked issues/feedback. the problem is that this template is not azure devops specific

Could we create a new, azure specific template based on the current one. And modify it only for user-feedback so that we add the comment in it?

michellewzhang commented 2 months ago

we use a different template for non-github/jira linked issues/feedback. the problem is that this template is not azure devops specific

Could we create a new, azure specific template based on the current one. And modify it only for user-feedback so that we add the comment in it?

this is hard, it's something that the integrations team would have to get involved with. just from a quick glance of the files it seems like pretty old code (github one has code from 3 years ago)

i'm also not sure making a specific template for every single integration is the right way to go -- sentry has so many integrations, so not sure if we want to make one for every single one

johnwc commented 2 months ago

@michellewzhang I'm sorry but none of this is making any logical sense to me.

we don't currently support having screenshots in any of the linked integration forms unfortunately, this is probably not something we can support anytime soon due to privacy concerns.

If a customer goes out of their way to screenshot a page and report a bug, how is affected with privacy concerns? The user purposely created the screenshot. How is it a privacy concern if it is in our private devops, but not a privacy concern if it in sentry?

we were able to make this change easily for github/jira linked tickets because they have specific templates, so there wasn't a huge risk in updating those default descriptions.

All Azure DevOps items from Epics to Bugs support attaching files, so how is it different from the way you are creating specific template for github/jira? If you are not referring to attaching files(screenshots), devops supports the same markdown in the description as github/jira.

i'm also not sure making a specific template for every single integration is the right way to go -- sentry has so many integrations, so not sure if we want to make one for every single one

Why would it not be beneficial in all integrations to have the user's actual feedback in the comment of the item being created? Just like you do for github/jira.

michellewzhang commented 2 months ago

@johnwc sorry for the confusion -- hope this message can clarify some things. so we don't support automatic adding of screenshots for github or jira integrations either; it's something we'd have to discuss/plan first before implementing. the screenshots are also not readily available on the issue object itself; we'd have to call a separate endpoint to get the attachments so it's not a trivial fix. we might have a ticket somewhere for adding screenshots to the default message already (cc @jas-kas).

to your point about creating a new integration template for every integration we have: our specific templates for github/jira are not super straightforward -- we're not the team who wrote them, so i'd need to discuss with our integrations team to get more insights into how to create new templates for the remaining ones. it's complex so takes a lot of time and not sure if any of our current teams have bandwidth to take this on currently.

for now, i can put up a PR for our generic linked integration template that adds the feedback message and other evidence in the default template (but it won't include the screenshots yet).

michellewzhang commented 2 months ago

PR: https://github.com/getsentry/sentry/pull/76016

jas-kas commented 2 months ago

Feature request ticket for adding screenshots to external tickets: https://github.com/getsentry/sentry/issues/76063

johnwc commented 2 months ago

@michellewzhang can we also get the link to the replay session added to the description content? (If there is a replay for the user feedback/issue in sentry)

michellewzhang commented 2 months ago

hi @johnwc, thanks for reaching out -- we currently have a feature request for this on our backlog: https://github.com/getsentry/sentry/issues/61768. it's on our radar!

michellewzhang commented 2 months ago

@johnwc changes have been deployed & you should be able to see the user message by default in the create ticket description now! let us know if you run into issues

johnwc commented 2 months ago

@michellewzhang I see it coming through, but the comment it creates is not marked as being markdown content. So it does not format correctly. I have to edit the comment and click that it is markdown.

Image

And this is just a preference, but could the link to sentry be placed after the description? The description is the most important thing, so it should be the first thing.

michellewzhang commented 2 months ago

@michellewzhang I see it coming through, but the comment it creates is not marked as being markdown content. So it does not format correctly. I have to edit the comment and click that it is markdown.

Image

And this is just a preference, but could the link to sentry be placed after the description? The description is the most important thing, so it should be the first thing.

hi @johnwc, can you send an example of what the correct formatting would be?

johnwc commented 2 months ago

@michellewzhang well the comment's format seems to be set to html, and it should be set to markdown. https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/comments/add-work-item-comment?view=azure-devops-rest-7.1&tabs=HTTP#commentformat

bruno-garcia commented 2 months ago

Looking at the PR: https://github.com/getsentry/sentry/pull/76016/files We're only adding markdown, and no reference of explicitly setting the type to html.

Maybe azuredevops defaults to html, and we need to explicitly set something to have it realize it's markdown (there's no mention of default on their docs).

We might be able to do that with a ?format=markdown : https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/comments/add-work-item-comment?view=azure-devops-rest-7.1&tabs=HTTP#uri-parameters

johnwc commented 2 months ago

Looking at the PR: https://github.com/getsentry/sentry/pull/76016/files We're only adding markdown, and no reference of explicitly setting the type to html.

Maybe azuredevops defaults to html, and we need to explicitly set something to have it realize it's markdown (there's no mention of default on their docs).

We might be able to do that with a ?format=markdown : https://learn.microsoft.com/en-us/rest/api/azure/devops/wit/comments/add-work-item-comment?view=azure-devops-rest-7.1&tabs=HTTP#uri-parameters

I do believe you are correct as far as html being default setting, as markdown was just recently added. Prior we could only use html.