import { DataDogLogger } from 'pip-services4-datadog-node';
import { ConfigParams, Context, IConfigurable, IOpenable } from 'pip-services4-components-node';
class MyComponentA implements IConfigurable, IOpenable {
private dataDogLog = true;
protected logger: DataDogLogger;
public constructor(ctx: Context, logger: DataDogLogger) {
this.logger = logger;
if (this.dataDogLog) {
this.logger.info(ctx, "MyComponentA has been created.");
}
}
public configure(config: ConfigParams): void {
this.logger.configure(config);
}
public isOpen(): boolean {
return this.logger.isOpen();
}
public async open(ctx: Context): Promise<void> {
this.logger.open(ctx);
}
public async close(ctx: Context): Promise<void> {
this.logger.close(ctx);
}
public myMethod(ctx: Context): void {
try {
if (this.dataDogLog) {
console.log("Hola amigo");
console.log("Bonjour mon ami");
this.logger.info(ctx, "Greetings created.");
}
} finally {
this.logger.info(ctx, "Finally reached.");
}
}
}