-
Notifications
You must be signed in to change notification settings - Fork 3
Analytic QNA works with real data (no more Q&A) #8
Conversation
string[] questions = new string[] | ||
{ | ||
"Is my daily active users better or worse than it was last week?", | ||
"If the number of monthly active players in France increases by 30%, what would be the percentage increase to the overall monthly active players?", | ||
"What is my 2-days retention average? Was my 2-days retention in the last few days was better or worse than that?", |
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.
Should we be reviewing these sorts of questions for grammatical correctness as well more natural phrasing?
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.
yes please, any suggestion for improvement is welcomed!
if (!latestReports.ContainsKey("EngagementMetricsRollupReportCSV")) | ||
{ | ||
GameReport gameEngagementRollupReport = (await reportDataFetcher.FetchByQueryAsync( | ||
$"SELECT TOP 1 * FROM c WHERE c.TitleId='{titleId}' and c.ReportName='EngagementMetricsRollupReportCSV' ORDER BY c.ReportDate DESC", |
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.
The below query data already should be part of the previous query. Not sure making one more query will help anything.
$"SELECT TOP 1 * FROM c WHERE c.TitleId='{titleId}' #Pending
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 thought this one always has the ReportDate set to the first day of the month. Checking...
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.
Confirmed this is needed, since this report data is always the first date of the month
{ | ||
source = source.Substring(0, source.Length - wordToRemove.Length); | ||
Console.WriteLine($"Error: {ex.Message}"); | ||
return new List<GameReport>(); |
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.
Can we return something to the user, when there is no data? After the exception, there is no data, so we can't proceed to next steps. #Resolved
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.
Make sense, I'll just let it throw in this case
public class DailyOverviewReportRecord | ||
{ | ||
public static string GetHeader() => | ||
"Timestamp,TotalLogins,UniqueLogins,UniquePayers,Revenue,Purchases,TotalCalls,TotalSuccessfulCalls,TotalErrors,Arpu,Arppu,AvgPurchasePrice,NewUsers"; |
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.
Do we need these classes even after getting data from cosmos database? #Pending
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.
Mainly I am talking about GetHeader
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.
Yes, since CosmodDB doesn't give headers or description. It has properties in the non-csv report which are like the properties names of this class
Motivation and Context
At this point I kept the full example in a single file, but it has grown enough that I'd need to split it.
In next PR I'm going to move our examples to a new project.
Description
Contribution Checklist