You can use NLog.AWS.Logger
package (among others) from Nuget. For configuring it you have two options: via config file or through your code like this:
public static async Task Main(string[] args)
{
ConfigureNLog();
Logger logger = LogManager.GetCurrentClassLogger();
logger.Info("my test log entry");
}
static void ConfigureNLog()
{
var config = new LoggingConfiguration();
var consoleTarget = new ColoredConsoleTarget();
config.AddTarget("console", consoleTarget);
var awsTarget = new AWSTarget()
{
LogGroup = "NLog.ProgrammaticConfigurationExample",
Region = "eu-west-1"
};
config.AddTarget("aws", awsTarget);
config.LoggingRules.Add(new LoggingRule("*", LogLevel.Debug, consoleTarget));
config.LoggingRules.Add(new LoggingRule("*", LogLevel.Debug, awsTarget));
LogManager.Configuration = config;
}
According to the documentation, the AWS credentials are found using the standard AWS SDK for .NET credentials search path. You can set your credentials using PowerShell
like follows:
PS > Set-AWSCredential `
-AccessKey [YOUR ACCESS KEY without brackets] `
-SecretKey [YOUR SECRET KEY without brackets] `
-StoreAs default