gpt4 book ai didi

c# - Serilog.Sink.Mail 的动态应用设置

转载 作者:行者123 更新时间:2023-12-04 03:57:20 25 4
gpt4 key购买 nike

我想将 Serilog.Sinks.Mail 与存储在 appsettings json 文件中的配置设置一起使用,并且可以动态更改我发送的每封邮件的主题和邮件接收者。我为 mailSubject 设置了 {Message},这样我就可以将日志消息中的第一个单词放入我的主题中,但我想为每封邮件预定义主题。

示例:在事件 A 中,将主题为“事件 A”的邮件发送至 PersonA@something.com。在事件 B 中,将主题为“事件 B”的邮件发送至 PersonB@something.com 等等。

有没有办法用 Serilog 做到这一点,或者我应该为邮件使用其他东西吗?

目前我的邮件应用设置如下所示:

  {
"Name": "Email",
"Args": {
"fromEmail": "fromEmail@something.com",
"toEmail": "testmail@something.com",
"mailServer": "testmailServer",
"batchPostingLimit": 1,
"mailSubject": "{Message}",
"outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss} [{Level}] {Message}{NewLine:1}{Exception:1}"
}

最佳答案

我想不出一个简单的方法来做到这一点。我认为最好是在 C# 代码中进行配置,而不是通过 appsettings.json 文件进行配置。

例如,您可以使用 Serilog.Sinks.Map ( https://github.com/serilog/serilog-sinks-map ) 根据触发它的事件配置不同的接收器 ...

您仍然可以从 appsettings.json 加载常用内容,但您必须自己加载这些设置。

关于c# - Serilog.Sink.Mail 的动态应用设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63630431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com