using PipServices3.Commons.Refer;
using PipServices3.Components.Count;
using PipServices3.Messaging.Queues;
public class MyComponent : IReferenceable
{
private CompositeCounters _counters = new CompositeCounters();
public void SetReferences(IReferences references)
{
this._counters.SetReferences(references);
}
public void OnMessage(MessageEnvelope message)
{
var timing = this._counters.BeginTiming("mycomponent:msg_time");
try
{
this._counters.Increment("mycomponent:msg_count", 1);
...
}
catch (Exception ex)
{
this._counters.Increment("mycomponent:msg_errors", 1);
}
finally
{
timing.EndTiming();
}
}
}