@ -6,6 +6,7 @@ using Volo.Abp.DependencyInjection;
using Volo.Abp.Telemetry.Activity ;
using Volo.Abp.Telemetry.Activity ;
using Volo.Abp.Telemetry.Activity.Contracts ;
using Volo.Abp.Telemetry.Activity.Contracts ;
using Volo.Abp.Telemetry.Constants ;
using Volo.Abp.Telemetry.Constants ;
using ActivityEvent = Volo . Abp . Telemetry . Activity . ActivityEvent ;
namespace Volo.Abp.Telemetry ;
namespace Volo.Abp.Telemetry ;
@ -23,11 +24,11 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
_ telemetryActivityDataBuilder = telemetryActivityDataBuilder ;
_ telemetryActivityDataBuilder = telemetryActivityDataBuilder ;
}
}
public IAsyncDisposable TrackActivity ( string activityName , Action < ActivityData > ? configure = null )
public IAsyncDisposable TrackActivity ( string activityName , Action < ActivityEvent > ? configure = null )
{
{
Check . NotNullOrEmpty ( activityName , nameof ( activityName ) ) ;
Check . NotNullOrEmpty ( activityName , nameof ( activityName ) ) ;
var stopwatch = Stopwatch . StartNew ( ) ;
var stopwatch = Stopwatch . StartNew ( ) ;
var activityData = new ActivityData ( activityName ) ;
var activityData = new ActivityEvent ( activityName ) ;
configure ? . Invoke ( activityData ) ;
configure ? . Invoke ( activityData ) ;
@ -40,30 +41,30 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
} ) ;
} ) ;
}
}
public IAsyncDisposable TrackActivity ( ActivityData activityData )
public IAsyncDisposable TrackActivity ( ActivityEvent activityEvent )
{
{
var stopwatch = Stopwatch . StartNew ( ) ;
var stopwatch = Stopwatch . StartNew ( ) ;
return new AsyncDisposeFunc ( async ( ) = >
return new AsyncDisposeFunc ( async ( ) = >
{
{
stopwatch . Stop ( ) ;
stopwatch . Stop ( ) ;
activityData . ActivityDuration = stopwatch . ElapsedMilliseconds ;
activityEvent . ActivityDuration = stopwatch . ElapsedMilliseconds ;
await AddActivityAsync ( activityData ) ;
await AddActivityAsync ( activityEvent ) ;
} ) ;
} ) ;
}
}
public Task AddActivityAsync ( ActivityData data )
public Task AddActivityAsync ( ActivityEvent @event )
{
{
_ = Task . Run ( async ( ) = >
_ = Task . Run ( async ( ) = >
{
{
try
try
{
{
await _ telemetryActivityDataBuilder . BuildAsync ( data ) ;
await _ telemetryActivityDataBuilder . BuildAsync ( @event ) ;
await _ telemetryActivityStorage . BufferActivityAsync ( data ) ;
await _ telemetryActivityStorage . BufferActivityAsync ( @event ) ;
if ( data . ActivityName = = ActivityNameConsts . AbpStudioClose )
if ( @event . ActivityName = = ActivityNameConsts . AbpStudioClose )
{
{
await _ telemetryActivityStorage . EndSessionAsync ( ) ;
await _ telemetryActivityStorage . EndSessionAsync ( ) ;
}
}
@ -84,13 +85,13 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
public async Task AddActivityAsync ( string activityName , string? details = null )
public async Task AddActivityAsync ( string activityName , string? details = null )
{
{
await AddActivityAsync ( new ActivityData ( activityName , details ) ) ;
await AddActivityAsync ( new ActivityEvent ( activityName , details ) ) ;
}
}
public async Task AddActivityAsync ( string activityName , Action < ActivityData > configure )
public async Task AddActivityAsync ( string activityName , Action < ActivityEvent > configure )
{
{
Check . NotNullOrEmpty ( activityName , nameof ( activityName ) ) ;
Check . NotNullOrEmpty ( activityName , nameof ( activityName ) ) ;
var activityData = new ActivityData ( activityName ) ;
var activityData = new ActivityEvent ( activityName ) ;
configure ? . Invoke ( activityData ) ;
configure ? . Invoke ( activityData ) ;
@ -99,7 +100,7 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
public async Task AddErrorActivityAsync ( Action < Dictionary < string , object > > configure )
public async Task AddErrorActivityAsync ( Action < Dictionary < string , object > > configure )
{
{
var activityData = new ActivityData ( ActivityNameConsts . Error )
var activityData = new ActivityEvent ( ActivityNameConsts . Error )
{
{
AdditionalProperties = new Dictionary < string , object > ( )
AdditionalProperties = new Dictionary < string , object > ( )
} ;
} ;
@ -111,7 +112,7 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
public async Task AddErrorActivityAsync ( string errorMessage )
public async Task AddErrorActivityAsync ( string errorMessage )
{
{
var activityData = new ActivityData ( ActivityNameConsts . Error )
var activityData = new ActivityEvent ( ActivityNameConsts . Error )
{
{
AdditionalProperties = new Dictionary < string , object >
AdditionalProperties = new Dictionary < string , object >
{
{
@ -124,7 +125,7 @@ public class TelemetryService : ITelemetryService, ISingletonDependency
public async Task AddErrorForActivityAsync ( string failingActivity , string errorMessage )
public async Task AddErrorForActivityAsync ( string failingActivity , string errorMessage )
{
{
var activityData = new ActivityData ( ActivityNameConsts . Error )
var activityData = new ActivityEvent ( ActivityNameConsts . Error )
{
{
AdditionalProperties = new Dictionary < string , object >
AdditionalProperties = new Dictionary < string , object >
{
{