首页 > 解决方案 > 管道不替换数组对象

问题描述

我正在尝试针对不同的环境更改我的日志记录 url 和 api 密钥。为此,我在 Azure 发布管道中使用了变量。目前,我的数据库连接字符串运行良好。

在此处输入图像描述

但是,我正在努力让日志记录变量正常工作。现在,有一个数组,我相信您将数组引用为 field.child.1.field (因此,这将分配第二个数组对象的字段。

我有这个:

 "Serilog": {
    "MinimumLevel": {
      "Default": "Debug",
      "Override": {
        "Microsoft": "Warning",
        "System": "Warning"
      }
    },
    "Enrich": [ "FromLogContext", "WithMachineName", "WithProcessId", "WithThreadId" ],

    "WriteTo": [
      {
        "Name": "Console",
        "Args": {
          "outputTemplate": "[{Timestamp:HH:mm:ss.fff} {Level:u3}] {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "Seq",
        "Args": {
          "serverUrl": "myUrl",
          "apiKey": "myApiKey"
        }
      }
    ]
  }

我正在尝试替换 serverUrl 和 apiKey。

在我的管道 lok 中,我看到的是:

它很好地完成了 ConnectionString ,但没有完成其他的。我错过了什么?

标签: azureazure-devopsazure-pipelines

解决方案


你理解正确。你的错是 中的大写字母“L” SeriLog.WriteTo.1.Args.apiKey。它应该是“Serilog.WriteTo.1.Args.apiKey”。错误在于变量apiKeyserverUrl.


推荐阅读