Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

AspNetRequest Cookie Layout Renderer

Rolf Kristensen edited this page Aug 28, 2023 · 35 revisions

ASP.NET Request Cookie key/value pairs.

Platforms Supported: All

Introduced in NLog.Web 4.3

Configuration Syntax

${aspnet-request-cookie:items=String[]:outputFormat=Enum
    :itemSeparator=String:valueSeparator=String
    :valuesOnly=Boolean}

Parameters

Rendering Options

  • items - Cookie key name(s). A list of keys can be passed as comma separated values, e.g.: Key1,Key2 (Not specified means all).

    Introduced with NLog.Web / NLog.Web.AspNetCore v5.2.1, and replaces the cookieNames-option.

    With NLog.Web / NLog.Web.AspNetCore v4.9 then all key/value pairs will be rendered, when not specified.

  • exclude - Cookie key names to be excluded. A list of keys can be passed as comma separated values, e.g.: Key1,Key2

    Introduced with NLog.Web / NLog.Web.AspNetCore v4.9

Formatting options

  • outputFormat - Renders as flat string or as JSON. Default: Flat.

    • Flat - Key-value-pair as standard string
    • JsonArray - Key-value-pair in JSON-array (Introduced with NLog 5.0, replaces now obsolete Json)
    • JsonDictionary - Key-value-pair as JSON-dictionary. (Introduced with NLog 5.0, replaces now obsolete singleAsArray)
  • itemSeparator - Separator between items. Default: ,. Only applies when OutputFormat is Flat.

    Introduced in NLog.Web.AspNetCore 4.4 / NLog.Web 4.5

  • valueSeparator - Separator between value and key. Default: =. Only applies when OutputFormat is Flat.

    Introduced in NLog.Web.AspNetCore 4.4 / NLog.Web 4.5

  • ValuesOnly Only render the values of the key/value pairs. Default: false.

    Introduced in NLog.Web / NLog.Web.AspNetCore v4.6

  • LowerCaseKeys - Convert Keys to lowercase. Default: false.

    Introduced in NLog.Web / NLog.Web.AspNetCore v5.1.1

Remarks

Use this layout renderer to log the value of the specified cookie(s) stored in the ASP.NET Request Cookies collection.

Examples

In C# code:

Request.Cookies["key1"] = "value1";
Request.Cookies["id"] = "d4b20a34-6231-4201-83a6-c72599e41164";

Log single cookie in default Flat output format

${aspnet-request-cookie:items=key1}

Will print:

"key1=value1"

Log multiple cookies in default Flat output format

${aspnet-request-cookie:items=key1,id}

Will print:

"key1=value1,id=d4b20a34-6231-4201-83a6-c72599e41164"

Log single cookie in JSON output format

${aspnet-request-cookie:items=key1:OutputFormat=JSON}

Will print:

[{"key1":"value1"}]

Log multiple cookies in JSON output format

${aspnet-request-cookie:items=key1,id:OutputFormat=JSON}

Will print:

[{"key1":"value1","id":"d4b20a34-6231-4201-83a6-c72599e41164"}]

Log single cookie as JSON dictionary output format

${aspnet-request-cookie:items=key1:OutputFormat=JsonDictionary}

Will print:

{"key1":"value1"}

Log single cookie in Flat output format as value only

${aspnet-request-cookie:items=key1:ValuesOnly=true}

Will print:

"value1"

Log single cookie in JSON output format as value only

${aspnet-request-cookie:items=key1:OutputFormat=JSON:ValuesOnly=true}

Will print:

["value1"]

Log multiple cookies in JSON output format as value only

${aspnet-request-cookie:items=key1,id:OutputFormat=JSON:ValuesOnly=true}

Will print:

["value1","d4b20a34-6231-4201-83a6-c72599e41164"]

Clone this wiki locally

Morty Proxy This is a proxified and sanitized view of the page, visit original site.