Nlog Отправка в цель CosmosDB - PullRequest
       11

Nlog Отправка в цель CosmosDB

0 голосов
/ 16 декабря 2018

Я использую Nlog и пытаюсь отправить его в цель CosmosDB (DocumentDB), используя https://www.nuget.org/packages/Nlog.DocumentDBTarget/

мой код конфигурации выглядит следующим образом

  var documentDBTarget = new DocumentDBTarget()
        {
            Name = "logDocument",
            EndPoint = "https://[my endpoint].documents.azure.com:443/",
            AuthorizationKey = "[my auth key]",
            Collection = "[my collection]",
            Database = "[my database]",
            Layout=jsonLayout
        }; 
        config.AddTarget(documentDBTarget);
        config.AddRuleForAllLevels(documentDBTarget);

Я объявил jsonLayoutа затем я настраиваю регистратор и использую его для начала регистрации.это работало нормально, когда я входил в локальную файловую или консольную цель, но это не работает с cosmosDB

LogManager.Configuration =config; 
Logger logger = LogManager.GetLogger("Example");          
logger.Info("{object}");

что мне не хватает?документация для https://github.com/goto10hq/NLog.DocumentDB?files=1 Я не нашел никакой информации о публикации с помощью Nlog. Я нашел только информацию о его настройке, которую, я считаю, я сделал правильно

Спасибо

1 Ответ

0 голосов
/ 16 декабря 2018

Работает на моем компьютере.Соответствует ли объект, который вы пытаетесь зарегистрировать, макету JSON?

var jsonLayout = new JsonLayout()
        {
            Attributes =
                {
                    new JsonAttribute("name", "${name}"),
                    new JsonAttribute("level", "${level}"),
                    new JsonAttribute("message", "${message}"),
                }
        };
…

logger.Info(new
        {
            Name = "SomeName",
            Level = "SomeLevel",
            Message = "HelloWorld"
        });
...