gpt4 book ai didi

asp.net-web-api - Serilog ElasticSearch接收器在WebApi中不起作用

转载 作者:行者123 更新时间:2023-12-03 02:03:45 26 4
gpt4 key购买 nike

我在Azure Worker角色和带有ElasticSearch接收器的WebApi中使用Serilog。

在“ worker 角色”上一切正常。

在WebApi上,我尝试了“跟踪和电子邮件”接收器,它们工作正常。 ElasticSearch接收器根本不记录日志。

这是我的配置:

var logger = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.Trace()
.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("https://myElasticServer")))
.CreateLogger();

如果我尝试在 Controller 中编写日志,则将它们包含在跟踪中,而在跟踪中则没有。

最佳答案

问题来自自签名证书。

我创建了自己的CertificateValidation方法,以基于排除列表忽略证书验证

private bool MyCertificateValidationCallback(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Security.Cryptography.X509Certificates.X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
if (sslPolicyErrors == SslPolicyErrors.None)
return true;

var request = sender as HttpWebRequest;

if (request != null)
{
var exclusion = ConfigurationManager.AppSettings["CertificateExclusion"];

if (exclusion.Contains(request.Host))
return true;
}

return false;
}

并在应用程序启动时注册
ServicePointManager.ServerCertificateValidationCallback = MyCertificateValidationCallback;

关于asp.net-web-api - Serilog ElasticSearch接收器在WebApi中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28960698/

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