amazon-web-services - 部署到 AWS Lambda 时出现 Serilog 错误
问题描述
在 IIS/Visual Studio (.netCore 3.1) 中本地运行时,我的 Serilog 运行良好,但是当我将其部署到 AWS Lambda 时,应用程序无法启动,并且在 CloudWatch 日志中出现以下错误:
System.InvalidOperationException:尝试激活“Serilog.AspNetCore.RequestLoggingMiddleware”时无法解析“Serilog.Extensions.Hosting.DiagnosticContext”类型的服务
任何想法这意味着什么或如何解决它?
编辑显示代码:
public static void Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.WriteTo.Console()
.CreateLogger();
try
{
Log.Information("Starting up");
CreateHostBuilder(args).Build().Run();
}
catch (Exception ex)
{
Log.Fatal(ex, "Application start-up failed");
}
finally
{
Log.CloseAndFlush();
}
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.UseSerilog()
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
解决方案
推荐阅读
- android - 使用 VectorSource 时单击更改 SymbolLayer 属性
- php - 有没有办法检查多输入无线电?
- c++ - 未定义对“typeinfo for
" - mongodb - mongodb 连接两个具有多个数组的表
- spring-boot - 当使用 CometD 3.0.9 和 tomcat 8.5.37 启动 1.5.19 时,创建名为“primeLocateCometDService”的 bean 时出错
- python - 将字符串隐藏到字典列表中
- objective-c - 表格视图日期降序快速
- node.js - couchbase 从 nodejs 创建全文搜索索引
- dialogflow-es - Dialogflow:交互式画布给出错误
- neo4j - 如何创建查询以将多个数据与数字匹配