Search Unity

Better JIRA integration for User Reporting?

Discussion in 'Unity Cloud Diagnostics' started by kgtan, Feb 26, 2019.

  1. kgtan

    kgtan

    Joined:
    Apr 28, 2015
    Posts:
    10
    I'm investigating the possibility of using Unity's User Reporting instead of Zendesk for our multiplayer game as a service.

    I've successfully set up User Reporting with JIRA integration, however, the JIRA issue created only contains the Summary and a link to the Unity report. So, I have a few questions:

    1. Is Unity3D planning to improve on that integration (i.e. copies over all the other named fields and dimensions as well e.g. description, user ID, contact email, screenshots etc, plus attachments and device info into JIRA)?
    2. Is there a way to not immediately create a JIRA issue via the integration, and instead have a button to selectively "promote" a Unity report into a JIRA issue, in order to reduce the clutter in JIRA?
    3. Also, anyone knows of a 3rd party JIRA/Unity plugin that might help us in this regard in the mean time? We're releasing in a few months.
    4. Also, will there be a higher tier limit (instead of the 1,000 user reports a day and 90 days data retention), in case we need to keep a bug for longer than 3 months (or if we push a particularly buggy app update)?
    5. Is there a way to turn the "UserReport" object into a JSON string with all the information including analytics and device information from code?

    Thanks!
     
    Last edited: Feb 26, 2019
  2. Phantomsom

    Phantomsom

    Joined:
    Oct 21, 2017
    Posts:
    4
    Hi, I'm not from Unity plus I'm not familiar with JIRA so I can't answer 1,2,3,4. But I could answer 5.
    upload_2019-2-27_9-34-32.png
    T̶h̶e̶r̶e̶'̶s̶ ̶t̶h̶i̶s̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶ ̶i̶n̶ ̶t̶h̶e̶ ̶d̶o̶c̶u̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶t̶h̶a̶t̶ ̶s̶u̶g̶g̶e̶s̶t̶s̶ ̶t̶h̶a̶t̶ ̶i̶t̶'̶s̶ ̶a̶b̶l̶e̶ ̶t̶o̶ ̶s̶t̶o̶r̶e̶ ̶U̶s̶e̶r̶R̶e̶p̶o̶r̶t̶s̶ ̶t̶o̶ ̶d̶i̶s̶k̶ ̶(̶b̶u̶t̶ ̶I̶ ̶d̶o̶n̶'̶t̶ ̶k̶n̶o̶w̶ ̶w̶h̶e̶r̶e̶ ̶i̶n̶ ̶d̶i̶s̶k̶)̶,̶ ̶p̶l̶u̶s̶ ̶t̶h̶e̶i̶r̶ ̶i̶m̶p̶l̶e̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶o̶f̶ ̶i̶t̶ ̶i̶s̶ ̶u̶n̶k̶n̶o̶w̶n̶,̶ ̶b̶u̶t̶ ̶b̶e̶f̶o̶r̶e̶ ̶I̶ ̶k̶n̶e̶w̶ ̶a̶b̶o̶u̶t̶ ̶t̶h̶i̶s̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶,̶ ̶y̶e̶s̶ ̶y̶o̶u̶ ̶c̶a̶n̶ ̶s̶e̶r̶i̶a̶l̶i̶z̶e̶ ̶U̶s̶e̶r̶R̶e̶p̶o̶r̶t̶ ̶v̶a̶r̶i̶a̶b̶l̶e̶s̶ ̶i̶n̶t̶o̶ ̶a̶ ̶j̶s̶o̶n̶ ̶s̶t̶r̶i̶n̶g̶.̶ ̶T̶h̶a̶t̶'̶s̶ ̶t̶h̶e̶ ̶i̶m̶p̶l̶e̶m̶e̶n̶t̶a̶t̶i̶o̶n̶ ̶I̶'̶m̶ ̶h̶a̶v̶i̶n̶g̶ ̶n̶o̶w̶,̶ ̶b̶u̶t̶ ̶I̶'̶m̶ ̶h̶a̶v̶i̶n̶g̶ ̶t̶r̶o̶u̶b̶l̶e̶s̶ ̶u̶s̶i̶n̶g̶ ̶t̶h̶e̶ ̶T̶a̶k̶e̶S̶c̶r̶e̶e̶n̶s̶h̶o̶t̶F̶r̶o̶m̶S̶o̶u̶r̶c̶e̶ ̶f̶u̶n̶c̶t̶i̶o̶n̶ ̶s̶o̶ ̶t̶h̶a̶t̶ ̶i̶t̶ ̶t̶a̶k̶e̶s̶ ̶i̶n̶ ̶m̶y̶ ̶s̶e̶r̶i̶a̶l̶i̶z̶e̶d̶ ̶s̶c̶r̶e̶e̶n̶s̶h̶o̶t̶ ̶d̶a̶t̶a̶ ̶a̶s̶ ̶t̶h̶e̶ ̶s̶c̶r̶e̶e̶n̶s̶h̶o̶t̶ ̶t̶o̶ ̶s̶h̶o̶w̶ ̶u̶p̶ ̶i̶n̶ ̶u̶n̶i̶t̶y̶ ̶c̶l̶o̶u̶d̶ ̶d̶i̶a̶g̶n̶o̶s̶t̶i̶c̶s̶/̶u̶s̶e̶r̶ ̶r̶e̶p̶o̶r̶t̶i̶n̶g̶.̶

    [EDIT], There's this function in the documentation that suggest that is able to store UserReport objects on disk. I now know how Unity serializes their UserReport, and know where it's stored to. This function stores whatever UserReport object you pass it into, and stores it into your project folder as a json file. Like literally the first screen you see when you click into your project folder, there should be a "UserReport.json" json file in there.
     
    Last edited: Feb 27, 2019
  3. kgtan

    kgtan

    Joined:
    Apr 28, 2015
    Posts:
    10
    Interesting - I wonder if I'm able to access this created file from client devices? If yes, then maybe I can create my own JIRA-UnityUserReport plugin that uses all the data collected by Unity to create JIRA issue tickets.
     
  4. johng_unity

    johng_unity

    Unity Technologies

    Joined:
    Nov 5, 2015
    Posts:
    158
    A few answers to your questions:

    1) We've gotten that request from several users. We're looking into it but don't yet have an ETA of when we'll add that functionality.
    2) Currently there is no way to "Promote" a Unity report into a JIRA issue but thank you for the feature request. We will look into that.
    3) You may want to check the asset store for other plugins.
    4) We're looking into adding a new tier that will have a higher limit and more storage. Unfortunately, we don't have an ETA yet for that either.
    5) string json = UnityUserReporting.CurrentClient.Platform.SerializeJson(userReport); should allow you to get the user report json string.
     
  5. kgtan

    kgtan

    Joined:
    Apr 28, 2015
    Posts:
    10
    Thanks for that! I'm going to investigate using the serialised data to upload directly to JIRA now. Cheers!
     
  6. Phantomsom

    Phantomsom

    Joined:
    Oct 21, 2017
    Posts:
    4
    Hi John,

    For 5), On the UnityUserReporting.CurrentClient.SaveUserReportOnDisk(report) function, is there a way to modify where the serialized report will be saved? For example, I tried having my android project call this function, but the function returns a "Access to the path "/UserReport.json" is denied." exception.

    Also, when creating a new UserReportingClient, if the platform is detected to be IOS or Android, will the UnityUserReporting.CurrentClient.SaveUserReportingToDisk() function change it's writing directory automatically?
     
    Last edited: Mar 1, 2019
  7. bretth_unity

    bretth_unity

    Unity Technologies

    Joined:
    Dec 1, 2016
    Posts:
    34
    This is the entire contents of the SaveUserReportToDisk() method:

    Code (CSharp):
    1.  
    2.             string json = this.Platform.SerializeJson(userReport);
    3.             File.WriteAllText("UserReport.json", json);
    4.  
    The method is intended for debugging purposes. I would just create your own method for you own needs. :)