我目前正在Azure的app服务上托管一个ASP.NET MVC Web应用程序,并且有选择地选择使用他们的
App Service Local Cache feature
因为我的应用不需要写入本地文件系统。
这提高了我的web应用程序的性能,但我逐渐意识到,当一个文件系统(尽管有应用程序设置)很快填满本地文件系统时
"WEBSITE_HTTPLOGGING_RETENTION_DAYS": "2"
有99MB的配额(不知道为什么我不能在AppSettings中看到这个?)开始
App > Diagnostic Logs
区域。
The documentation says
它确实修改了日志文件的存储方式,但没有提到如何删除它们。
-
Web应用程序可以像当前一样继续写入日志文件和诊断数据。但是,日志文件和数据存储在本地
在虚拟机上。然后定期将它们复制到共享的
内容存储。复制到共享内容存储区是最好的情况
努力——由于虚拟机突然崩溃,写回可能会丢失
实例。
-
使用本地缓存的web应用的日志文件和数据文件夹的文件夹结构发生更改。现在有子文件夹
在存储日志文件和数据文件夹中
“唯一标识符”模式+时间戳。每个子文件夹
对应于web应用正在运行或已运行的虚拟机实例。
这已经通过Kudu控制台上的一个快速Powershell命令得到了证实
D:\home\logfiles
目录。
PS D:\home\logfiles> Get-ChildItem | Sort LastWriteTime
Get-ChildItem | Sort LastWriteTime
Mode LastWriteTime Name
---- ------------- --------------------------
d----- 11/28/2017 1:52 AM http
d----- 11/28/2017 4:42 AM kudu
d----- 11/28/2017 4:46 AM SiteExtensions
d----- 12/1/2017 1:26 AM Application
d----- 12/1/2017 1:26 AM Monaco
d----- 3/7/2018 3:37 PM 5198ab_18_03_03_06_28_59
d----- 3/7/2018 4:03 PM 907c1a_18_03_06_06_44_22
d----- 3/8/2018 3:59 PM 5198ab_18_03_07_14_25_08
d----- 3/8/2018 3:59 PM ff0fc5_18_03_07_11_46_16
d----- 3/8/2018 4:02 PM 0c1a69_18_03_07_08_14_26
d----- 3/8/2018 4:03 PM a9316b_18_03_08_04_25_31
d----- 3/9/2018 4:02 PM 5e5ff2_18_03_08_08_44_41
d----- 3/9/2018 4:02 PM c87157_18_03_09_03_50_23
d----- 3/10/2018 6:18 AM 0c1a69_18_03_09_18_29_49
d----- 3/10/2018 10:32 AM 1440de_18_03_09_11_09_37
... <Excluded for brevity>
... <Excluded for brevity>
d----- 7/31/2018 12:33 PM fe780a_18_07_30_03_36_41
d----- 7/31/2018 4:02 PM f713f0_18_07_31_04_13_17
d----- 7/31/2018 4:03 PM 2a1ef5_18_07_30_23_18_41
d----- 8/1/2018 4:17 PM 7254a1_18_07_31_08_14_27
d----- 8/1/2018 4:18 PM c01540_18_08_01_02_17_00
d----- 8/1/2018 4:18 PM bcecd7_18_07_31_09_41_33
d----- 8/1/2018 4:18 PM 11e825_18_07_31_16_28_38
d----- 8/2/2018 6:18 AM 2ee8db_18_08_01_17_19_18
d----- 8/2/2018 6:18 AM 6ba224_18_08_01_04_13_34
d----- 8/2/2018 10:33 AM dca085_18_08_01_04_14_00
d----- 8/2/2018 10:33 AM 6ead4a_18_08_01_11_08_46
d----- 8/2/2018 12:32 PM 4c87a3_18_08_02_00_07_21
d----- 8/2/2018 12:33 PM faf4de_18_07_28_16_57_44
d----- 8/2/2018 4:21 PM 46b00f_18_07_31_23_36_35
d----- 8/2/2018 4:21 PM 52a38c_18_08_01_11_02_26
d----- 8/3/2018 12:33 PM bcecd7_18_08_01_07_50_23
d----- 8/3/2018 4:02 PM 8eac1e_18_08_03_02_32_24
d----- 8/5/2018 2:35 PM 2341b7_18_08_03_04_15_08
d----- 8/6/2018 12:16 AM 0d1e3e_18_08_02_09_30_34
d----- 8/6/2018 12:17 AM 540bec_18_08_01_10_02_30
d----- 8/6/2018 11:04 AM 3952e0_18_08_05_20_58_56
d----- 8/6/2018 11:59 AM NewRelic
我的环境设置是
"WEBSITE_LOCAL_CACHE_OPTION" : "Always"
"WEBSITE_LOCAL_CACHE_SIZEINMB" : "1800"
"WEBSITE_HTTPLOGGING_RETENTION_DAYS": "2"
"WEBSITE_LOCALCACHE_READY": "TRUE"
所以问题是
1) 如何定期删除
"unique identifier" + time stamp
文件夹,例如。
3952e0_18_08_05_20_58_56
?
2)我如何能尊重我的诊断设置,例如保留2天,最大限额为99 MB?