これは、w3c 標準には空白の使用が含まれていないためです。ログ パーサーは空白を認識し、引用符の有無にかかわらず、それが新しいフィールドであると想定します。以下のページから
「エントリは、単一の HTTP トランザクションに関連する一連のフィールドで構成されます。フィールドは空白で区切られます。この目的のためにタブ文字を使用することをお勧めします。フィールドが特定のエントリダッシュで使用されていない場合、「-」は省略されたフィールドを示します。ディレクティブは、ロギング プロセス自体に関する情報を記録します。」
http://www.w3.org/TR/WD-logfile.html
Robert McMurray は、COM プラグインの書き方についてのブログを書いています。これは、まったく同じ問題を解決しようとする私の調査では、最良の解決策のようです ("" 内のすべての空白を "+" に置き換える正規表現を書くことを除けば)。
http://blogs.iis.net/robert_mcmurray/archive/2013/02/28/advanced-log-parser-part-7-creating-a-generic-input-format-plug-in.aspx
お役に立てれば
編集: これを行う方法があると判断しました。IIS Advanced Logging に手動で追加した X-Header-For フィールドを使用した次の例を参照してください。重要な部分は太字になっています。
LogParser.exe "SELECT SUBSTR(X-Header-For, 0, INDEX_OF(X-Header-For, ',')) as [Remote Ip], date, time, cs-uri-stem, s-contentpath, sc- status FROM $log" -i:W3C -dQuotes ON