Browse Source

More telemetry.

pull/815/head
Sebastian 4 years ago
parent
commit
b1e563517a
  1. 5
      backend/src/Squidex.Infrastructure/Orleans/LoggingFilter.cs
  2. 12
      backend/src/Squidex.Infrastructure/States/Persistence.cs

5
backend/src/Squidex.Infrastructure/Orleans/LoggingFilter.cs

@ -21,6 +21,10 @@ namespace Squidex.Infrastructure.Orleans
} }
public async Task Invoke(IIncomingGrainCallContext context) public async Task Invoke(IIncomingGrainCallContext context)
{
var name = $"Grain/{context.Grain?.GetType().Name}/{context.ImplementationMethod?.Name}";
using (Telemetry.Activities.StartActivity(name))
{ {
try try
{ {
@ -41,6 +45,7 @@ namespace Squidex.Infrastructure.Orleans
throw; throw;
} }
} }
}
private void Log(IIncomingGrainCallContext context, Exception ex) private void Log(IIncomingGrainCallContext context, Exception ex)
{ {

12
backend/src/Squidex.Infrastructure/States/Persistence.cs

@ -68,15 +68,21 @@ namespace Squidex.Infrastructure.States
public async Task DeleteAsync() public async Task DeleteAsync()
{ {
if (UseSnapshots) if (UseSnapshots)
{
using (Telemetry.Activities.StartActivity("Persistence/ReadState"))
{ {
await snapshotStore.RemoveAsync(ownerKey); await snapshotStore.RemoveAsync(ownerKey);
} }
}
if (UseEventSourcing) if (UseEventSourcing)
{
using (Telemetry.Activities.StartActivity("Persistence/ReadEvents"))
{ {
await eventStore.DeleteStreamAsync(streamName.Value); await eventStore.DeleteStreamAsync(streamName.Value);
} }
} }
}
public async Task ReadAsync(long expectedVersion = EtagVersion.Any) public async Task ReadAsync(long expectedVersion = EtagVersion.Any)
{ {
@ -171,7 +177,10 @@ namespace Squidex.Infrastructure.States
return; return;
} }
using (Telemetry.Activities.StartActivity("Persistence/WriteState"))
{
await snapshotStore.WriteAsync(ownerKey, state, oldVersion, newVersion); await snapshotStore.WriteAsync(ownerKey, state, oldVersion, newVersion);
}
versionSnapshot = newVersion; versionSnapshot = newVersion;
@ -193,9 +202,12 @@ namespace Squidex.Infrastructure.States
var eventData = events.Select(x => eventDataFormatter.ToEventData(x, eventCommitId, true)).ToArray(); var eventData = events.Select(x => eventDataFormatter.ToEventData(x, eventCommitId, true)).ToArray();
try try
{
using (Telemetry.Activities.StartActivity("Persistence/WriteEvents"))
{ {
await eventStore.AppendAsync(eventCommitId, streamName.Value, oldVersion, eventData); await eventStore.AppendAsync(eventCommitId, streamName.Value, oldVersion, eventData);
} }
}
catch (WrongEventVersionException ex) catch (WrongEventVersionException ex)
{ {
throw new InconsistentStateException(ex.CurrentVersion, ex.ExpectedVersion, ex); throw new InconsistentStateException(ex.CurrentVersion, ex.ExpectedVersion, ex);

Loading…
Cancel
Save