Можем ли мы напрямую войти в Cloudwatch при запуске приложения. net в Visual Studio - PullRequest
1 голос
/ 13 января 2020

В моем приложении. net реализовано ведение журнала Serilog. Я хотел знать, могу ли я напрямую публиковать логи в AWS Cloud watch. Если да, какие шаги мне нужно предпринять. Как и где я должен настроить и сохранить AWS учетные данные. (Я не размещаю свое приложение в Ec2 или Elasti c Beanstalk).

Я сослался на ссылку ниже и несколько других ссылок и сделал в точности так, как предлагалось, но ничего не зарегистрировано в Cloud watch. Ссылка также не предлагает, как я должен дать AWS учетные данные из моей Windows системы, из которой я запускаю приложение в Visual Studio.

Как настроить приемник Serilog для регистрации в CloudWatch

1 Ответ

0 голосов
/ 14 января 2020

Вы можете использовать пакет NLog.AWS.Logger (среди прочего) из Nuget . Для его настройки у вас есть два варианта: через конфигурационный файл или через ваш код, подобный следующему:

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;
}

Согласно документации , учетные данные AWS находятся с использованием стандартного AWS SDK для. NET путь поиска учетных данных. Вы можете установить свои учетные данные, используя PowerShell следующим образом:

PS > Set-AWSCredential `
             -AccessKey [YOUR ACCESS KEY without brackets] `
             -SecretKey [YOUR SECRET KEY without brackets] `
             -StoreAs default
...