in src/Microsoft.ServiceFabric.Actors/Diagnostics/PerformanceCounterProvider.cs [273:350]
private void CreateActorCounterWriters(string actorCounterInstanceName)
{
if (this.actorCounterSetInstance != null)
{
this.actorLockContentionCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(ActorLockContentionCounterWriter),
() => new ActorLockContentionCounterWriter(this.actorCounterSetInstance));
this.actorRequestProcessingTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorRequestProcessingTimeMillisecCounterName,
ActorPerformanceCounters.ActorRequestProcessingTimeMillisecBaseCounterName));
this.actorLockAcquireWaitTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorLockAcquireWaitTimeMillisecCounterName,
ActorPerformanceCounters.ActorLockAcquireWaitTimeMillisecBaseCounterName));
this.actorLockHoldTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorLockHoldTimeMillisecCounterName,
ActorPerformanceCounters.ActorLockHoldTimeMillisecBaseCounterName));
this.actorRequestDeserializationTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorRequestDeserializationTimeMillisecCounterName,
ActorPerformanceCounters.ActorRequestDeserializationTimeMillisecBaseCounterName));
this.actorResponseSerializationTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorResponseSerializationTimeMillisecCounterName,
ActorPerformanceCounters.ActorResponseSerializationTimeMillisecBaseCounterName));
this.actorOnActivateAsyncTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorOnActivateAsyncTimeMillisecCounterName,
ActorPerformanceCounters.ActorOnActivateAsyncTimeMillisecBaseCounterName));
this.actorSaveStateTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(ActorSaveStateTimeCounterWriter),
() => new ActorSaveStateTimeCounterWriter(this.actorCounterSetInstance));
this.actorLoadStateTimeCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricAverageCount64PerformanceCounterWriter),
() => new FabricAverageCount64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorLoadStateTimeMillisecCounterName,
ActorPerformanceCounters.ActorLoadStateTimeMillisecBaseCounterName));
this.actorOutstandingRequestsCounterWriter = this.CreateCounterWriter(
actorCounterInstanceName,
typeof(FabricNumberOfItems64PerformanceCounterWriter),
() => new FabricNumberOfItems64PerformanceCounterWriter(
this.actorCounterSetInstance,
ActorPerformanceCounters.ActorOutstandingRequestsCounterName));
}
}