我已经部署了我的asp。net核心应用程序,一切正常。我正在使用awslogs驱动程序,日志已正确发送到cloudwatch。但经过几天的正确工作,我现在只看到一种日志,如下所示:
因此,由于没有空间,没有显示应用程序日志。如果我更新ECS服务,日志记录会再次开始工作,表明磁盘已被清理。
此链接表明 awslogs 驱动程序不占用空间,而是将日志发送到 cloudwatch。https://docs.aws.amazon.com/AmazonECS/latest/userguide/task_cannot_pull_image.html
是否有人也面临过这个问题,并知道如何解决这个问题?
您需要将AWS日志配置中的“LibraryLogFileName”参数设置为null。
因此,在. Net Core应用程序的appsettings.json文件中,它看起来像这样:
"AWS.Logging": {
"Region": "eu-west-1",
"LogGroup": "my-log-group",
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
},
"LibraryLogFileName": null
}
这取决于您如何在应用程序中配置日志记录。AWSlgs驱动程序只是抓取发送到控制台的所有输出并将其保存到CloudWatch。NET不一定知道这一点,并将继续像以前一样编写日志。
可能 .NET 仍在将日志写入它本来会位于的任何位置。
如何排除故障和解决问题的建议:
最后,一旦您确定日志正在写入某处的文件,请选择以下选项之一
祝你好运!