using System;
using System.Threading.Tasks;
using PipServices3.Commons.Config;
using PipServices3.Commons.Run;
using PipServices3.DataDog.Log;
public class MyComponentA: IConfigurable, IOpenable
{
private bool dataDogLog = true;
protected DataDogLogger logger;
public MyComponentA(DataDogLogger logger)
{
this.logger = logger;
if (dataDogLog)
logger.Info("123", "MyComponentA has been created.");
}
public void Configure(ConfigParams config)
{
logger.Configure(config);
}
public DataDogLogger GetCounters()
{
return logger;
}
public bool IsOpen()
{
return logger.IsOpen();
}
public async Task OpenAsync(string correlationId)
{
await logger.OpenAsync(correlationId);
}
public async Task CloseAsync(string correlationId)
{
await logger.CloseAsync(correlationId);
}
public void MyMethod()
{
try
{
if (dataDogLog)
{
Console.WriteLine("Hola amigo");
Console.WriteLine("Bonjour mon ami");
logger.Info("123", "Greetings created.");
}
} finally
{
logger.Info("123", "Finally reached.");
}
}
}