繁体   English   中英

使用 PowerShell 删除 IIS 自定义日志字段

[英]Remove IIS custom log field with PowerShell

我正在尝试使用 PowerShell 删除 IIS 上的自定义日志字段。 我正在使用

Remove-WebConfigurationProperty -PSPath "MACHINE/WEBROOT/APPHOST" -Filter "system.applicationHost/sites/siteDefaults/logFile/customFields/add[logFieldName='TE']" -Name "." -AtIndex 0 

但我收到以下消息:

WARNING: Target configuration object 'system.applicationHost/sites/siteDefaults/logFile/customFields/add[logFieldName=TE] is not found at path 'MACHINE/WEBROOT/APPHOST'.

如何删除自定义字段?

我不确定您的方法是否有效,但是您可以通过以下方式轻松删除自定义日志字段:

  • 获取当前值(包含以逗号分隔的字段名称列表的字符串)
  • 使用替换从字符串中删除所需的字段名称和备用逗号
  • 将自定义日志字段属性设置为更新的字段列表。

在 POSH 中:

$currentFields = Get-WebConfigurationProperty -Filter System.Applicationhost/Sites/SiteDefaults/logfile -Name LogExtFileFlags

$currentFields = $currentFields.Replace(",TE", "");

Set-WebConfigurationProperty -Filter System.Applicationhost/Sites/SiteDefaults/logfile -Name LogExtFileFlags -Value $currentFields

供将来参考:要运行的正确Remove-WebConfigurationProperty cmdlet 是:

Remove-WebConfigurationProperty  -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/siteDefaults/logFile/customFields" -name "." -AtElement @{logFieldName='TE'};

刚刚测试,它的工作原理

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM