import { IReferenceable, IReferences } from "pip-services3-commons-nodex";
import { CompositeCounters, CompositeLogger } from "pip-services3-components-nodex";
import { MessageEnvelope } from "pip-services3-messaging-nodex";
class MyComponent implements IReferenceable {
private _counters: CompositeCounters = new CompositeCounters();
public setReferences(refs: IReferences) {
this._counters.setReferences(refs);
}
public onMessage(message: MessageEnvelope) {
let timing = this._counters.beginTiming("mycomponent:msg_time");
try {
this._counters.increment("mycomponent:msg_count", 1);
...
} catch (ex) {
this._counters.increment("mycomponent:msg_errors", 1);
} finally {
timing.endTiming();
}
}
}