error checking around GA

This commit is contained in:
TidusJar 2016-12-11 19:21:42 +00:00
commit defc5a7a91

View file

@ -49,42 +49,90 @@ namespace PlexRequests.Helpers.Analytics
public void TrackEvent(Category category, Action action, string label, string username, string clientId, int? value = null) public void TrackEvent(Category category, Action action, string label, string username, string clientId, int? value = null)
{ {
try
{
var cat = category.ToString(); var cat = category.ToString();
var act = action.ToString(); var act = action.ToString();
Track(HitType.@event, username, cat, act, label, clientId, value); Track(HitType.@event, username, cat, act, label, clientId, value);
} }
catch (Exception ex)
{
Log.Error(ex);
}
}
public async void TrackEventAsync(Category category, Action action, string label, string username, string clientId, int? value = null) public async void TrackEventAsync(Category category, Action action, string label, string username, string clientId, int? value = null)
{
try
{ {
var cat = category.ToString(); var cat = category.ToString();
var act = action.ToString(); var act = action.ToString();
await TrackAsync(HitType.@event, username, cat, act, clientId, label, value); await TrackAsync(HitType.@event, username, cat, act, clientId, label, value);
}
catch (Exception ex)
{
Log.Error(ex);
}
} }
public void TrackPageview(Category category, Action action, string label, string username, string clientId, int? value = null) public void TrackPageview(Category category, Action action, string label, string username, string clientId, int? value = null)
{
try
{ {
var cat = category.ToString(); var cat = category.ToString();
var act = action.ToString(); var act = action.ToString();
Track(HitType.@pageview, username, cat, act, clientId, label, value); Track(HitType.@pageview, username, cat, act, clientId, label, value);
}
catch (Exception ex)
{
Log.Error(ex);
}
} }
public async Task TrackPageviewAsync(Category category, Action action, string label, string username, string clientId, int? value = null) public async Task TrackPageviewAsync(Category category, Action action, string label, string username, string clientId, int? value = null)
{
try
{ {
var cat = category.ToString(); var cat = category.ToString();
var act = action.ToString(); var act = action.ToString();
await TrackAsync(HitType.@pageview, username, cat, act, clientId, label, value); await TrackAsync(HitType.@pageview, username, cat, act, clientId, label, value);
}
catch (Exception ex)
{
Log.Error(ex);
}
} }
public void TrackException(string message, string username, string clientId, bool fatal) public void TrackException(string message, string username, string clientId, bool fatal)
{ {
try
{
var fatalInt = fatal ? 1 : 0; var fatalInt = fatal ? 1 : 0;
Track(HitType.exception, message, fatalInt, username, clientId); Track(HitType.exception, message, fatalInt, username, clientId);
} }
catch (Exception ex)
{
Log.Error(ex);
}
}
public async Task TrackExceptionAsync(string message, string username, string clientId, bool fatal) public async Task TrackExceptionAsync(string message, string username, string clientId, bool fatal)
{ {
try
{
var fatalInt = fatal ? 1 : 0; var fatalInt = fatal ? 1 : 0;
await TrackAsync(HitType.exception, message, fatalInt, username, clientId); await TrackAsync(HitType.exception, message, fatalInt, username, clientId);
} }
catch (Exception ex)
{
Log.Error(ex);
}
}
private void Track(HitType type, string username, string category, string action, string clientId, string label, int? value = null) private void Track(HitType type, string username, string category, string action, string clientId, string label, int? value = null)
{ {