Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 15 additions & 13 deletions Runtime/BacktraceClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -578,45 +578,46 @@ public bool EnableBreadcrumbsSupport()
return Database.EnableBreadcrumbsSupport();
}
#if !UNITY_WEBGL
public void EnableMetrics()
public bool EnableMetrics()
{
EnableMetrics(true);
return EnableMetrics(true);
}
private void EnableMetrics(bool enableIfConfigurationIsDisabled = true)
private bool EnableMetrics(bool enableIfConfigurationIsDisabled = true)
{
if (!Configuration.EnableMetricsSupport)
{
if (!enableIfConfigurationIsDisabled)
{
return;
return false;
}
Debug.LogWarning("Event aggregation configuration was disabled. Enabling it manually via API");
}
var universeName = Configuration.GetUniverseName();
var token = Configuration.GetToken();
EnableMetrics(
BacktraceMetrics.GetDefaultUniqueEventsUrl(universeName, token),
BacktraceMetrics.GetDefaultSummedEventsUrl(universeName, token),
Configuration.GetEventAggregationIntervalTimerInMs());
return EnableMetrics(BacktraceMetrics.DefaultUniqueAttributeName);
}

public void EnableMetrics(string uniqueAttributeName = BacktraceMetrics.DefaultUniqueAttributeName)
public bool EnableMetrics(string uniqueAttributeName = BacktraceMetrics.DefaultUniqueAttributeName)
{
var universeName = Configuration.GetUniverseName();
if(string.IsNullOrEmpty(universeName))
{
Debug.LogWarning("Cannot initialize event aggregation - Unknown Backtrace URL.");
return false;
}
var token = Configuration.GetToken();
EnableMetrics(
BacktraceMetrics.GetDefaultUniqueEventsUrl(universeName, token),
BacktraceMetrics.GetDefaultSummedEventsUrl(universeName, token),
Configuration.GetEventAggregationIntervalTimerInMs(),
uniqueAttributeName);
return true;
}

public void EnableMetrics(string uniqueEventsSubmissionUrl, string summedEventsSubmissionUrl, uint timeIntervalInSec = BacktraceMetrics.DefaultTimeIntervalInSec, string uniqueAttributeName = BacktraceMetrics.DefaultUniqueAttributeName)
public bool EnableMetrics(string uniqueEventsSubmissionUrl, string summedEventsSubmissionUrl, uint timeIntervalInSec = BacktraceMetrics.DefaultTimeIntervalInSec, string uniqueAttributeName = BacktraceMetrics.DefaultUniqueAttributeName)
{
if (_metrics != null)
{
Debug.LogWarning("Backtrace metrics support is enabled. Please use BacktraceClient.Metrics.");
return;
return false;
}
_metrics = new BacktraceMetrics(
attributeProvider: AttributeProvider,
Expand All @@ -629,6 +630,7 @@ public void EnableMetrics(string uniqueEventsSubmissionUrl, string summedEventsS
IgnoreSslValidation = Configuration.IgnoreSslValidation
};
StartupMetrics();
return true;
}

private void StartupMetrics()
Expand Down
4 changes: 2 additions & 2 deletions Runtime/Interfaces/IBacktraceClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,12 +64,12 @@ public interface IBacktraceClient
/// <summary>
/// Enable event aggregation support.
/// </summary>
void EnableMetrics();
bool EnableMetrics();

/// <summary>
/// Enable event aggregation support.
/// </summary>
void EnableMetrics(string uniqueEventsSubmissionUrl, string summedEventsSubmissionUrl, uint timeIntervalInSec, string uniqueEventName);
bool EnableMetrics(string uniqueEventsSubmissionUrl, string summedEventsSubmissionUrl, uint timeIntervalInSec, string uniqueEventName);
#endif
}
}
3 changes: 2 additions & 1 deletion Runtime/Model/BacktraceConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -346,7 +346,8 @@ public string GetUniverseName()
var domainIndex = submissionUrl.IndexOf(backtraceDomain);
if (domainIndex == -1)
{
throw new ArgumentException("Invalid Backtrace url");
// capture situation when the URL doesn't point to known Backtrace URL
return null;
}

var uri = new UriBuilder(submissionUrl);
Expand Down