NLog Indicates that the value of the marked element could be null sometimes, so the check for null is necessary before its usage [CanBeNull] public object Test() { return null; } public void UseTest() { var p = Test(); var s = p.ToString(); // Warning: Possible 'System.NullReferenceException' } Indicates that the value of the marked element could never be null [NotNull] public object Foo() { return null; // Warning: Possible 'null' assignment } Indicates that the marked method builds string by format pattern and (optional) arguments. Parameter, which contains format string, should be given in constructor. The format string should be in -like form [StringFormatMethod("message")] public void ShowError(string message, params object[] args) { /* do something */ } public void Foo() { ShowError("Failed: {0}"); // Warning: Non-existing argument in format string } Specifies which parameter of an annotated method should be treated as format-string Indicates that the function argument should be string literal and match one of the parameters of the caller function. For example, ReSharper annotates the parameter of public void Foo(string param) { if (param == null) throw new ArgumentNullException("par"); // Warning: Cannot resolve symbol } Indicates that the method is contained in a type that implements interface and this method is used to notify that some property value changed The method should be non-static and conform to one of the supported signatures: NotifyChanged(string) NotifyChanged(params string[]) NotifyChanged{T}(Expression{Func{T}}) NotifyChanged{T,U}(Expression{Func{T,U}}) SetProperty{T}(ref T, T, string) internal class Foo : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; [NotifyPropertyChangedInvocator] protected virtual void NotifyChanged(string propertyName) { ... } private string _name; public string Name { get { return _name; } set { _name = value; NotifyChanged("LastName"); /* Warning */ } } } Examples of generated notifications: NotifyChanged("Property") NotifyChanged(() => Property) NotifyChanged((VM x) => x.Property) SetProperty(ref myField, value, "Property") Describes dependency between method input and output

Function Definition Table syntax:

FDT ::= FDTRow [;FDTRow]* FDTRow ::= Input => Output | Output <= Input Input ::= ParameterName: Value [, Input]* Output ::= [ParameterName: Value]* {halt|stop|void|nothing|Value} Value ::= true | false | null | notnull | canbenull If method has single input parameter, it's name could be omitted.
Using halt (or void/nothing, which is the same) for method output means that the methos doesn't return normally.
canbenull annotation is only applicable for output parameters.
You can use multiple [ContractAnnotation] for each FDT row, or use single attribute with rows separated by semicolon.
[ContractAnnotation("=> halt")] public void TerminationMethod() [ContractAnnotation("halt <= condition: false")] public void Assert(bool condition, string text) // regular assertion method [ContractAnnotation("s:null => true")] public bool IsNullOrEmpty(string s) // string.IsNullOrEmpty() // A method that returns null if the parameter is null, and not null if the parameter is not null [ContractAnnotation("null => null; notnull => notnull")] public object Transform(object data) [ContractAnnotation("s:null=>false; =>true,result:notnull; =>false, result:null")] public bool TryParse(string s, out Person result)
Indicates that marked element should be localized or not [LocalizationRequiredAttribute(true)] internal class Foo { private string str = "my string"; // Warning: Localizable string } Indicates that the value of the marked type (or its derivatives) cannot be compared using '==' or '!=' operators and Equals() should be used instead. However, using '==' or '!=' for comparison with null is always permitted. [CannotApplyEqualityOperator] class NoEquality { } class UsesNoEquality { public void Test() { var ca1 = new NoEquality(); var ca2 = new NoEquality(); if (ca1 != null) { // OK bool condition = ca1 == ca2; // Warning } } } When applied to a target attribute, specifies a requirement for any type marked with the target attribute to implement or inherit specific type or types. [BaseTypeRequired(typeof(IComponent)] // Specify requirement internal class ComponentAttribute : Attribute { } [Component] // ComponentAttribute requires implementing IComponent interface internal class MyComponent : IComponent { } Indicates that the marked symbol is used implicitly (e.g. via reflection, in external library), so this symbol will not be marked as unused (as well as by other usage inspections) Should be used on attributes and causes ReSharper to not mark symbols marked with such attributes as unused (as well as by other usage inspections) Only entity marked with attribute considered used Indicates implicit assignment to a member Indicates implicit instantiation of a type with fixed constructor signature. That means any unused constructor parameters won't be reported as such. Indicates implicit instantiation of a type Specify what is considered used implicitly when marked with or Members of entity marked with attribute are considered used Entity marked with attribute and all its members considered used This attribute is intended to mark publicly available API which should not be removed and so is treated as used Tells code analysis engine if the parameter is completely handled when the invoked method is on stack. If the parameter is a delegate, indicates that delegate is executed while the method is executed. If the parameter is an enumerable, indicates that it is enumerated while the method is executed Indicates that a method does not make any observable state changes. The same as System.Diagnostics.Contracts.PureAttribute [Pure] private int Multiply(int x, int y) { return x * y; } public void Foo() { const int a = 2, b = 2; Multiply(a, b); // Waring: Return value of pure method is not used } Indicates that a parameter is a path to a file or a folder within a web project. Path can be relative or absolute, starting from web root (~) ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC action. If applied to a method, the MVC action name is calculated implicitly from the context. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String) ASP.NET MVC attribute. Indicates that a parameter is an MVC area. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String) ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC controller. If applied to a method, the MVC controller name is calculated implicitly from the context. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String, String) ASP.NET MVC attribute. Indicates that a parameter is an MVC Master. Use this attribute for custom wrappers similar to System.Web.Mvc.Controller.View(String, String) ASP.NET MVC attribute. Indicates that a parameter is an MVC model type. Use this attribute for custom wrappers similar to System.Web.Mvc.Controller.View(String, Object) ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC partial view. If applied to a method, the MVC partial view name is calculated implicitly from the context. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String) ASP.NET MVC attribute. Allows disabling all inspections for MVC views within a class or a method. ASP.NET MVC attribute. Indicates that a parameter is an MVC display template. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.DisplayExtensions.DisplayForModel(HtmlHelper, String) ASP.NET MVC attribute. Indicates that a parameter is an MVC editor template. Use this attribute for custom wrappers similar to System.Web.Mvc.Html.EditorExtensions.EditorForModel(HtmlHelper, String) ASP.NET MVC attribute. Indicates that a parameter is an MVC template. Use this attribute for custom wrappers similar to System.ComponentModel.DataAnnotations.UIHintAttribute(System.String) ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC view. If applied to a method, the MVC view name is calculated implicitly from the context. Use this attribute for custom wrappers similar to System.Web.Mvc.Controller.View(Object) ASP.NET MVC attribute. When applied to a parameter of an attribute, indicates that this parameter is an MVC action name [ActionName("Foo")] public ActionResult Login(string returnUrl) { ViewBag.ReturnUrl = Url.Action("Foo"); // OK return RedirectToAction("Bar"); // Error: Cannot resolve action } Razor attribute. Indicates that a parameter or a method is a Razor section. Use this attribute for custom wrappers similar to System.Web.WebPages.WebPageBase.RenderSection(String) Asynchronous continuation delegate - function invoked at the end of asynchronous processing. Exception during asynchronous processing or null if no exception was thrown. Helpers for asynchronous operations. Iterates over all items in the given collection and runs the specified action in sequence (each action executes only after the preceding one has completed without an error). Type of each item. The items to iterate. The asynchronous continuation to invoke once all items have been iterated. The action to invoke for each item. Repeats the specified asynchronous action multiple times and invokes asynchronous continuation at the end. The repeat count. The asynchronous continuation to invoke at the end. The action to invoke. Modifies the continuation by pre-pending given action to execute just before it. The async continuation. The action to pre-pend. Continuation which will execute the given action before forwarding to the actual continuation. Attaches a timeout to a continuation which will invoke the continuation when the specified timeout has elapsed. The asynchronous continuation. The timeout. Wrapped continuation. Iterates over all items in the given collection and runs the specified action in parallel (each action executes on a thread from thread pool). Type of each item. The items to iterate. The asynchronous continuation to invoke once all items have been iterated. The action to invoke for each item. Runs the specified asynchronous action synchronously (blocks until the continuation has been invoked). The action. Using this method is not recommended because it will block the calling thread. Wraps the continuation with a guard which will only make sure that the continuation function is invoked only once. The asynchronous continuation. Wrapped asynchronous continuation. Gets the combined exception from all exceptions in the list. The exceptions. Combined exception or null if no exception was thrown. Asynchronous action. Continuation to be invoked at the end of action. Asynchronous action with one argument. Type of the argument. Argument to the action. Continuation to be invoked at the end of action. Represents the logging event with asynchronous continuation. Initializes a new instance of the struct. The log event. The continuation. Implements the operator ==. The event info1. The event info2. The result of the operator. Implements the operator ==. The event info1. The event info2. The result of the operator. Determines whether the specified is equal to this instance. The to compare with this instance. A value of true if the specified is equal to this instance; otherwise, false. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. Gets the log event. Gets the continuation. NLog internal logger. Initializes static members of the InternalLogger class. Logs the specified message at the specified level. Log level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the specified level. Log level. Log message. Logs the specified message at the Trace level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Trace level. Log message. Logs the specified message at the Debug level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Debug level. Log message. Logs the specified message at the Info level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Info level. Log message. Logs the specified message at the Warn level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Warn level. Log message. Logs the specified message at the Error level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Error level. Log message. Logs the specified message at the Fatal level. Message which may include positional parameters. Arguments to the message. Logs the specified message at the Fatal level. Log message. Gets or sets the internal log level. Gets or sets a value indicating whether internal messages should be written to the console output stream. Gets or sets a value indicating whether internal messages should be written to the console error stream. Gets or sets the file path of the internal log file. A value of value disables internal logging to a file. Gets or sets the text writer that will receive internal logs. Gets or sets a value indicating whether timestamp should be included in internal log output. Gets a value indicating whether internal log includes Trace messages. Gets a value indicating whether internal log includes Debug messages. Gets a value indicating whether internal log includes Info messages. Gets a value indicating whether internal log includes Warn messages. Gets a value indicating whether internal log includes Error messages. Gets a value indicating whether internal log includes Fatal messages. A cyclic buffer of object. Initializes a new instance of the class. Buffer size. Whether buffer should grow as it becomes full. The maximum number of items that the buffer can grow to. Adds the specified log event to the buffer. Log event. The number of items in the buffer. Gets the array of events accumulated in the buffer and clears the buffer as one atomic operation. Events in the buffer. Gets the number of items in the array. Condition and expression. Base class for representing nodes in condition expression trees. Converts condition text to a condition expression tree. Condition text to be converted. Condition expression tree. Evaluates the expression. Evaluation context. Expression result. Returns a string representation of the expression. A that represents the condition expression. Evaluates the expression. Evaluation context. Expression result. Initializes a new instance of the class. Left hand side of the AND expression. Right hand side of the AND expression. Returns a string representation of this expression. A concatenated '(Left) and (Right)' string. Evaluates the expression by evaluating and recursively. Evaluation context. The value of the conjunction operator. Gets the left hand side of the AND expression. Gets the right hand side of the AND expression. Exception during evaluation of condition expression. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Condition layout expression (represented by a string literal with embedded ${}). Initializes a new instance of the class. The layout. Returns a string representation of this expression. String literal in single quotes. Evaluates the expression by calculating the value of the layout in the specified evaluation context. Evaluation context. The value of the layout. Gets the layout. The layout. Condition level expression (represented by the level keyword). Returns a string representation of the expression. The 'level' string. Evaluates to the current log level. Evaluation context. Ignored. The object representing current log level. Condition literal expression (numeric, LogLevel.XXX, true or false). Initializes a new instance of the class. Literal value. Returns a string representation of the expression. The literal value. Evaluates the expression. Evaluation context. The literal value as passed in the constructor. Gets the literal value. The literal value. Condition logger name expression (represented by the logger keyword). Returns a string representation of this expression. A logger string. Evaluates to the logger name. Evaluation context. The logger name. Condition message expression (represented by the message keyword). Returns a string representation of this expression. The 'message' string. Evaluates to the logger message. Evaluation context. The logger message. Marks class as a log event Condition and assigns a name to it. Attaches a simple name to an item (such as , , , etc.). Initializes a new instance of the class. The name of the item. Gets the name of the item. The name of the item. Initializes a new instance of the class. Condition method name. Condition method invocation expression (represented by method(p1,p2,p3) syntax). Initializes a new instance of the class. Name of the condition method. of the condition method. The method parameters. Returns a string representation of the expression. A that represents the condition expression. Evaluates the expression. Evaluation context. Expression result. Gets the method info. Gets the method parameters. The method parameters. A bunch of utility methods (mostly predicates) which can be used in condition expressions. Partially inspired by XPath 1.0. Compares two values for equality. The first value. The second value. true when two objects are equal, false otherwise. Compares two strings for equality. The first string. The second string. Optional. If true, case is ignored; if false (default), case is significant. true when two strings are equal, false otherwise. Gets or sets a value indicating whether the second string is a substring of the first one. The first string. The second string. Optional. If true (default), case is ignored; if false, case is significant. true when the second string is a substring of the first string, false otherwise. Gets or sets a value indicating whether the second string is a prefix of the first one. The first string. The second string. Optional. If true (default), case is ignored; if false, case is significant. true when the second string is a prefix of the first string, false otherwise. Gets or sets a value indicating whether the second string is a suffix of the first one. The first string. The second string. Optional. If true (default), case is ignored; if false, case is significant. true when the second string is a prefix of the first string, false otherwise. Returns the length of a string. A string whose lengths is to be evaluated. The length of the string. Marks the class as containing condition methods. Condition not expression. Initializes a new instance of the class. The expression. Returns a string representation of the expression. A that represents the condition expression. Evaluates the expression. Evaluation context. Expression result. Gets the expression to be negated. The expression. Condition or expression. Initializes a new instance of the class. Left hand side of the OR expression. Right hand side of the OR expression. Returns a string representation of the expression. A that represents the condition expression. Evaluates the expression by evaluating and recursively. Evaluation context. The value of the alternative operator. Gets the left expression. The left expression. Gets the right expression. The right expression. Exception during parsing of condition expression. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Condition parser. Turns a string representation of condition expression into an expression tree. Initializes a new instance of the class. The string reader. Instance of used to resolve references to condition methods and layout renderers. Parses the specified condition string and turns it into tree. The expression to be parsed. The root of the expression syntax tree which can be used to get the value of the condition in a specified context. Parses the specified condition string and turns it into tree. The expression to be parsed. Instance of used to resolve references to condition methods and layout renderers. The root of the expression syntax tree which can be used to get the value of the condition in a specified context. Parses the specified condition string and turns it into tree. The string reader. Instance of used to resolve references to condition methods and layout renderers. The root of the expression syntax tree which can be used to get the value of the condition in a specified context. Condition relational (==, !=, <, <=, > or >=) expression. Initializes a new instance of the class. The left expression. The right expression. The relational operator. Returns a string representation of the expression. A that represents the condition expression. Evaluates the expression. Evaluation context. Expression result. Compares the specified values using specified relational operator. The first value. The second value. The relational operator. Result of the given relational operator. Gets the left expression. The left expression. Gets the right expression. The right expression. Gets the relational operator. The operator. Relational operators used in conditions. Equality (==). Inequality (!=). Less than (<). Greater than (>). Less than or equal (<=). Greater than or equal (>=). Hand-written tokenizer for conditions. Initializes a new instance of the class. The string reader. Asserts current token type and advances to the next token. Expected token type. If token type doesn't match, an exception is thrown. Asserts that current token is a keyword and returns its value and advances to the next token. Keyword value. Gets or sets a value indicating whether current keyword is equal to the specified value. The keyword. A value of true if current keyword is equal to the specified value; otherwise, false. Gets or sets a value indicating whether the tokenizer has reached the end of the token stream. A value of true if the tokenizer has reached the end of the token stream; otherwise, false. Gets or sets a value indicating whether current token is a number. A value of true if current token is a number; otherwise, false. Gets or sets a value indicating whether the specified token is of specified type. The token type. A value of true if current token is of specified type; otherwise, false. Gets the next token and sets and properties. Try the comparison tokens (greater, smaller, greater-equals, smaller-equals) current char is match Try the logical tokens (and, or, not, equals) current char is match Gets the token position. The token position. Gets the type of the token. The type of the token. Gets the token value. The token value. Gets the value of a string token. The string token value. Mapping between characters and token types for punctuations. Initializes a new instance of the CharToTokenType struct. The character. Type of the token. Token types for condition expressions. Marks the class or a member as advanced. Advanced classes and members are hidden by default in generated documentation. Initializes a new instance of the class. Identifies that the output of layout or layout render does not change for the lifetime of the current appdomain. Used to mark configurable parameters which are arrays. Specifies the mapping between XML elements and .NET types. Initializes a new instance of the class. The type of the array item. The XML element name that represents the item. Gets the .NET type of the array item. Gets the XML element name. Constructs a new instance the configuration item (target, layout, layout renderer, etc.) given its type. Type of the item. Created object of the specified type. Provides registration information for named items (targets, layouts, layout renderers, etc.) managed by NLog. Initializes static members of the class. Initializes a new instance of the class. The assemblies to scan for named items. Registers named items from the assembly. The assembly. Registers named items from the assembly. The assembly. Item name prefix. Clears the contents of all factories. Registers the type. The type to register. The item name prefix. Builds the default configuration item factory. Default factory. Registers items in NLog.Extended.dll using late-bound types, so that we don't need a reference to NLog.Extended.dll. Gets or sets default singleton instance of . Gets or sets the creator delegate used to instantiate configuration objects. By overriding this property, one can enable dependency injection or interception for created objects. Gets the factory. The target factory. Gets the factory. The filter factory. Gets the factory. The layout renderer factory. Gets the factory. The layout factory. Gets the ambient property factory. The ambient property factory. Gets the time source factory. The time source factory. Gets the condition method factory. The condition method factory. Attribute used to mark the default parameters for layout renderers. Initializes a new instance of the class. Factory for class-based items. The base type of each item. The type of the attribute used to annotate items. Represents a factory of named items (such as targets, layouts, layout renderers, etc.). Base type for each item instance. Item definition type (typically or ). Registers new item definition. Name of the item. Item definition. Tries to get registered item definition. Name of the item. Reference to a variable which will store the item definition. Item definition. Creates item instance. Name of the item. Newly created item instance. Tries to create an item instance. Name of the item. The result. True if instance was created successfully, false otherwise. Provides means to populate factories of named items (such as targets, layouts, layout renderers, etc.). Scans the assembly. The types to scan. The prefix. Registers the type. The type to register. The item name prefix. Registers the item based on a type name. Name of the item. Name of the type. Clears the contents of the factory. Registers a single type definition. The item name. The type of the item. Tries to get registered item definition. Name of the item. Reference to a variable which will store the item definition. Item definition. Tries to create an item instance. Name of the item. The result. True if instance was created successfully, false otherwise. Creates an item instance. The name of the item. Created item. Implemented by objects which support installation and uninstallation. Performs installation which requires administrative permissions. The installation context. Performs uninstallation which requires administrative permissions. The installation context. Determines whether the item is installed. The installation context. Value indicating whether the item is installed or null if it is not possible to determine. Provides context for install/uninstall operations. Initializes a new instance of the class. Initializes a new instance of the class. The log output. Logs the specified trace message. The message. The arguments. Logs the specified debug message. The message. The arguments. Logs the specified informational message. The message. The arguments. Logs the specified warning message. The message. The arguments. Logs the specified error message. The message. The arguments. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Creates the log event which can be used to render layouts during installation/uninstallations. Log event info object. Gets or sets the installation log level. Gets or sets a value indicating whether to ignore failures during installation. Gets the installation parameters. Gets or sets the log output. Keeps logging configuration and provides simple API to modify it. Variables defined in xml or in API. name is case case insensitive. Initializes a new instance of the class. Registers the specified target object. The name of the target is read from . The target object with a non when is Registers the specified target object under a given name. Name of the target. The target object. Finds the target with the specified name. The name of the target to be found. Found target or when the target is not found. Finds the target with the specified name and specified type. The name of the target to be found. Type of the target Found target or when the target is not found of not of type Called by LogManager when one of the log configuration files changes. A new instance of that represents the updated configuration. Removes the specified named target. Name of the target. Installs target-specific objects on current system. The installation context. Installation typically runs with administrative permissions. Uninstalls target-specific objects from current system. The installation context. Uninstallation typically runs with administrative permissions. Closes all targets and releases any unmanaged resources. Flushes any pending log messages on all appenders. The asynchronous continuation. Validates the configuration. Use the old exception log handling of NLog 3.0? Gets the variables defined in the configuration. Gets a collection of named targets specified in the configuration. A list of named targets. Unnamed targets (such as those wrapped by other targets) are not returned. Gets the collection of file names which should be watched for changes by NLog. Gets the collection of logging rules. Gets or sets the default culture info to use as . Specific culture info or null to use Gets all targets. Arguments for events. Initializes a new instance of the class. The old configuration. The new configuration. Gets the old configuration. The old configuration. Gets the new configuration. The new configuration. Represents a logging rule. An equivalent of <logger /> configuration element. Create an empty . Create a new with a which writes to . Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. Minimum log level needed to trigger this rule. Target to be written to when the rule matches. Create a (disabled) . You should call to enable logging. Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. Target to be written to when the rule matches. Enables logging for a particular level. Level to be enabled. Disables logging for a particular level. Level to be disabled. Returns a string representation of . Used for debugging. A that represents the current . Checks whether te particular log level is enabled for this rule. Level to be checked. A value of when the log level is enabled, otherwise. Checks whether given name matches the logger name pattern. String to be matched. A value of when the name matches, otherwise. Gets a collection of targets that should be written to when this rule matches. Gets a collection of child rules to be evaluated when this rule matches. Gets a collection of filters to be checked before writing to targets. Gets or sets a value indicating whether to quit processing any further rule when this one matches. Gets or sets logger name pattern. Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends but not anywhere else. Gets the collection of log levels enabled by this rule. Factory for locating methods. The type of the class marker attribute. The type of the method marker attribute. Scans the assembly for classes marked with and methods marked with and adds them to the factory. The types to scan. The prefix to use for names. Registers the type. The type to register. The item name prefix. Clears contents of the factory. Registers the definition of a single method. The method name. The method info. Tries to retrieve method by name. The method name. The result. A value of true if the method was found, false otherwise. Retrieves method by name. Method name. MethodInfo object. Tries to get method definition. The method . The result. A value of true if the method was found, false otherwise. Gets a collection of all registered items in the factory. Sequence of key/value pairs where each key represents the name of the item and value is the of the item. Indicates NLog should not scan this property during configuration. Initializes a new instance of the class. Marks the object as configuration item for NLog. Initializes a new instance of the class. Represents simple XML element with case-insensitive attribute semantics. Initializes a new instance of the class. The input URI. Initializes a new instance of the class. The reader to initialize element from. Prevents a default instance of the class from being created. Returns children elements with the specified element name. Name of the element. Children elements with the specified element name. Gets the required attribute. Name of the attribute. Attribute value. Throws if the attribute is not specified. Gets the optional boolean attribute value. Name of the attribute. Default value to return if the attribute is not found. Boolean attribute value or default. Gets the optional attribute value. Name of the attribute. The default value. Value of the attribute or default value. Asserts that the name of the element is among specified element names. The allowed names. Gets the element name. Gets the dictionary of attribute values. Gets the collection of child elements. Gets the value of the element. Attribute used to mark the required parameters for targets, layout targets and filters. Provides simple programmatic configuration API used for trivial logging cases. Configures NLog for console logging so that all messages above and including the level are output to the console. Configures NLog for console logging so that all messages above and including the specified level are output to the console. The minimal logging level. Configures NLog for to log to the specified target so that all messages above and including the level are output. The target to log all messages to. Configures NLog for to log to the specified target so that all messages above and including the specified level are output. The target to log all messages to. The minimal logging level. Configures NLog for file logging so that all messages above and including the level are written to the specified file. Log file name. Configures NLog for file logging so that all messages above and including the specified level are written to the specified file. Log file name. The minimal logging level. Value indicating how stack trace should be captured when processing the log event. Stack trace should not be captured. Stack trace should be captured without source-level information. Capture maximum amount of the stack trace information supported on the platform. Marks the layout or layout renderer as producing correct results regardless of the thread it's running on. A class for configuring NLog through an XML configuration file (App.config style or App.nlog style). Initializes a new instance of the class. Configuration file to be read. Initializes a new instance of the class. Configuration file to be read. Ignore any errors during configuration. Initializes a new instance of the class. containing the configuration section. Name of the file that contains the element (to be used as a base for including other files). Initializes a new instance of the class. containing the configuration section. Name of the file that contains the element (to be used as a base for including other files). Ignore any errors during configuration. Re-reads the original configuration file and returns the new object. The new object. Remove all spaces, also in between text. text text without spaces Tabs and other whitespace is not removed! Remove the namespace (before :) x:a, will be a Initializes the configuration. containing the configuration section. Name of the file that contains the element (to be used as a base for including other files). Ignore any errors during configuration. Parse the root path to directory of config file. Parse {configuration} xml element. path to directory of config file. Parse {NLog} xml element. path to directory of config file. Parse {Rules} xml element Rules are added to this parameter. Parse {Logger} xml element Rules are added to this parameter. Replace a simple variable with a value. The orginal value is removed and thus we cannot redo this in a later stage. Use for that: Did the Succeeded? true= success, false= error, null = initialize not started yet. Gets or sets a value indicating whether the configuration files should be watched for changes and reloaded automatically when changed. Gets the collection of file names which should be watched for changes by NLog. This is the list of configuration files processed. If the autoReload attribute is not set it returns empty collection. Matches when the specified condition is met. Conditions are expressed using a simple language described here. An abstract filter class. Provides a way to eliminate log messages based on properties other than logger name and log level. Initializes a new instance of the class. Gets the result of evaluating filter against given log event. The log event. Filter result. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets the action to be taken when filter matches. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets the condition expression. Marks class as a layout renderer and assigns a name to it. Initializes a new instance of the class. Name of the filter. Filter result. The filter doesn't want to decide whether to log or discard the message. The message should be logged. The message should not be logged. The message should be logged and processing should be finished. The message should not be logged and processing should be finished. A base class for filters that are based on comparing a value to a layout. Initializes a new instance of the class. Gets or sets the layout to be used to filter log messages. The layout. Matches when the calculated layout contains the specified substring. This filter is deprecated in favor of <when /> which is based on conditions. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets a value indicating whether to ignore case when comparing strings. Gets or sets the substring to be matched. Matches when the calculated layout is equal to the specified substring. This filter is deprecated in favor of <when /> which is based on conditions. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets a value indicating whether to ignore case when comparing strings. Gets or sets a string to compare the layout to. Matches when the calculated layout does NOT contain the specified substring. This filter is deprecated in favor of <when /> which is based on conditions. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets the substring to be matched. Gets or sets a value indicating whether to ignore case when comparing strings. Matches when the calculated layout is NOT equal to the specified substring. This filter is deprecated in favor of <when /> which is based on conditions. Initializes a new instance of the class. Checks whether log event should be logged or not. Log event. - if the log event should be ignored
- if the filter doesn't want to decide
- if the log event should be logged
.
Gets or sets a string to compare the layout to. Gets or sets a value indicating whether to ignore case when comparing strings. A fluent class to build log events for NLog. Initializes a new instance of the class. The to send the log event. Initializes a new instance of the class. The to send the log event. The for the log event. Sets the information of the logging event. The exception information of the logging event. Sets the level of the logging event. The level of the logging event. Sets the logger name of the logging event. The logger name of the logging event. Sets the log message on the logging event. The log message for the logging event. Sets the log message and parameters for formatting on the logging event. A composite format string. The object to format. Sets the log message and parameters for formatting on the logging event. A composite format string. The first object to format. The second object to format. Sets the log message and parameters for formatting on the logging event. A composite format string. The first object to format. The second object to format. The third object to format. Sets the log message and parameters for formatting on the logging event. A composite format string. The first object to format. The second object to format. The third object to format. The fourth object to format. Sets the log message and parameters for formatting on the logging event. A composite format string. An object array that contains zero or more objects to format. Sets the log message and parameters for formatting on the logging event. An object that supplies culture-specific formatting information. A composite format string. An object array that contains zero or more objects to format. Sets a per-event context property on the logging event. The name of the context property. The value of the context property. Sets multiple per-event context properties on the logging event. The properties to set. Sets the timestamp of the logging event. The timestamp of the logging event. Sets the stack trace for the event info. The stack trace. Index of the first user stack frame within the stack trace. Writes the log event to the underlying logger. Writes the log event to the underlying logger. If condition is true, write log event; otherwise ignore event. Writes the log event to the underlying logger. If condition is true, write log event; otherwise ignore event. Gets the created by the builder. Extension methods for NLog . Starts building a log event with the specified . The logger to write the log event to. The log level. Starts building a log event at the Trace level. The logger to write the log event to. Starts building a log event at the Debug level. The logger to write the log event to. Starts building a log event at the Info level. The logger to write the log event to. Starts building a log event at the Warn level. The logger to write the log event to. Starts building a log event at the Error level. The logger to write the log event to. Starts building a log event at the Fatal level. The logger to write the log event to. Global Diagnostics Context - used for log4net compatibility. Sets the Global Diagnostics Context item to the specified value. Item name. Item value. Gets the Global Diagnostics Context named item. Item name. The value of , if defined; otherwise . Gets the Global Diagnostics Context item. Item name. to use when converting the item's value to a string. The value of as a string, if defined; otherwise . Gets the Global Diagnostics Context named item. Item name. The value of , if defined; otherwise null. Checks whether the specified item exists in the Global Diagnostics Context. Item name. A boolean indicating whether the specified item exists in current thread GDC. Removes the specified item from the Global Diagnostics Context. Item name. Clears the content of the GDC. Global Diagnostics Context - a dictionary structure to hold per-application-instance values. Sets the Global Diagnostics Context item to the specified value. Item name. Item value. Sets the Global Diagnostics Context item to the specified value. Item name. Item value. Gets the Global Diagnostics Context named item. Item name. The value of , if defined; otherwise . Gets the Global Diagnostics Context item. Item name. to use when converting the item's value to a string. The value of as a string, if defined; otherwise . Gets the Global Diagnostics Context named item. Item name. The item value, if defined; otherwise null. Checks whether the specified item exists in the Global Diagnostics Context. Item name. A boolean indicating whether the specified item exists in current thread GDC. Removes the specified item from the Global Diagnostics Context. Item name. Clears the content of the GDC. Provides logging interface and utility functions. Gets a value indicating whether logging is enabled for the specified level. Log level to be checked. A value of if logging is enabled for the specified level, otherwise it returns . Writes the specified diagnostic message. Log event. Writes the specified diagnostic message. The name of the type that wraps Logger. Log event. Writes the diagnostic message at the specified level using the specified format provider and format parameters. Writes the diagnostic message at the specified level. Type of the value. The log level. The value to be written. Writes the diagnostic message at the specified level. Type of the value. The log level. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the specified level. The log level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the specified level. The log level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the specified level. The log level. A to be written. Arguments to format. An exception to be logged. Writes the diagnostic message and exception at the specified level. The log level. An IFormatProvider that supplies culture-specific formatting information. A to be written. Arguments to format. An exception to be logged. Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the specified level. The log level. Log message. Writes the diagnostic message at the specified level using the specified parameters. The log level. A containing format items. Arguments to format. Writes the diagnostic message and exception at the specified level. The log level. A to be written. An exception to be logged. Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. The type of the argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the specified level using the specified parameter. The type of the argument. The log level. A containing one format item. The argument to format. Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the specified level using the specified parameters. The type of the first argument. The type of the second argument. The log level. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the specified level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. The log level. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Occurs when logger configuration changes. Gets the name of the logger. Gets the factory that created this logger. Provides an interface to execute System.Actions without surfacing any exceptions raised for that action. Runs action. If the action throws, the exception is logged at Error level. Exception is not propagated outside of this method. Action to execute. Runs the provided function and returns its result. If exception is thrown, it is logged at Error level. Exception is not propagated outside of this method. Fallback value is returned instead. Return type of the provided function. Function to run. Result returned by the provided function or fallback value in case of exception. Runs the provided function and returns its result. If exception is thrown, it is logged at Error level. Exception is not propagated outside of this method. Fallback value is returned instead. Return type of the provided function. Function to run. Fallback value to return in case of exception. Defaults to default value of type T. Result returned by the provided function or fallback value in case of exception. Writes the diagnostic message at the Trace level using the specified format provider and format parameters. Writes the diagnostic message at the Trace level. Type of the value. The value to be written. Writes the diagnostic message at the Trace level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Trace level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Trace level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Trace level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Trace level. Log message. Writes the diagnostic message at the Trace level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Writes the diagnostic message at the Trace level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Trace level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified format provider and format parameters. Writes the diagnostic message at the Debug level. Type of the value. The value to be written. Writes the diagnostic message at the Debug level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Debug level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Debug level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Debug level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Debug level. Log message. Writes the diagnostic message at the Debug level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Writes the diagnostic message at the Debug level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Info level using the specified format provider and format parameters. Writes the diagnostic message at the Info level. Type of the value. The value to be written. Writes the diagnostic message at the Info level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Info level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Info level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Info level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Info level. Log message. Writes the diagnostic message at the Info level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Writes the diagnostic message at the Info level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Info level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Info level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Info level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Warn level using the specified format provider and format parameters. Writes the diagnostic message at the Warn level. Type of the value. The value to be written. Writes the diagnostic message at the Warn level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Warn level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Warn level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Warn level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Warn level. Log message. Writes the diagnostic message at the Warn level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Writes the diagnostic message at the Warn level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Warn level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Warn level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Warn level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Error level using the specified format provider and format parameters. Writes the diagnostic message at the Error level. Type of the value. The value to be written. Writes the diagnostic message at the Error level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Error level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Error level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Error level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Error level. Log message. Writes the diagnostic message at the Error level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Writes the diagnostic message at the Error level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Error level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Error level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Error level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Fatal level using the specified format provider and format parameters. Writes the diagnostic message at the Fatal level. Type of the value. The value to be written. Writes the diagnostic message at the Fatal level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Fatal level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Fatal level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Fatal level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Fatal level. Log message. Writes the diagnostic message at the Fatal level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Writes the diagnostic message at the Fatal level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Fatal level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Fatal level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Fatal level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Gets a value indicating whether logging is enabled for the Trace level. A value of if logging is enabled for the Trace level, otherwise it returns . Gets a value indicating whether logging is enabled for the Debug level. A value of if logging is enabled for the Debug level, otherwise it returns . Gets a value indicating whether logging is enabled for the Info level. A value of if logging is enabled for the Info level, otherwise it returns . Gets a value indicating whether logging is enabled for the Warn level. A value of if logging is enabled for the Warn level, otherwise it returns . Gets a value indicating whether logging is enabled for the Error level. A value of if logging is enabled for the Error level, otherwise it returns . Gets a value indicating whether logging is enabled for the Fatal level. A value of if logging is enabled for the Fatal level, otherwise it returns . Provides untyped IDictionary interface on top of generic IDictionary. The type of the key. The type of the value. Initializes a new instance of the DictionaryAdapter class. The implementation. Adds an element with the provided key and value to the object. The to use as the key of the element to add. The to use as the value of the element to add. Removes all elements from the object. Determines whether the object contains an element with the specified key. The key to locate in the object. True if the contains an element with the key; otherwise, false. Returns an object for the object. An object for the object. Removes the element with the specified key from the object. The key of the element to remove. Copies the elements of the to an , starting at a particular index. The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. The zero-based index in at which copying begins. Returns an enumerator that iterates through a collection. An object that can be used to iterate through the collection. Gets an object containing the values in the object. An object containing the values in the object. Gets the number of elements contained in the . The number of elements contained in the . Gets a value indicating whether access to the is synchronized (thread safe). true if access to the is synchronized (thread safe); otherwise, false. Gets an object that can be used to synchronize access to the . An object that can be used to synchronize access to the . Gets a value indicating whether the object has a fixed size. true if the object has a fixed size; otherwise, false. Gets a value indicating whether the object is read-only. true if the object is read-only; otherwise, false. Gets an object containing the keys of the object. An object containing the keys of the object. Gets or sets the with the specified key. Dictionary key. Value corresponding to key or null if not found Wrapper IDictionaryEnumerator. Initializes a new instance of the class. The wrapped. Advances the enumerator to the next element of the collection. True if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. Sets the enumerator to its initial position, which is before the first element in the collection. Gets both the key and the value of the current dictionary entry. A containing both the key and the value of the current dictionary entry. Gets the key of the current dictionary entry. The key of the current element of the enumeration. Gets the value of the current dictionary entry. The value of the current element of the enumeration. Gets the current element in the collection. The current element in the collection. UTF-8 BOM 239, 187, 191 Converts the string representation of the name or numeric value of one or more enumerated constants to an equivalent enumerated object. A parameter specifies whether the operation is case-sensitive. The return value indicates whether the conversion succeeded. The enumeration type to which to convert value. The string representation of the enumeration name or underlying value to convert. When this method returns, result contains an object of type TEnum whose value is represented by value if the parse operation succeeds. If the parse operation fails, result contains the default value of the underlying type of TEnum. Note that this value need not be a member of the TEnum enumeration. This parameter is passed uninitialized. true if the value parameter was converted successfully; otherwise, false. Wrapper because Enum.TryParse is not present in .net 3.5 Converts the string representation of the name or numeric value of one or more enumerated constants to an equivalent enumerated object. A parameter specifies whether the operation is case-sensitive. The return value indicates whether the conversion succeeded. The enumeration type to which to convert value. The string representation of the enumeration name or underlying value to convert. true to ignore case; false to consider case. When this method returns, result contains an object of type TEnum whose value is represented by value if the parse operation succeeds. If the parse operation fails, result contains the default value of the underlying type of TEnum. Note that this value need not be a member of the TEnum enumeration. This parameter is passed uninitialized. true if the value parameter was converted successfully; otherwise, false. Wrapper because Enum.TryParse is not present in .net 3.5 Enum.TryParse implementation for .net 3.5 Don't uses reflection IsNullOrWhiteSpace for .net 3.5 Safe way to get environment variables. Helper class for dealing with exceptions. Determines whether the exception must be rethrown. The exception. True if the exception must be rethrown, false otherwise. Object construction helper. Adapter for to Interface for fakeable the current . Not fully implemented, please methods/properties as necessary. Initializes a new instance of the class. The to wrap. Gets a the current wrappered in a . Base class for optimized file appenders. Initializes a new instance of the class. Name of the file. The create parameters. Writes the specified bytes. The bytes. Flushes this instance. Closes this instance. Gets the file info. The last file write time. The value must be of UTC kind. Length of the file. True if the operation succeeded, false otherwise. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Releases unmanaged and - optionally - managed resources. True to release both managed and unmanaged resources; false to release only unmanaged resources. Records the last write time for a file. Records the last write time for a file to be specific date. Date and time when the last write occurred. The value must be of UTC kind. Creates the file stream. If set to true sets the file stream to allow shared writing. A object which can be used to write to the file. Gets the name of the file. The name of the file. Gets the last write time. The last write time. DateTime value must be of UTC kind. Gets the open time of the file. The open time. DateTime value must be of UTC kind. Gets the file creation parameters. The file creation parameters. Implementation of which caches file information. Initializes a new instance of the class. Name of the file. The parameters. Closes this instance of the appender. Flushes this current appender. Gets the file info. The last file write time. The value must be of UTC kind. Length of the file. True if the operation succeeded, false otherwise. Writes the specified bytes to a file. The bytes to be written. Factory class which creates objects. Interface implemented by all factories capable of creating file appenders. Opens the appender for given file name and parameters. Name of the file. Creation parameters. Instance of which can be used to write to the file. Opens the appender for given file name and parameters. Name of the file. Creation parameters. Instance of which can be used to write to the file. Interface that provides parameters for create file function. Gets or sets the delay in milliseconds to wait before attempting to write to the file again. Gets or sets the number of times the write is appended on the file before NLog discards the log message. Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on the same host. This makes multi-process logging possible. NLog uses a special technique that lets it keep the files open for writing. Gets or sets a value indicating whether to create directories if they do not exist. Setting this to false may improve performance a bit, but you'll receive an error when attempting to write to a directory that's not present. Gets or sets a value indicating whether to enable log file(s) to be deleted. Gets or sets the log file buffer size in bytes. Gets or set a value indicating whether a managed file stream is forced, instead of used the native implementation. Multi-process and multi-host file appender which attempts to get exclusive write access and retries if it's not available. Initializes a new instance of the class. Name of the file. The parameters. Writes the specified bytes. The bytes. Flushes this instance. Closes this instance. Gets the file info. The last file write time. The value must be of UTC kind. Length of the file. True if the operation succeeded, false otherwise. Factory class. Opens the appender for given file name and parameters. Name of the file. Creation parameters. Instance of which can be used to write to the file. Optimized single-process file appender which keeps the file open for exclusive write. Initializes a new instance of the class. Name of the file. The parameters. Writes the specified bytes. The bytes. Flushes this instance. Closes this instance. Gets the file info. The last file write time. The value must be of UTC kind. Length of the file. True if the operation succeeded, false otherwise. Factory class. Opens the appender for given file name and parameters. Name of the file. Creation parameters. Instance of which can be used to write to the file. Optimized routines to get the size and last write time of the specified file. Initializes static members of the FileInfoHelper class. Gets the information about a file. Name of the file. The file handle. The last write time of the file in UTC. Length of the file. A value of true if file information was retrieved successfully, false otherwise. toString(format) if the object is a value to be converted format value provider, for example culture Interface implemented by layouts and layout renderers. Renders the the value of layout or layout renderer in the context of the specified log event. The log event. String representation of a layout. Supports object initialization and termination. Initializes this instance. The configuration. Closes this instance. Allows components to request stack trace information to be provided in the . Gets the level of stack trace information required by the implementing class. Define Localizable attribute for platforms that don't have it. Initializes a new instance of the class. Determines whether the target is localizable. Gets or sets a value indicating whether the target is localizable. Logger configuration. Initializes a new instance of the class. The targets by level. Use the old exception log handling of NLog 3.0? Gets targets for the specified level. The level. Chain of targets with attached filters. Determines whether the specified level is enabled. The level. A value of true if the specified level is enabled; otherwise, false. Use the old exception log handling of NLog 3.0? Network sender which uses HTTP or HTTPS POST. A base class for all network senders. Supports one-way sending of messages over various protocols. Initializes a new instance of the class. The network URL. Finalizes an instance of the NetworkSender class. Initializes this network sender. Closes the sender and releases any unmanaged resources. The continuation. Flushes any pending messages and invokes a continuation. The continuation. Send the given text over the specified protocol. Bytes to be sent. Offset in buffer. Number of bytes to send. The asynchronous continuation. Closes the sender and releases any unmanaged resources. Performs sender-specific initialization. Performs sender-specific close operation. The continuation. Performs sender-specific flush. The continuation. Actually sends the given text over the specified protocol. The bytes to be sent. Offset in buffer. Number of bytes to send. The async continuation to be invoked after the buffer has been sent. To be overridden in inheriting classes. Parses the URI into an endpoint address. The URI to parse. The address family. Parsed endpoint. Gets the address of the network endpoint. Gets the last send time. Initializes a new instance of the class. The network URL. Actually sends the given text over the specified protocol. The bytes to be sent. Offset in buffer. Number of bytes to send. The async continuation to be invoked after the buffer has been sent. To be overridden in inheriting classes. Creates instances of objects for given URLs. Creates a new instance of the network sender based on a network URL. URL that determines the network sender to be created. The maximum queue size. A newly created network sender. Interface for mocking socket calls. Default implementation of . Creates a new instance of the network sender based on a network URL:. URL that determines the network sender to be created. The maximum queue size. /// A newly created network sender. Socket proxy for mocking Socket code. Initializes a new instance of the class. The address family. Type of the socket. Type of the protocol. Closes the wrapped socket. Invokes ConnectAsync method on the wrapped socket. The instance containing the event data. Result of original method. Invokes SendAsync method on the wrapped socket. The instance containing the event data. Result of original method. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Gets underlying socket instance. Sends messages over a TCP network connection. Initializes a new instance of the class. URL. Must start with tcp://. The address family. Creates the socket with given parameters. The address family. Type of the socket. Type of the protocol. Instance of which represents the socket. Performs sender-specific initialization. Closes the socket. The continuation. Performs sender-specific flush. The continuation. Sends the specified text over the connected socket. The bytes to be sent. Offset in buffer. Number of bytes to send. The async continuation to be invoked after the buffer has been sent. To be overridden in inheriting classes. Facilitates mocking of class. Raises the Completed event. Scans (breadth-first) the object graph following all the edges whose are instances have attached and returns all objects implementing a specified interfaces. Finds the objects which have attached which are reachable from any of the given root objects when traversing the object graph over public properties. Type of the objects to return. The root objects. Ordered list of objects implementing T. Parameter validation utilities. Asserts that the value is not null and throws otherwise. The value to check. Name of the parameter. Detects the platform the NLog is running on. Gets the current runtime OS. Gets a value indicating whether current OS is a desktop version of Windows. Gets a value indicating whether current OS is Win32-based (desktop or mobile). Gets a value indicating whether current OS is Unix-based. Portable implementation of . Gets the information about a file. Name of the file. The file handle. The last write time of the file in UTC. Length of the file. A value of true if file information was retrieved successfully, false otherwise. Reflection helpers for accessing properties. Reflection helpers. Gets all usable exported types from the given assembly. Assembly to scan. Usable types from the given assembly. Types which cannot be loaded are skipped. Supported operating systems. If you add anything here, make sure to add the appropriate detection code to Any operating system. Unix/Linux operating systems. Windows CE. Desktop versions of Windows (95,98,ME). Windows NT, 2000, 2003 and future versions based on NT technology. Unknown operating system. Simple character tokenizer. Initializes a new instance of the class. The text to be tokenized. Implements a single-call guard around given continuation function. Initializes a new instance of the class. The asynchronous continuation. Continuation function which implements the single-call guard. The exception. Provides helpers to sort log events and associated continuations. Performs bucket sort (group by) on an array of items and returns a dictionary for easy traversal of the result set. The type of the value. The type of the key. The inputs. The key selector function. Dictionary where keys are unique input keys, and values are lists of . Key selector delegate. The type of the value. The type of the key. Value to extract key information from. Key selected from log event. Utilities for dealing with values. Stream helpers Copy stream input to output. Skip the first bytes stream to read from stream to write to first bytes to skip (optional) Represents target with a chain of filters which determine whether logging should happen. Initializes a new instance of the class. The target. The filter chain. Gets the stack trace usage. A value that determines stack trace handling. Gets the target. The target. Gets the filter chain. The filter chain. Gets or sets the next item in the chain. The next item in the chain. Helper for dealing with thread-local storage. Allocates the data slot for storing thread-local information. Allocated slot key. Gets the data for a slot in thread-local storage. Type of the data. The slot to get data for. Slot data (will create T if null). Wraps with a timeout. Initializes a new instance of the class. The asynchronous continuation. The timeout. Continuation function which implements the timeout logic. The exception. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. URL Encoding helper. Helper class for XML removes any unusual unicode characters that can't be encoded into XML Safe version of WriteAttributeString Safe version of WriteAttributeString Safe version of WriteElementSafeString Safe version of WriteCData Log event context data. Render environmental information related to logging events. Returns a that represents this instance. A that represents this instance. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Renders the the value of layout renderer in the context of the specified log event. The log event. String representation of a layout renderer. Initializes this instance. The configuration. Closes this instance. Initializes this instance. The configuration. Closes this instance. Renders the specified environmental information and appends it to the specified . The to append the rendered data to. Logging event. Initializes the layout renderer. Closes the layout renderer. Releases unmanaged and - optionally - managed resources. True to release both managed and unmanaged resources; false to release only unmanaged resources. Gets the logging configuration this target is part of. Initializes a new instance of the class. Renders all log event's properties and appends them to the specified . The to append the rendered data to. Logging event. Gets or sets string that will be used to separate key/value pairs. Gets or sets how key/value pairs will be formatted. Designates a property of the class as an ambient property. Initializes a new instance of the class. Ambient property name. Assembly version. Renders assembly version and appends it to the specified . The to append the rendered data to. Logging event. The call site (class name, method name and source information). Initializes a new instance of the class. Renders the call site and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to render the class name. Gets or sets a value indicating whether to render the method name. Gets or sets a value indicating whether the method name will be cleaned up if it is detected as an anonymous delegate. Gets or sets the number of frames to skip. Gets the level of stack trace information required by the implementing class. A counter value (increases on each layout rendering). Initializes a new instance of the class. Renders the specified counter value and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the initial value of the counter. Gets or sets the value to be added to the counter after each layout rendering. Gets or sets the name of the sequence. Different named sequences can have individual values. Current date and time. Initializes a new instance of the class. Renders the current date and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the culture used for rendering. Gets or sets the date format. Can be any argument accepted by DateTime.ToString(format). Gets or sets a value indicating whether to output UTC time instead of local time. URI of the HTML page which hosts the current Silverlight application. Renders the specified environmental information and appends it to the specified . The to append the rendered data to. Logging event. Log event context data. Renders the specified log event context item and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the item. Log event context data. See . Log event context data with default options. Renders the specified log event context item and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the item. Format string for conversion from object to string. Gets or sets the culture used for rendering. Exception information provided through a call to one of the Logger.*Exception() methods. Initializes a new instance of the class. Renders the specified exception information and appends it to the specified . The to append the rendered data to. Logging event. Appends the Message of an Exception to the specified . The to append the rendered data to. The exception containing the Message to append. Appends the method name from Exception's stack trace to the specified . The to append the rendered data to. The Exception whose method name should be appended. Appends the stack trace from an Exception to the specified . The to append the rendered data to. The Exception whose stack trace should be appended. Appends the result of calling ToString() on an Exception to the specified . The to append the rendered data to. The Exception whose call to ToString() should be appended. Appends the type of an Exception to the specified . The to append the rendered data to. The Exception whose type should be appended. Appends the short type of an Exception to the specified . The to append the rendered data to. The Exception whose short type should be appended. Appends the contents of an Exception's Data property to the specified . The to append the rendered data to. The Exception whose Data property elements should be appended. Gets or sets the format of the output. Must be a comma-separated list of exception properties: Message, Type, ShortType, ToString, Method, StackTrace. This parameter value is case-insensitive. Gets or sets the format of the output of inner exceptions. Must be a comma-separated list of exception properties: Message, Type, ShortType, ToString, Method, StackTrace. This parameter value is case-insensitive. Gets or sets the separator used to concatenate parts specified in the Format. Gets or sets the maximum number of inner exceptions to include in the output. By default inner exceptions are not enabled for compatibility with NLog 1.0. Gets or sets the separator between inner exceptions. Renders contents of the specified file. Initializes a new instance of the class. Renders the contents of the specified file and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the file. Gets or sets the encoding used in the file. The encoding. The information about the garbage collector. Initializes a new instance of the class. Renders the selected process information. The to append the rendered data to. Logging event. Gets or sets the property to retrieve. Gets or sets the property of System.GC to retrieve. Total memory allocated. Total memory allocated (perform full garbage collection first). Gets the number of Gen0 collections. Gets the number of Gen1 collections. Gets the number of Gen2 collections. Maximum generation number supported by GC. Global Diagnostics Context item. Provided for compatibility with log4net. Renders the specified Global Diagnostics Context item and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the item. Globally-unique identifier (GUID). Initializes a new instance of the class. Renders a newly generated GUID string and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the GUID format as accepted by Guid.ToString() method. Installation parameter (passed to InstallNLogConfig). Renders the specified installation parameter and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the parameter. Marks class as a layout renderer and assigns a format string to it. Initializes a new instance of the class. Name of the layout renderer. The log level. Renders the current log level and appends it to the specified . The to append the rendered data to. Logging event. A string literal. This is used to escape '${' sequence as ;${literal:text=${}' Initializes a new instance of the class. Initializes a new instance of the class. The literal text value. This is used by the layout compiler. Renders the specified string literal and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the literal text. XML event description compatible with log4j, Chainsaw and NLogViewer. Initializes a new instance of the class. Initializes a new instance of the class. Renders the XML logging event and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to include NLog-specific extensions to log4j schema. Gets or sets a value indicating whether the XML should use spaces for indentation. Gets or sets the AppInfo field. By default it's the friendly name of the current AppDomain. Gets or sets a value indicating whether to include call site (class and method name) in the information sent over the network. Gets or sets a value indicating whether to include source info (file name and line number) in the information sent over the network. Gets or sets a value indicating whether to include contents of the dictionary. Gets or sets a value indicating whether to include contents of the stack. Gets or sets the NDC item separator. Gets the level of stack trace information required by the implementing class. The logger name. Renders the logger name and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to render short logger name (the part after the trailing dot character). The date and time in a long, sortable format yyyy-MM-dd HH:mm:ss.mmm. Renders the date in the long format (yyyy-MM-dd HH:mm:ss.mmm) and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to output UTC time instead of local time. Mapped Diagnostic Context item. Provided for compatibility with log4net. Renders the specified MDC item and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the item. The formatted log message. Initializes a new instance of the class. Renders the log message including any positional parameters and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to log exception along with message. Gets or sets the string that separates message from the exception. Nested Diagnostic Context item. Provided for compatibility with log4net. Initializes a new instance of the class. Renders the specified Nested Diagnostics Context item and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the number of top stack frames to be rendered. Gets or sets the number of bottom stack frames to be rendered. Gets or sets the separator to be used for concatenating nested diagnostics context output. A newline literal. Renders the specified string literal and appends it to the specified . The to append the rendered data to. Logging event. The process time in format HH:mm:ss.mmm. Renders the current process running time and appends it to the specified . The to append the rendered data to. Logging event. The short date in a sortable format yyyy-MM-dd. Renders the current short date string (yyyy-MM-dd) and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to output UTC time instead of local time. Information about Silverlight application. Initializes a new instance of the class. Renders the specified environmental information and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets specific information to display. Specifies application information to display in ${sl-appinfo} renderer. URI of the current application XAP file. Whether application is running out-of-browser. Installed state of an application. Whether application is running with elevated permissions. System special folder path (includes My Documents, My Music, Program Files, Desktop, and more). Renders the directory where NLog is located and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the system special folder to use. Full list of options is available at MSDN. The most common ones are:
  • ApplicationData - roaming application data for current user.
  • CommonApplicationData - application data for all users.
  • MyDocuments - My Documents
  • DesktopDirectory - Desktop directory
  • LocalApplicationData - non roaming application data
  • Personal - user profile directory
  • System - System directory
Gets or sets the name of the file to be Path.Combine()'d with the directory name. Gets or sets the name of the directory to be Path.Combine()'d with the directory name. Format of the ${stacktrace} layout renderer output. Raw format (multiline - as returned by StackFrame.ToString() method). Flat format (class and method names displayed in a single line). Detailed flat format (method signatures displayed in a single line). Stack trace renderer. Initializes a new instance of the class. Renders the call site and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the output format of the stack trace. Gets or sets the number of top stack frames to be rendered. Gets or sets the number of frames to skip. Gets or sets the stack frame separator string. Gets the level of stack trace information required by the implementing class. A temporary directory. Renders the directory where NLog is located and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the file to be Path.Combine()'d with the directory name. Gets or sets the name of the directory to be Path.Combine()'d with the directory name. The identifier of the current thread. Renders the current thread identifier and appends it to the specified . The to append the rendered data to. Logging event. The name of the current thread. Renders the current thread name and appends it to the specified . The to append the rendered data to. Logging event. The Ticks value of current date and time. Renders the ticks value of current time and appends it to the specified . The to append the rendered data to. Logging event. The time in a 24-hour, sortable format HH:mm:ss.mmm. Renders time in the 24-h format (HH:mm:ss.mmm) and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets a value indicating whether to output UTC time instead of local time. Render a NLog variable (xml or config) Renders the specified variable and appends it to the specified . The to append the rendered data to. Logging event. Gets or sets the name of the NLog variable. Gets or sets the default value to be used when the variable is not set. Not used if Name is null Applies caching to another layout output. The value of the inner layout will be rendered only once and reused subsequently. Decodes text "encrypted" with ROT-13. See http://en.wikipedia.org/wiki/ROT13. Renders the inner message, processes it and appends it to the specified . The to append the rendered data to. Logging event. Transforms the output of another layout. Output to be transform. Transformed text. Renders the inner layout contents. The log event. Contents of inner layout. Gets or sets the wrapped layout. Initializes a new instance of the class. Initializes the layout renderer. Closes the layout renderer. Transforms the output of another layout. Output to be transform. Transformed text. Renders the inner layout contents. The log event. Contents of inner layout. Gets or sets a value indicating whether this is enabled. Filters characters not allowed in the file names by replacing them with safe character. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. Padded and trimmed string. Gets or sets a value indicating whether to modify the output of this renderer so it can be used as a part of file path (illegal characters are replaced with '_'). Escapes output of another layout using JSON rules. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. JSON-encoded string. Gets or sets a value indicating whether to apply JSON encoding. Converts the result of another layout output to lower case. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. Padded and trimmed string. Gets or sets a value indicating whether lower case conversion should be applied. A value of true if lower case conversion should be applied; otherwise, false. Gets or sets the culture used for rendering. Only outputs the inner layout when exception has been defined for log message. Transforms the output of another layout. Output to be transform. Transformed text. Renders the inner layout contents. The log event. Contents of inner layout. Horizontal alignment for padding layout renderers. When layout text is too long, align it to the left (remove characters from the right). When layout text is too long, align it to the right (remove characters from the left). Applies padding to another layout output. Initializes a new instance of the class. Transforms the output of another layout. Output to be transform. Transformed text. Gets or sets the number of characters to pad the output to. Positive padding values cause left padding, negative values cause right padding to the desired width. Gets or sets the padding character. Gets or sets a value indicating whether to trim the rendered text to the absolute value of the padding length. Gets or sets a value indicating whether a value that has been truncated (when is true) will be left-aligned (characters removed from the right) or right-aligned (characters removed from the left). The default is left alignment. Replaces a string in the output of another layout with another string. Initializes the layout renderer. Post-processes the rendered message. The text to be post-processed. Post-processed text. A match evaluator for Regular Expression based replacing Gets or sets the text to search for. The text search for. Gets or sets a value indicating whether regular expressions should be used. A value of true if regular expressions should be used otherwise, false. Gets or sets the replacement string. The replacement string. Gets or sets the group name to replace when using regular expressions. Leave null or empty to replace without using group name. The group name. Gets or sets a value indicating whether to ignore case. A value of true if case should be ignored when searching; otherwise, false. Gets or sets a value indicating whether to search for whole words. A value of true if whole words should be searched for; otherwise, false. This class was created instead of simply using a lambda expression so that the "ThreadAgnosticAttributeTest" will pass Replaces newline characters from the result of another layout renderer with spaces. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. String with newline characters replaced with spaces. Gets or sets a value indicating the string that should be used for separating lines. Decodes text "encrypted" with ROT-13. See http://en.wikipedia.org/wiki/ROT13. Encodes/Decodes ROT-13-encoded string. The string to be encoded/decoded. Encoded/Decoded text. Transforms the output of another layout. Output to be transform. Transformed text. Gets or sets the layout to be wrapped. The layout to be wrapped. This variable is for backwards compatibility Trims the whitespace from the result of another layout renderer. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. Trimmed string. Gets or sets a value indicating whether lower case conversion should be applied. A value of true if lower case conversion should be applied; otherwise, false. Converts the result of another layout output to upper case. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. Padded and trimmed string. Gets or sets a value indicating whether upper case conversion should be applied. A value of true if upper case conversion should be applied otherwise, false. Gets or sets the culture used for rendering. Encodes the result of another layout output for use with URLs. Initializes a new instance of the class. Transforms the output of another layout. Output to be transform. Transformed text. Gets or sets a value indicating whether spaces should be translated to '+' or '%20'. A value of true if space should be translated to '+'; otherwise, false. Outputs alternative layout when the inner layout produces empty result. Transforms the output of another layout. Output to be transform. Transformed text. Renders the inner layout contents. The log event. Contents of inner layout. Gets or sets the layout to be rendered when original layout produced empty result. Only outputs the inner layout when the specified condition has been met. Transforms the output of another layout. Output to be transform. Transformed text. Renders the inner layout contents. The log event. Contents of inner layout. Gets or sets the condition that must be met for the inner layout to be printed. Converts the result of another layout output to be XML-compliant. Initializes a new instance of the class. Post-processes the rendered message. The text to be post-processed. Padded and trimmed string. Gets or sets a value indicating whether to apply XML encoding. A column in the CSV. Initializes a new instance of the class. Initializes a new instance of the class. The name of the column. The layout of the column. Gets or sets the name of the column. Gets or sets the layout of the column. Specifies allowed column delimiters. Automatically detect from regional settings. Comma (ASCII 44). Semicolon (ASCII 59). Tab character (ASCII 9). Pipe character (ASCII 124). Space character (ASCII 32). Custom string, specified by the CustomDelimiter. A specialized layout that renders CSV-formatted events. A specialized layout that supports header and footer. Abstract interface that layouts must implement. Converts a given text to a . Text to be converted. object represented by the text. Implicitly converts the specified string to a . The layout string. Instance of . Implicitly converts the specified string to a . The layout string. The NLog factories to use when resolving layout renderers. Instance of . Precalculates the layout for the specified log event and stores the result in per-log event cache. The log event. Calling this method enables you to store the log event in a buffer and/or potentially evaluate it in another thread even though the layout may contain thread-dependent renderer. Renders the event info in layout. The event info. String representing log event. Initializes this instance. The configuration. Closes this instance. Initializes this instance. The configuration. Closes this instance. Initializes the layout. Closes the layout. Renders the layout for the specified logging event by invoking layout renderers. The logging event. The rendered layout. Gets a value indicating whether this layout is thread-agnostic (can be rendered on any thread). Layout is thread-agnostic if it has been marked with [ThreadAgnostic] attribute and all its children are like that as well. Thread-agnostic layouts only use contents of for its output. Gets the logging configuration this target is part of. Renders the layout for the specified logging event by invoking layout renderers. The logging event. The rendered layout. Gets or sets the body layout (can be repeated multiple times). Gets or sets the header layout. Gets or sets the footer layout. Initializes a new instance of the class. Initializes the layout. Formats the log event for write. The log event to be formatted. A string representation of the log event. Gets the array of parameters to be passed. Gets or sets a value indicating whether CVS should include header. A value of true if CVS should include header; otherwise, false. Gets or sets the column delimiter. Gets or sets the quoting mode. Gets or sets the quote Character. Gets or sets the custom column delimiter value (valid when ColumnDelimiter is set to 'Custom'). Header for CSV layout. Initializes a new instance of the class. The parent. Renders the layout for the specified logging event by invoking layout renderers. The logging event. The rendered layout. Specifies CSV quoting modes. Quote all column. Quote nothing. Quote only whose values contain the quote symbol or the separator. JSON attribute. Initializes a new instance of the class. Initializes a new instance of the class. The name of the attribute. The layout of the attribute's value. Initializes a new instance of the class. The name of the attribute. The layout of the attribute's value. Encode value with json-encode Gets or sets the name of the attribute. Gets or sets the layout that will be rendered as the attribute's value. Determines wether or not this attribute will be Json encoded. A specialized layout that renders JSON-formatted events. Initializes a new instance of the class. Formats the log event as a JSON document for writing. The log event to be formatted. A JSON string representation of the log event. Gets the array of attributes' configurations. Gets or sets the option to suppress the extra spaces in the output json Marks class as a layout renderer and assigns a format string to it. Initializes a new instance of the class. Layout name. Parses layout strings. A specialized layout that renders Log4j-compatible XML events. This layout is not meant to be used explicitly. Instead you can use ${log4jxmlevent} layout renderer. Initializes a new instance of the class. Renders the layout for the specified logging event by invoking layout renderers. The logging event. The rendered layout. Gets the instance that renders log events. Represents a string with embedded placeholders that can render contextual information. This layout is not meant to be used explicitly. Instead you can just use a string containing layout renderers everywhere the layout is required. Initializes a new instance of the class. Initializes a new instance of the class. The layout string to parse. Initializes a new instance of the class. The layout string to parse. The NLog factories to use when creating references to layout renderers. Converts a text to a simple layout. Text to be converted. A object. Escapes the passed text so that it can be used literally in all places where layout is normally expected without being treated as layout. The text to be escaped. The escaped text. Escaping is done by replacing all occurrences of '${' with '${literal:text=${}' Evaluates the specified text by expanding all layout renderers. The text to be evaluated. Log event to be used for evaluation. The input text with all occurrences of ${} replaced with values provided by the appropriate layout renderers. Evaluates the specified text by expanding all layout renderers in new context. The text to be evaluated. The input text with all occurrences of ${} replaced with values provided by the appropriate layout renderers. Returns a that represents the current object. A that represents the current object. Renders the layout for the specified logging event by invoking layout renderers that make up the event. The logging event. The rendered layout. Original text before compile to Layout renderes Gets or sets the layout text. Is the message fixed? (no Layout renderers used) Get the fixed text. Only set when is true Gets a collection of objects that make up this layout. Represents the logging event. Gets the date of the first log event created. Initializes a new instance of the class. Initializes a new instance of the class. Log level. Logger name. Log message including parameter placeholders. Initializes a new instance of the class. Log level. Logger name. An IFormatProvider that supplies culture-specific formatting information. Log message including parameter placeholders. Parameter array. Initializes a new instance of the class. Log level. Logger name. An IFormatProvider that supplies culture-specific formatting information. Log message including parameter placeholders. Parameter array. Exception information. Creates the null event. Null log event. Creates the log event. The log level. Name of the logger. The message. Instance of . Creates the log event. The log level. Name of the logger. The format provider. The message. The parameters. Instance of . Creates the log event. The log level. Name of the logger. The format provider. The message. Instance of . Creates the log event. The log level. Name of the logger. The message. The exception. Instance of . Creates the log event. The log level. Name of the logger. The exception. The format provider. The message. Instance of . Creates the log event. The log level. Name of the logger. The exception. The format provider. The message. The parameters. Instance of . Creates from this by attaching the specified asynchronous continuation. The asynchronous continuation. Instance of with attached continuation. Returns a string representation of this log event. String representation of the log event. Sets the stack trace for the event info. The stack trace. Index of the first user stack frame within the stack trace. Gets the unique identifier of log event which is automatically generated and monotonously increasing. Gets or sets the timestamp of the logging event. Gets or sets the level of the logging event. Gets a value indicating whether stack trace has been set for this event. Gets the stack frame of the method that did the logging. Gets the number index of the stack frame that represents the user code (not the NLog code). Gets the entire stack trace. Gets or sets the exception information. Gets or sets the logger name. Gets the logger short name. Gets or sets the log message including any parameter placeholders. Gets or sets the parameter values or null if no parameters have been specified. Gets or sets the format provider that was provided while logging or when no formatProvider was specified. Gets the formatted message. Gets the dictionary of per-event context properties. Gets the dictionary of per-event context properties. Creates and manages instances of objects. Initializes a new instance of the class. Initializes a new instance of the class. The config. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Creates a logger that discards all log messages. Null logger instance. Gets the logger named after the currently-being-initialized class. The logger. This is a slow-running method. Make sure you're not doing this in a loop. Gets the logger named after the currently-being-initialized class. The type of the logger to create. The type must inherit from NLog.Logger. The logger. This is a slow-running method. Make sure you are not calling this method in a loop. Gets the specified named logger. Name of the logger. The logger reference. Multiple calls to GetLogger with the same argument are not guaranteed to return the same logger reference. Gets the specified named logger. Name of the logger. The type of the logger to create. The type must inherit from NLog.Logger. The logger reference. Multiple calls to GetLogger with the same argument aren't guaranteed to return the same logger reference. Loops through all loggers previously returned by GetLogger and recalculates their target and filter list. Useful after modifying the configuration programmatically to ensure that all loggers have been properly configured. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Maximum time to allow for the flush. Any messages after that time will be discarded. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Maximum time to allow for the flush. Any messages after that time will be discarded. Decreases the log enable counter and if it reaches -1 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. An object that implements IDisposable whose Dispose() method re-enables logging. To be used with C# using () statement. Increases the log enable counter and if it reaches 0 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. Decreases the log enable counter and if it reaches -1 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. An object that implements IDisposable whose Dispose() method re-enables logging. To be used with C# using () statement. Increases the log enable counter and if it reaches 0 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. Returns if logging is currently enabled. A value of if logging is currently enabled, otherwise. Logging is enabled if the number of calls is greater than or equal to calls. Invoke the Changed event; called whenever list changes Event arguments. Releases unmanaged and - optionally - managed resources. True to release both managed and unmanaged resources; false to release only unmanaged resources. Occurs when logging changes. Gets the current . Gets or sets a value indicating whether exceptions should be thrown. A value of true if exception should be thrown; otherwise, false. By default exceptions are not thrown under any circumstances. Gets or sets the current logging configuration. Gets or sets the global log threshold. Log events below this threshold are not logged. Gets the default culture info to use as . Specific culture info or null to use Logger cache key. Serves as a hash function for a particular type. A hash code for the current . Determines if two objects are equal in value. Other object to compare to. True if objects are equal, false otherwise. Determines if two objects of the same type are equal in value. Other object to compare to. True if objects are equal, false otherwise. Logger cache. Inserts or updates. Enables logging in implementation. Initializes a new instance of the class. The factory. Enables logging. Specialized LogFactory that can return instances of custom logger types. The type of the logger to be returned. Must inherit from . Gets the logger. The logger name. An instance of . Gets the logger named after the currently-being-initialized class. The logger. This is a slow-running method. Make sure you're not doing this in a loop. Provides logging interface and utility functions. Provides logging interface and utility functions. Logging methods which only are executed when the DEBUG conditional compilation symbol is set. The DEBUG conditional compilation symbol is default enabled (only) in a debug build. If the DEBUG conditional compilation symbol isn't set in the calling library, the compiler will remove all the invocations to these methods. This could lead to better performance. See: https://msdn.microsoft.com/en-us/library/4xssyw96%28v=vs.90%29.aspx Initializes a new instance of the class. Gets a value indicating whether logging is enabled for the specified level. Log level to be checked. A value of if logging is enabled for the specified level, otherwise it returns . Writes the specified diagnostic message. Log event. Writes the specified diagnostic message. The name of the type that wraps Logger. Log event. Writes the diagnostic message at the specified level using the specified format provider and format parameters. Writes the diagnostic message at the specified level. Type of the value. The log level. The value to be written. Writes the diagnostic message at the specified level. Type of the value. The log level. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the specified level. The log level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the specified level. The log level. A to be written. An exception to be logged. Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the specified level. The log level. Log message. Writes the diagnostic message at the specified level using the specified parameters. The log level. A containing format items. Arguments to format. Writes the diagnostic message and exception at the specified level. The log level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the specified level. The log level. A to be written. Arguments to format. An exception to be logged. Writes the diagnostic message and exception at the specified level. The log level. An IFormatProvider that supplies culture-specific formatting information. A to be written. Arguments to format. An exception to be logged. Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. The type of the argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the specified level using the specified parameter. The type of the argument. The log level. A containing one format item. The argument to format. Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the specified level using the specified parameters. The type of the first argument. The type of the second argument. The log level. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. The log level. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the specified level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. The log level. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Runs action. If the action throws, the exception is logged at Error level. Exception is not propagated outside of this method. Action to execute. Runs the provided function and returns its result. If exception is thrown, it is logged at Error level. Exception is not propagated outside of this method. Fallback value is returned instead. Return type of the provided function. Function to run. Result returned by the provided function or fallback value in case of exception. Runs the provided function and returns its result. If exception is thrown, it is logged at Error level. Exception is not propagated outside of this method. Fallback value is returned instead. Return type of the provided function. Function to run. Fallback value to return in case of exception. Defaults to default value of type T. Result returned by the provided function or fallback value in case of exception. Writes the diagnostic message at the Trace level using the specified format provider and format parameters. Writes the diagnostic message at the Trace level. Type of the value. The value to be written. Writes the diagnostic message at the Trace level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Trace level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Writes the diagnostic message at the Trace level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Trace level. Log message. Writes the diagnostic message at the Trace level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Trace level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Trace level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Trace level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Trace level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified format provider and format parameters. Writes the diagnostic message at the Debug level. Type of the value. The value to be written. Writes the diagnostic message at the Debug level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Debug level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Writes the diagnostic message at the Debug level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Debug level. Log message. Writes the diagnostic message at the Debug level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Debug level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Debug level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Debug level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Info level using the specified format provider and format parameters. Writes the diagnostic message at the Info level. Type of the value. The value to be written. Writes the diagnostic message at the Info level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Info level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Writes the diagnostic message at the Info level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Info level. Log message. Writes the diagnostic message at the Info level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Info level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Info level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Info level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Info level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Info level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Info level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Warn level using the specified format provider and format parameters. Writes the diagnostic message at the Warn level. Type of the value. The value to be written. Writes the diagnostic message at the Warn level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Warn level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Writes the diagnostic message at the Warn level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Warn level. Log message. Writes the diagnostic message at the Warn level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Warn level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Warn level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Warn level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Warn level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Warn level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Warn level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Error level using the specified format provider and format parameters. Writes the diagnostic message at the Error level. Type of the value. The value to be written. Writes the diagnostic message at the Error level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Error level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Writes the diagnostic message at the Error level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Error level. Log message. Writes the diagnostic message at the Error level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Error level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Error level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Error level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Error level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Error level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Error level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Fatal level using the specified format provider and format parameters. Writes the diagnostic message at the Fatal level. Type of the value. The value to be written. Writes the diagnostic message at the Fatal level. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Fatal level. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Writes the diagnostic message at the Fatal level using the specified parameters and formatting them with the supplied format provider. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Fatal level. Log message. Writes the diagnostic message at the Fatal level using the specified parameters. A containing format items. Arguments to format. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Writes the diagnostic message and exception at the Fatal level. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Fatal level. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Fatal level using the specified parameter and formatting it with the supplied format provider. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Fatal level using the specified parameter. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Fatal level using the specified parameters. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Fatal level using the specified parameters. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified format provider and format parameters. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. Type of the value. The value to be written. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Debug level using the specified parameters and formatting them with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. Log message. Writes the diagnostic message at the Debug level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. Arguments to format. Writes the diagnostic message at the Debug level using the specified parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified parameter. Only executed when the DEBUG conditional compilation symbol is set. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. A to be written. Writes the diagnostic message at the Debug level. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A to be written. Writes the diagnostic message at the Debug level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. First argument to format. Second argument to format. Writes the diagnostic message at the Debug level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. First argument to format. Second argument to format. Third argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Debug level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified format provider and format parameters. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. Type of the value. The value to be written. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. Type of the value. An IFormatProvider that supplies culture-specific formatting information. The value to be written. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. A function returning message to be written. Function is not evaluated if logging is not enabled. Writes the diagnostic message and exception at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message and exception at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A to be written. An exception to be logged. Arguments to format. Writes the diagnostic message at the Trace level using the specified parameters and formatting them with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing format items. Arguments to format. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. Log message. Writes the diagnostic message at the Trace level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. Arguments to format. Writes the diagnostic message at the Trace level using the specified parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified parameter. Only executed when the DEBUG conditional compilation symbol is set. The type of the argument. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. A containing one format item. The first argument to format. The second argument to format. Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. The type of the third argument. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Trace level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. The type of the first argument. The type of the second argument. The type of the third argument. A containing one format item. The first argument to format. The second argument to format. The third argument to format. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. A to be written. Writes the diagnostic message at the Trace level. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A to be written. Writes the diagnostic message at the Trace level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. First argument to format. Second argument to format. Writes the diagnostic message at the Trace level using the specified parameters. Only executed when the DEBUG conditional compilation symbol is set. A containing format items. First argument to format. Second argument to format. Third argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter and formatting it with the supplied format provider. Only executed when the DEBUG conditional compilation symbol is set. An IFormatProvider that supplies culture-specific formatting information. A containing one format item. The argument to format. Writes the diagnostic message at the Trace level using the specified value as a parameter. Only executed when the DEBUG conditional compilation symbol is set. A containing one format item. The argument to format. Occurs when logger configuration changes. Gets the name of the logger. Gets the factory that created this logger. Gets a value indicating whether logging is enabled for the Trace level. A value of if logging is enabled for the Trace level, otherwise it returns . Gets a value indicating whether logging is enabled for the Debug level. A value of if logging is enabled for the Debug level, otherwise it returns . Gets a value indicating whether logging is enabled for the Info level. A value of if logging is enabled for the Info level, otherwise it returns . Gets a value indicating whether logging is enabled for the Warn level. A value of if logging is enabled for the Warn level, otherwise it returns . Gets a value indicating whether logging is enabled for the Error level. A value of if logging is enabled for the Error level, otherwise it returns . Gets a value indicating whether logging is enabled for the Fatal level. A value of if logging is enabled for the Fatal level, otherwise it returns . Implementation of logging engine. Finds first user stack frame in a stack trace The stack trace of the logging method invocation Type of the logger or logger wrapper Index of the first user stack frame or 0 if all stack frames are non-user Defines whether a stack frame belongs to non-user code Method of the stack frame Type of the logger or logger wrapper , if the method is from non-user code and should be skipped The method is classified as non-user if its declaring assembly is from hidden assemblies list or its declaring type is or one of its subtypes. Gets the filter result. The filter chain. The log event. The result of the filter. Defines available log levels. Trace log level. Debug log level. Info log level. Warn log level. Error log level. Fatal log level. Off log level. Initializes a new instance of . The log level name. The log level ordinal number. Compares two objects and returns a value indicating whether the first one is equal to the second one. The first level. The second level. The value of level1.Ordinal == level2.Ordinal. Compares two objects and returns a value indicating whether the first one is not equal to the second one. The first level. The second level. The value of level1.Ordinal != level2.Ordinal. Compares two objects and returns a value indicating whether the first one is greater than the second one. The first level. The second level. The value of level1.Ordinal > level2.Ordinal. Compares two objects and returns a value indicating whether the first one is greater than or equal to the second one. The first level. The second level. The value of level1.Ordinal >= level2.Ordinal. Compares two objects and returns a value indicating whether the first one is less than the second one. The first level. The second level. The value of level1.Ordinal < level2.Ordinal. Compares two objects and returns a value indicating whether the first one is less than or equal to the second one. The first level. The second level. The value of level1.Ordinal <= level2.Ordinal. Gets the that corresponds to the specified ordinal. The ordinal. The instance. For 0 it returns , 1 gives and so on. Returns the that corresponds to the supplied . The textual representation of the log level. The enumeration value. Returns a string representation of the log level. Log level name. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. Determines whether the specified is equal to this instance. The to compare with this instance. Value of true if the specified is equal to this instance; otherwise, false. Determines whether the specified instance is equal to this instance. The to compare with this instance. Value of true if the specified is equal to this instance; otherwise, false. Compares the level to the other object. The object object. A value less than zero when this logger's is less than the other logger's ordinal, 0 when they are equal and greater than zero when this ordinal is greater than the other ordinal. Gets the name of the log level. Gets the ordinal of the log level. Creates and manages instances of objects. Prevents a default instance of the LogManager class from being created. Gets the logger named after the currently-being-initialized class. The logger. This is a slow-running method. Make sure you're not doing this in a loop. Adds the given assembly which will be skipped when NLog is trying to find the calling method on stack trace. The assembly to skip. Gets the logger named after the currently-being-initialized class. The logger class. The class must inherit from . The logger. This is a slow-running method. Make sure you're not doing this in a loop. Creates a logger that discards all log messages. Null logger which discards all log messages. Gets the specified named logger. Name of the logger. The logger reference. Multiple calls to GetLogger with the same argument aren't guaranteed to return the same logger reference. Gets the specified named logger. Name of the logger. The logger class. The class must inherit from . The logger reference. Multiple calls to GetLogger with the same argument aren't guaranteed to return the same logger reference. Loops through all loggers previously returned by GetLogger. and recalculates their target and filter list. Useful after modifying the configuration programmatically to ensure that all loggers have been properly configured. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Maximum time to allow for the flush. Any messages after that time will be discarded. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Maximum time to allow for the flush. Any messages after that time will be discarded. Decreases the log enable counter and if it reaches -1 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. An object that implements IDisposable whose Dispose() method reenables logging. To be used with C# using () statement. Increases the log enable counter and if it reaches 0 the logs are disabled. Logging is enabled if the number of calls is greater than or equal to calls. Checks if logging is currently enabled. if logging is currently enabled, otherwise. Logging is enabled if the number of calls is greater than or equal to calls. Dispose all targets, and shutdown logging. Gets the fully qualified name of the class invoking the LogManager, including the namespace but not the assembly. Occurs when logging changes. Gets or sets a value indicating whether NLog should throw exceptions. By default exceptions are not thrown under any circumstances. Gets or sets the current logging configuration. Gets or sets the global log threshold. Log events below this threshold are not logged. Gets or sets the default culture to use. Delegate used to set/get the culture in use. Returns a log message. Used to defer calculation of the log message until it's actually needed. Log message. Service contract for Log Receiver client. Begins processing of log messages. The events. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Service contract for Log Receiver client. Begins processing of log messages. The events. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Service contract for Log Receiver client. Begins processing of log messages. The events. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Client of Opens the client asynchronously. Opens the client asynchronously. User-specific state. Closes the client asynchronously. Closes the client asynchronously. User-specific state. Processes the log messages asynchronously. The events to send. Processes the log messages asynchronously. The events to send. User-specific state. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Occurs when the log message processing has completed. Occurs when Open operation has completed. Occurs when Close operation has completed. Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. Gets the underlying implementation. Gets the target endpoint for the service to which the WCF client can connect. Gets or sets the cookie container. The cookie container. Internal configuration of Log Receiver Service contracts. Wire format for NLog Event. Initializes a new instance of the class. Converts the to . The object this is part of.. The logger name prefix to prepend in front of the logger name. Converted . Gets or sets the client-generated identifier of the event. Gets or sets the ordinal of the log level. Gets or sets the logger ordinal (index into . The logger ordinal. Gets or sets the time delta (in ticks) between the time of the event and base time. Gets or sets the message string index. Gets or sets the collection of layout values. Gets the collection of indexes into array for each layout value. Wire format for NLog event package. Converts the events to sequence of objects suitable for routing through NLog. The logger name prefix to prepend in front of each logger name. Sequence of objects. Converts the events to sequence of objects suitable for routing through NLog. Sequence of objects. Gets or sets the name of the client. The name of the client. Gets or sets the base time (UTC ticks) for all events in the package. The base time UTC. Gets or sets the collection of layout names which are shared among all events. The layout names. Gets or sets the collection of logger names. The logger names. Gets or sets the list of events. The events. List of strings annotated for more terse serialization. Initializes a new instance of the class. Log Receiver Client using WCF. This will be removed when ILogReceiverClient is removed. This provides an implementation of the legacy interface. Abstract base class for the WcfLogReceiverXXXWay classes. It can only be used internally (see internal constructor). It passes off any Channel usage to the inheriting class. Initializes a new instance of the class. Initializes a new instance of the class. Name of the endpoint configuration. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. The binding. The remote address. Opens the client asynchronously. Opens the client asynchronously. User-specific state. Closes the client asynchronously. Closes the client asynchronously. User-specific state. Processes the log messages asynchronously. The events to send. Processes the log messages asynchronously. The events to send. User-specific state. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Occurs when the log message processing has completed. Occurs when Open operation has completed. Occurs when Close operation has completed. Gets or sets the cookie container. The cookie container. Initializes a new instance of the class. Initializes a new instance of the class. Name of the endpoint configuration. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. The binding. The remote address. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Returns a new channel from the client to the service. A channel of type that identifies the type of service contract encapsulated by this client object (proxy). Log Receiver Client facade. It allows the use either of the one way or two way service contract using WCF through its unified interface. Delegating methods are generated with Resharper. 1. change ProxiedClient to private field (instead of public property) 2. delegate members 3. change ProxiedClient back to public property. Initializes a new instance of the class. Whether to use the one way or two way WCF client. Initializes a new instance of the class. Whether to use the one way or two way WCF client. Name of the endpoint configuration. Initializes a new instance of the class. Whether to use the one way or two way WCF client. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Whether to use the one way or two way WCF client. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Whether to use the one way or two way WCF client. The binding. The remote address. Causes a communication object to transition immediately from its current state into the closed state. Begins an asynchronous operation to close a communication object. The that references the asynchronous close operation. The delegate that receives notification of the completion of the asynchronous close operation.An object, specified by the application, that contains state information associated with the asynchronous close operation. was called on an object in the state.The default timeout elapsed before the was able to close gracefully. Begins an asynchronous operation to close a communication object with a specified timeout. The that references the asynchronous close operation. The that specifies how long the send operation has to complete before timing out.The delegate that receives notification of the completion of the asynchronous close operation.An object, specified by the application, that contains state information associated with the asynchronous close operation. was called on an object in the state.The specified timeout elapsed before the was able to close gracefully. Begins an asynchronous operation to open a communication object. The that references the asynchronous open operation. The delegate that receives notification of the completion of the asynchronous open operation.An object, specified by the application, that contains state information associated with the asynchronous open operation.The was unable to be opened and has entered the state.The default open timeout elapsed before the was able to enter the state and has entered the state. Begins an asynchronous operation to open a communication object within a specified interval of time. The that references the asynchronous open operation. The that specifies how long the send operation has to complete before timing out.The delegate that receives notification of the completion of the asynchronous open operation.An object, specified by the application, that contains state information associated with the asynchronous open operation.The was unable to be opened and has entered the state.The specified timeout elapsed before the was able to enter the state and has entered the state. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Causes a communication object to transition from its current state into the closed state. The that specifies how long the send operation has to complete before timing out. was called on an object in the state.The timeout elapsed before the was able to close gracefully. Causes a communication object to transition from its current state into the closed state. was called on an object in the state.The default close timeout elapsed before the was able to close gracefully. Closes the client asynchronously. User-specific state. Closes the client asynchronously. Completes an asynchronous operation to close a communication object. The that is returned by a call to the method. was called on an object in the state.The timeout elapsed before the was able to close gracefully. Completes an asynchronous operation to open a communication object. The that is returned by a call to the method.The was unable to be opened and has entered the state.The timeout elapsed before the was able to enter the state and has entered the state. Ends asynchronous processing of log messages. The result. Causes a communication object to transition from the created state into the opened state. The was unable to be opened and has entered the state.The default open timeout elapsed before the was able to enter the state and has entered the state. Causes a communication object to transition from the created state into the opened state within a specified interval of time. The that specifies how long the send operation has to complete before timing out.The was unable to be opened and has entered the state.The specified timeout elapsed before the was able to enter the state and has entered the state. Opens the client asynchronously. Opens the client asynchronously. User-specific state. Processes the log messages asynchronously. The events to send. Processes the log messages asynchronously. The events to send. User-specific state. Causes a communication object to transition from its current state into the closed state. The client getting proxied Do we use one-way or two-way messaging? Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. Occurs when Close operation has completed. Occurs when the communication object completes its transition from the closing state into the closed state. Occurs when the communication object first enters the closing state. Gets or sets the cookie container. The cookie container. Gets the target endpoint for the service to which the WCF client can connect. Occurs when the communication object first enters the faulted state. Gets the underlying implementation. Occurs when Open operation has completed. Occurs when the communication object completes its transition from the opening state into the opened state. Occurs when the communication object first enters the opening state. Occurs when the log message processing has completed. Gets the current state of the communication-oriented object. The value of the of the object. Log Receiver Client using WCF. Initializes a new instance of the class. Initializes a new instance of the class. Name of the endpoint configuration. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. The binding. The remote address. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Returns a new channel from the client to the service. A channel of type that identifies the type of service contract encapsulated by this client object (proxy). Log Receiver Client using WCF. Initializes a new instance of the class. Initializes a new instance of the class. Name of the endpoint configuration. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. Name of the endpoint configuration. The remote address. Initializes a new instance of the class. The binding. The remote address. Begins processing of log messages. The events to send. The callback. Asynchronous state. IAsyncResult value which can be passed to . Ends asynchronous processing of log messages. The result. Returns a new channel from the client to the service. A channel of type that identifies the type of service contract encapsulated by this client object (proxy). Mapped Diagnostics Context - a thread-local structure that keeps a dictionary of strings and provides methods to output them in layouts. Mostly for compatibility with log4net. Sets the current thread MDC item to the specified value. Item name. Item value. Sets the current thread MDC item to the specified value. Item name. Item value. Gets the current thread MDC named item, as . Item name. The value of , if defined; otherwise . Gets the current thread MDC named item, as . Item name. The to use when converting a value to a string. The value of , if defined; otherwise . Gets the current thread MDC named item, as . Item name. The value of , if defined; otherwise null. Checks whether the specified item exists in current thread MDC. Item name. A boolean indicating whether the specified exists in current thread MDC. Removes the specified from current thread MDC. Item name. Clears the content of current thread MDC. Mapped Diagnostics Context - used for log4net compatibility. Sets the current thread MDC item to the specified value. Item name. Item value. Gets the current thread MDC named item. Item name. The value of , if defined; otherwise . Gets the current thread MDC named item. Item name. The value of , if defined; otherwise null. Checks whether the specified item exists in current thread MDC. Item name. A boolean indicating whether the specified item exists in current thread MDC. Removes the specified item from current thread MDC. Item name. Clears the content of current thread MDC. Nested Diagnostics Context - for log4net compatibility. Pushes the specified text on current thread NDC. The text to be pushed. An instance of the object that implements IDisposable that returns the stack to the previous level when IDisposable.Dispose() is called. To be used with C# using() statement. Pops the top message off the NDC stack. The top message which is no longer on the stack. Pops the top object off the NDC stack. The object is removed from the stack. The top object from the NDC stack, if defined; otherwise null. Clears current thread NDC stack. Gets all messages on the stack. Array of strings on the stack. Gets all objects on the NDC stack. The objects are not removed from the stack. Array of objects on the stack. Gets the top NDC message but doesn't remove it. The top message. . Gets the top NDC object but doesn't remove it. The object from the top of the NDC stack, if defined; otherwise null. Nested Diagnostics Context - a thread-local structure that keeps a stack of strings and provides methods to output them in layouts Mostly for compatibility with log4net. Pushes the specified text on current thread NDC. The text to be pushed. An instance of the object that implements IDisposable that returns the stack to the previous level when IDisposable.Dispose() is called. To be used with C# using() statement. Pushes the specified object on current thread NDC. The object to be pushed. An instance of the object that implements IDisposable that returns the stack to the previous level when IDisposable.Dispose() is called. To be used with C# using() statement. Pops the top message off the NDC stack. The top message which is no longer on the stack. Pops the top message from the NDC stack. The to use when converting the value to a string. The top message, which is removed from the stack, as a string value. Pops the top object off the NDC stack. The object from the top of the NDC stack, if defined; otherwise null. Clears current thread NDC stack. Gets all messages on the stack. Array of strings on the stack. Gets all messages from the stack, without removing them. The to use when converting a value to a string. Array of strings. Gets all objects on the stack. Array of objects on the stack. Gets the top NDC message but doesn't remove it. The top message. . Gets the top NDC object but doesn't remove it. The object at the top of the NDC stack if defined; otherwise null. Resets the stack to the original count during . Initializes a new instance of the class. The stack. The previous count. Reverts the stack to original item count. Exception thrown during NLog configuration. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. The inner exception. Exception thrown during log event processing. Initializes a new instance of the class. Initializes a new instance of the class. The message. Initializes a new instance of the class. The message. Parameters for the message Initializes a new instance of the class. The message. The inner exception. Specifies the way archive numbering is performed. Sequence style numbering. The most recent archive has the highest number. Rolling style numbering (the most recent is always #0 then #1, ..., #N. Date style numbering. Archives will be stamped with the prior period (Year, Month, Day, Hour, Minute) datetime. Date and sequence style numbering. Archives will be stamped with the prior period (Year, Month, Day) datetime. The most recent archive has the highest number (in combination with the date). Sends log messages to the remote instance of Chainsaw application from log4j. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol or you'll get TCP timeouts and your application will crawl. Either switch to UDP transport or use AsyncWrapper target so that your application threads will not be blocked by the timing-out connection attempts.

Sends log messages to the remote instance of NLog Viewer. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol or you'll get TCP timeouts and your application will crawl. Either switch to UDP transport or use AsyncWrapper target so that your application threads will not be blocked by the timing-out connection attempts.

Sends log messages over the network. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

To print the results, use any application that's able to receive messages over TCP or UDP. NetCat is a simple but very powerful command-line tool that can be used for that. This image demonstrates the NetCat tool receiving log messages from Network target.

NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol or you'll get TCP timeouts and your application will be very slow. Either switch to UDP transport or use AsyncWrapper target so that your application threads will not be blocked by the timing-out connection attempts.

There are two specialized versions of the Network target: Chainsaw and NLogViewer which write to instances of Chainsaw log4j viewer or NLogViewer application respectively.

Represents target that supports string formatting using layouts. Represents logging target. Initializes this instance. The configuration. Closes this instance. Closes the target. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Calls the on each volatile layout used by this target. The log event. Returns a that represents this instance. A that represents this instance. Writes the log to the target. Log event to write. Writes the array of log events. The log events. Initializes this instance. The configuration. Closes this instance. Releases unmanaged and - optionally - managed resources. True to release both managed and unmanaged resources; false to release only unmanaged resources. Initializes the target. Can be used by inheriting classes to initialize logging. Closes the target and releases any unmanaged resources. Flush any pending log messages asynchronously (in case of asynchronous targets). The asynchronous continuation. Writes logging event to the log target. classes. Logging event to be written out. Writes log event to the log target. Must be overridden in inheriting classes. Log event to be written out. Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Write" method. Inheriting classes can use this method to optimize batch writes. Logging events to be written out. Merges (copies) the event context properties from any event info object stored in parameters of the given event info object. The event info object to perform the merge to. Gets or sets the name of the target. Gets the object which can be used to synchronize asynchronous operations that must rely on the . Gets the logging configuration this target is part of. Gets a value indicating whether the target has been initialized. Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Gets or sets the layout used to format log messages. Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Flush any pending log messages asynchronously (in case of asynchronous targets). The asynchronous continuation. Closes the target. Sends the rendered logging event over the network optionally concatenating it with a newline character. The logging event. Gets the bytes to be written. Log event. Byte array. Gets or sets the network address. The network address can be:
  • tcp://host:port - TCP (auto select IPv4/IPv6) (not supported on Windows Phone 7.0)
  • tcp4://host:port - force TCP/IPv4 (not supported on Windows Phone 7.0)
  • tcp6://host:port - force TCP/IPv6 (not supported on Windows Phone 7.0)
  • udp://host:port - UDP (auto select IPv4/IPv6, not supported on Silverlight and on Windows Phone 7.0)
  • udp4://host:port - force UDP/IPv4 (not supported on Silverlight and on Windows Phone 7.0)
  • udp6://host:port - force UDP/IPv6 (not supported on Silverlight and on Windows Phone 7.0)
  • http://host:port/pageName - HTTP using POST verb
  • https://host:port/pageName - HTTPS using POST verb
For SOAP-based webservice support over HTTP use WebService target.
Gets or sets a value indicating whether to keep connection open whenever possible. Gets or sets a value indicating whether to append newline at the end of log message. Gets or sets the maximum message size in bytes. Gets or sets the size of the connection cache (number of connections which are kept alive). Gets or sets the maximum queue size. Gets or sets the action that should be taken if the message is larger than maxMessageSize. Gets or sets the encoding to be used. Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Gets or sets a value indicating whether to include NLog-specific extensions to log4j schema. Gets or sets the AppInfo field. By default it's the friendly name of the current AppDomain. Gets or sets a value indicating whether to include call site (class and method name) in the information sent over the network. Gets or sets a value indicating whether to include dictionary contents. Gets or sets a value indicating whether to include stack contents. Gets or sets the NDC item separator. Gets the collection of parameters. Each parameter contains a mapping between NLog layout and a named parameter. Gets the layout renderer which produces Log4j-compatible XML events. Gets or sets the instance of that is used to format log messages. Initializes a new instance of the class. Writes log messages to the console. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

Represents target that supports string formatting using layouts. Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Gets or sets the text to be rendered. Gets or sets the footer. Gets or sets the header. Gets or sets the layout with header and footer. The layout with header and footer. Initializes the target. Closes the target and releases any unmanaged resources. Writes the specified logging event to the Console.Out or Console.Error depending on the value of the Error flag. The logging event. Note that the Error option is not supported on .NET Compact Framework. Write to output text to be written. Gets or sets a value indicating whether to send the log messages to the standard error instead of the standard output. A descriptor for an archive created with the DateAndSequence numbering mode. Determines whether produces the same string as the current instance's date once formatted with the current instance's date format. The date to compare the current object's date to. True if the formatted dates are equal, otherwise False. Initializes a new instance of the class. The full name of the archive file. The parsed date contained in the file name. The parsed sequence number contained in the file name. Writes log messages to the attached managed debugger.

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

Initializes the target. Closes the target and releases any unmanaged resources. Writes the specified logging event to the attached debugger. The logging event. Mock target - useful for testing. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Increases the number of messages. The logging event. Gets the number of times this target has been called. Gets the last message rendered by this target. Modes of archiving files based on time. Don't archive based on time. AddToArchive every year. AddToArchive every month. AddToArchive daily. AddToArchive every hour. AddToArchive every minute. Writes log messages to one or more files. Documentation on NLog Wiki Gets or sets a value indicating whether to compress archive files into the zip archive format. Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Removes records of initialized files that have not been accessed in the last two days. Files are marked 'initialized' for the purpose of writing footers when the logging finishes. Removes records of initialized files that have not been accessed after the specified date. The cleanup threshold. Files are marked 'initialized' for the purpose of writing footers when the logging finishes. Flushes all pending file operations. The asynchronous continuation. The timeout parameter is ignored, because file APIs don't provide the needed functionality. Initializes file logging by creating data structures that enable efficient multi-file logging. Closes the file(s) opened for writing. Writes the specified logging event to a file specified in the FileName parameter. The logging event. Writes the specified array of logging events to a file specified in the FileName parameter. An array of objects. This function makes use of the fact that the events are batched by sorting the requests by filename. This optimizes the number of open/close calls and can help improve performance. Formats the log event for write. The log event to be formatted. A string representation of the log event. Gets the bytes to be written to the file. Log event. Array of bytes that are ready to be written. Modifies the specified byte array before it gets sent to a file. The byte array. The modified byte array. The function can do the modification in-place. Determines whether a file with a different name from is needed to receive . Deletes files among a given list, and stops as soon as the remaining files are fewer than the MaxArchiveFiles setting. Items are deleted in the same order as in . No file is deleted if MaxArchiveFile is equal to zero. Searches a given directory for archives that comply with the current archive pattern. An enumeration of archive infos, ordered by their file creation date. Deletes archive files in reverse chronological order until only the MaxArchiveFiles number of archive files remain. The pattern that archive filenames will match Gets the pattern that archive files will match Filename of the log file Log event info of the log that is currently been written A string with a pattern that will match the archive filenames Gets or sets the name of the file to write to. This FileName string is a layout which may include instances of layout renderers. This lets you use a single target to write to multiple files. The following value makes NLog write logging events to files based on the log level in the directory where the application runs. ${basedir}/${level}.log All Debug messages will go to Debug.log, all Info messages will go to Info.log and so on. You can combine as many of the layout renderers as you want to produce an arbitrary log file name. Gets or sets a value indicating whether to create directories if they do not exist. Setting this to false may improve performance a bit, but you'll receive an error when attempting to write to a directory that's not present. Gets or sets a value indicating whether to delete old log file on startup. This option works only when the "FileName" parameter denotes a single file. Gets or sets a value indicating whether to archive old log file on startup. This option works only when the "FileName" parameter denotes a single file. After archiving the old file, the current log file will be empty. Gets or sets a value indicating whether to replace file contents on each write instead of appending log message at the end. Gets or sets a value indicating whether to keep log file open instead of opening and closing it on each logging event. Setting this property to True helps improve performance. Gets or sets the maximum number of log filenames that should be stored as existing. The bigger this number is the longer it will take to write each log record. The smaller the number is the higher the chance that the clean function will be run when no new files have been opened. Gets or sets a value indicating whether to enable log file(s) to be deleted. Gets or sets a value specifying the date format to use when archving files. This option works only when the "ArchiveNumbering" parameter is set either to Date or DateAndSequence. Gets or sets the line ending mode. Gets or sets a value indicating whether to automatically flush the file buffers after each log message. Gets or sets the number of files to be kept open. Setting this to a higher value may improve performance in a situation where a single File target is writing to many files (such as splitting by level or by logger). The files are managed on a LRU (least recently used) basis, which flushes the files that have not been used for the longest period of time should the cache become full. As a rule of thumb, you shouldn't set this parameter to a very high value. A number like 10-15 shouldn't be exceeded, because you'd be keeping a large number of files open which consumes system resources. Gets or sets the maximum number of seconds that files are kept open. If this number is negative the files are not automatically closed after a period of inactivity. Gets or sets the log file buffer size in bytes. Gets or sets the file encoding. Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on the same host. This makes multi-process logging possible. NLog uses a special technique that lets it keep the files open for writing. Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on different network hosts. This effectively prevents files from being kept open. Gets or sets the number of times the write is appended on the file before NLog discards the log message. Gets or sets the delay in milliseconds to wait before attempting to write to the file again. The actual delay is a random value between 0 and the value specified in this parameter. On each failed attempt the delay base is doubled up to times. Assuming that ConcurrentWriteAttemptDelay is 10 the time to wait will be:

a random value between 0 and 10 milliseconds - 1st attempt
a random value between 0 and 20 milliseconds - 2nd attempt
a random value between 0 and 40 milliseconds - 3rd attempt
a random value between 0 and 80 milliseconds - 4th attempt
...

and so on.

Gets or sets the size in bytes above which log files will be automatically archived. Warning: combining this with isn't supported. We cannot create multiple archive files, if they should have the same name. Choose: Caution: Enabling this option can considerably slow down your file logging in multi-process scenarios. If only one process is going to be writing to the file, consider setting ConcurrentWrites to false for maximum performance.
Gets or sets a value indicating whether to automatically archive log files every time the specified time passes. Files are moved to the archive as part of the write operation if the current period of time changes. For example if the current hour changes from 10 to 11, the first write that will occur on or after 11:00 will trigger the archiving.

Caution: Enabling this option can considerably slow down your file logging in multi-process scenarios. If only one process is going to be writing to the file, consider setting ConcurrentWrites to false for maximum performance.

Gets or sets the name of the file to be used for an archive. It may contain a special placeholder {#####} that will be replaced with a sequence of numbers depending on the archiving strategy. The number of hash characters used determines the number of numerical digits to be used for numbering files. Gets or sets the maximum number of archive files that should be kept. Gets or set a value indicating whether a managed file stream is forced, instead of used the native implementation. Gets or sets the way file archives are numbered. Gets the characters that are appended after each line. Adds a file into archive. File name of the archive Original file name Create a directory, if it does not exist Enables file compression true if the file has been moved successfully; false otherwise Remove old archive files when the files on the queue are more than the MaxArchiveFilesToKeep. Creates a new unique filename by appending a number to it. This method tests that the filename created does not exist. This process can be slow as it increments the number sequentially from a specified starting point until it finds a number which produces a filename which does not exist. Example: Original Filename trace.log Target Filename trace.15.log Original filename Number starting point File name suitable for archiving Characters determining the start of the . Characters determining the end of the . Replace the pattern with the specified String. File name which is used as template for matching and replacements. It is expected to contain a pattern to match. The begging position of the within the . -1 is returned when no pattern can be found. The ending position of the within the . -1 is returned when no pattern can be found. Line ending mode. Insert platform-dependent end-of-line sequence after each line. Insert CR LF sequence (ASCII 13, ASCII 10) after each line. Insert CR character (ASCII 13) after each line. Insert LF character (ASCII 10) after each line. Do not insert any line ending. Initializes a new instance of . The mode name. The new line characters to be used. Returns the that corresponds to the supplied . The textual representation of the line ending mode, such as CRLF, LF, Default etc. Name is not case sensitive. The value, that corresponds to the . There is no line ending mode with the specified name. Compares two objects and returns a value indicating whether the first one is equal to the second one. The first level. The second level. The value of mode1.NewLineCharacters == mode2.NewLineCharacters. Compares two objects and returns a value indicating whether the first one is not equal to the second one. The first mode The second mode The value of mode1.NewLineCharacters != mode2.NewLineCharacters. Returns a string representation of the log level. Log level name. Returns a hash code for this instance. A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. Determines whether the specified is equal to this instance. The to compare with this instance. Value of true if the specified is equal to this instance; otherwise, false. The parameter is null. Gets the name of the LineEndingMode instance. Gets the new line characters (value) of the LineEndingMode instance. Provides a type converter to convert objects to and from other representations. Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context. true if this converter can perform the conversion; otherwise, false. An that provides a format context. A that represents the type you want to convert from. Converts the given object to the type of this converter, using the specified context and culture information. An that represents the converted value. An that provides a format context. The to use as the current culture. The to convert. The conversion cannot be performed. Sends log messages to a NLog Receiver Service (using WCF or Web Services). Documentation on NLog Wiki Initializes a new instance of the class. Called when log events are being sent (test hook). The events. The async continuations. True if events should be sent, false to stop processing them. Writes logging event to the log target. Must be overridden in inheriting classes. Logging event to be written out. Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Append" method. Inheriting classes can use this method to optimize batch writes. Logging events to be written out. Flush any pending log messages asynchronously (in case of asynchronous targets). The asynchronous continuation. Creating a new instance of WcfLogReceiverClient Inheritors can override this method and provide their own service configuration - binding and endpoint address Creating a new instance of IWcfLogReceiverClient Inheritors can override this method and provide their own service configuration - binding and endpoint address Gets or sets the endpoint address. The endpoint address. Gets or sets the name of the endpoint configuration in WCF configuration file. The name of the endpoint configuration. Gets or sets a value indicating whether to use binary message encoding. Gets or sets a value indicating whether to use a WCF service contract that is one way (fire and forget) or two way (request-reply) Gets or sets the client ID. The client ID. Gets the list of parameters. The parameters. Gets or sets a value indicating whether to include per-event properties in the payload sent to the server. Writes log messages to an ArrayList in memory for programmatic retrieval. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Renders the logging event message and adds it to the internal ArrayList of log messages. The logging event. Gets the list of logs gathered in the . A parameter to MethodCall. Initializes a new instance of the class. Initializes a new instance of the class. The layout to use for parameter value. Initializes a new instance of the class. Name of the parameter. The layout. Initializes a new instance of the class. The name of the parameter. The layout. The type of the parameter. Gets or sets the name of the parameter. Gets or sets the type of the parameter. Gets or sets the layout that should be use to calculate the value for the parameter. Calls the specified static method on each log message and passes contextual parameters to it. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

The base class for all targets which call methods (local or remote). Manages parameters and type coercion. Initializes a new instance of the class. Prepares an array of parameters to be passed based on the logging event and calls DoInvoke(). The logging event. Calls the target method. Must be implemented in concrete classes. Method call parameters. The continuation. Calls the target method. Must be implemented in concrete classes. Method call parameters. Gets the array of parameters to be passed. Initializes the target. Calls the specified Method. Method parameters. Gets or sets the class name. Gets or sets the method name. The method must be public and static. Action that should be taken if the message overflows. Report an error. Split the message into smaller pieces. Discard the entire message. Represents a parameter to a NLogViewer target. Initializes a new instance of the class. Gets or sets viewer parameter name. Gets or sets the layout that should be use to calcuate the value for the parameter. Discards log messages. Used mainly for debugging and benchmarking. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

Does nothing. Optionally it calculates the layout text but discards the results. The logging event. Gets or sets a value indicating whether to perform layout calculation. Marks class as a logging target and assigns a name to it. Initializes a new instance of the class. Name of the target. Gets or sets a value indicating whether to the target is a wrapper target (used to generate the target summary documentation page). Gets or sets a value indicating whether to the target is a compound target (used to generate the target summary documentation page). Web service protocol. Use SOAP 1.1 Protocol. Use SOAP 1.2 Protocol. Use HTTP POST Protocol. Use HTTP GET Protocol. Calls the specified web service on each log message. Documentation on NLog Wiki The web service must implement a method that accepts a number of string parameters.

To set up the target in the configuration file, use the following syntax:

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

The example web service that works with this example is shown below

Initializes a new instance of the class. Calls the target method. Must be implemented in concrete classes. Method call parameters. Invokes the web service method. Parameters to be passed. The continuation. Helper for creating soap POST-XML request Write from input to output. Fix the UTF-8 bom Gets or sets the web service URL. Gets or sets the Web service method name. Only used with Soap. Gets or sets the Web service namespace. Only used with Soap. Gets or sets the protocol to be used when calling web service. Should we include the BOM (Byte-order-mark) for UTF? Influences the property. This will only work for UTF-8. Gets or sets the encoding. Asynchronous request queue. Initializes a new instance of the AsyncRequestQueue class. Request limit. The overflow action. Enqueues another item. If the queue is overflown the appropriate action is taken as specified by . The log event info. Dequeues a maximum of count items from the queue and adds returns the list containing them. Maximum number of items to be dequeued. The array of log events. Clears the queue. Gets or sets the request limit. Gets or sets the action to be taken when there's no more room in the queue and another request is enqueued. Gets the number of requests currently in the queue. Provides asynchronous, buffered execution of target writes. Documentation on NLog Wiki

Asynchronous target wrapper allows the logger code to execute more quickly, by queueing messages and processing them in a separate thread. You should wrap targets that spend a non-trivial amount of time in their Write() method with asynchronous target to speed up logging.

Because asynchronous logging is quite a common scenario, NLog supports a shorthand notation for wrapping all targets with AsyncWrapper. Just add async="true" to the <targets/> element in the configuration file.

... your targets go here ... ]]>

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Base class for targets wrap other (single) targets. Returns the text representation of the object. Used for diagnostics. A string that describes the target. Flush any pending log messages (in case of asynchronous targets). The asynchronous continuation. Writes logging event to the log target. Must be overridden in inheriting classes. Logging event to be written out. Gets or sets the target that is wrapped by this target. Initializes a new instance of the class. Initializes a new instance of the class. The wrapped target. Initializes a new instance of the class. The wrapped target. Maximum number of requests in the queue. The action to be taken when the queue overflows. Waits for the lazy writer thread to finish writing messages. The asynchronous continuation. Initializes the target by starting the lazy writer timer. Shuts down the lazy writer timer. Starts the lazy writer thread which periodically writes queued log messages. Starts the lazy writer thread. Adds the log event to asynchronous queue to be processed by the lazy writer thread. The log event. The is called to ensure that the log event can be processed in another thread. Gets or sets the number of log events that should be processed in a batch by the lazy writer thread. Gets or sets the time in milliseconds to sleep between batches. Gets or sets the action to be taken when the lazy writer thread request queue count exceeds the set limit. Gets or sets the limit on the number of requests in the lazy writer thread request queue. Gets the queue of lazy writer thread requests. The action to be taken when the queue overflows. Grow the queue. Discard the overflowing item. Block until there's more room in the queue. Causes a flush after each write on a wrapped target. Documentation on NLog Wiki

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} Initializes a new instance of the class. The wrapped target. Forwards the call to the .Write() and calls on it. Logging event to be written out. A target that buffers log events and sends them in batches to the wrapped target. Documentation on NLog Wiki Initializes a new instance of the class. Initializes a new instance of the class. The wrapped target. Initializes a new instance of the class. The wrapped target. Size of the buffer. Initializes a new instance of the class. The wrapped target. Size of the buffer. The flush timeout. Flushes pending events in the buffer (if any). The asynchronous continuation. Initializes the target. Closes the target by flushing pending events in the buffer (if any). Adds the specified log event to the buffer and flushes the buffer in case the buffer gets full. The log event. Gets or sets the number of log events to be buffered. Gets or sets the timeout (in milliseconds) after which the contents of buffer will be flushed if there's no write in the specified period of time. Use -1 to disable timed flushes. Gets or sets a value indicating whether to use sliding timeout. This value determines how the inactivity period is determined. If sliding timeout is enabled, the inactivity timer is reset after each write, if it is disabled - inactivity timer will count from the first event written to the buffer. A base class for targets which wrap other (multiple) targets and provide various forms of target routing. Initializes a new instance of the class. The targets. Returns the text representation of the object. Used for diagnostics. A string that describes the target. Writes logging event to the log target. Logging event to be written out. Flush any pending log messages for all wrapped targets. The asynchronous continuation. Gets the collection of targets managed by this compound target. Provides fallback-on-error. Documentation on NLog Wiki

This example causes the messages to be written to server1, and if it fails, messages go to server2.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The targets. Forwards the log event to the sub-targets until one of them succeeds. The log event. The method remembers the last-known-successful target and starts the iteration from it. If is set, the method resets the target to the first target stored in . Gets or sets a value indicating whether to return to the first target after any successful write. Filtering rule for . Initializes a new instance of the FilteringRule class. Initializes a new instance of the FilteringRule class. Condition to be tested against all events. Filter to apply to all log events when the first condition matches any of them. Gets or sets the condition to be tested. Gets or sets the resulting filter to be applied when the condition matches. Filters log entries based on a condition. Documentation on NLog Wiki

This example causes the messages not contains the string '1' to be ignored.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The wrapped target. The condition. Checks the condition against the passed log event. If the condition is met, the log event is forwarded to the wrapped target. Log event. Gets or sets the condition expression. Log events who meet this condition will be forwarded to the wrapped target. Filters buffered log entries based on a set of conditions that are evaluated on a group of events. Documentation on NLog Wiki PostFilteringWrapper must be used with some type of buffering target or wrapper, such as AsyncTargetWrapper, BufferingWrapper or ASPNetBufferingWrapper.

This example works like this. If there are no Warn,Error or Fatal messages in the buffer only Info messages are written to the file, but if there are any warnings or errors, the output includes detailed trace (levels >= Debug). You can plug in a different type of buffering wrapper (such as ASPNetBufferingWrapper) to achieve different functionality.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Evaluates all filtering rules to find the first one that matches. The matching rule determines the filtering condition to be applied to all items in a buffer. If no condition matches, default filter is applied to the array of log events. Array of log events to be post-filtered. Gets or sets the default filter to be applied when no specific rule matches. Gets the collection of filtering rules. The rules are processed top-down and the first rule that matches determines the filtering condition to be applied to log events. Sends log messages to a randomly selected target. Documentation on NLog Wiki

This example causes the messages to be written to either file1.txt or file2.txt chosen randomly on a per-message basis.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The targets. Forwards the log event to one of the sub-targets. The sub-target is randomly chosen. The log event. Repeats each log event the specified number of times. Documentation on NLog Wiki

This example causes each log message to be repeated 3 times.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The wrapped target. The repeat count. Forwards the log message to the by calling the method times. The log event. Gets or sets the number of times to repeat each log message. Retries in case of write error. Documentation on NLog Wiki

This example causes each write attempt to be repeated 3 times, sleeping 1 second between attempts if first one fails.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The wrapped target. The retry count. The retry delay milliseconds. Writes the specified log event to the wrapped target, retrying and pausing in case of an error. The log event. Gets or sets the number of retries that should be attempted on the wrapped target in case of a failure. Gets or sets the time to wait between retries in milliseconds. Distributes log events to targets in a round-robin fashion. Documentation on NLog Wiki

This example causes the messages to be written to either file1.txt or file2.txt. Each odd message is written to file2.txt, each even message goes to file1.txt.

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The targets. Forwards the write to one of the targets from the collection. The log event. The writes are routed in a round-robin fashion. The first log event goes to the first target, the second one goes to the second target and so on looping to the first target when there are no more targets available. In general request N goes to Targets[N % Targets.Count]. Writes log events to all targets. Documentation on NLog Wiki

This example causes the messages to be written to both file1.txt or file2.txt

To set up the target in the configuration file, use the following syntax:

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

Initializes a new instance of the class. Initializes a new instance of the class. The targets. Forwards the specified log event to all sub-targets. The log event. Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Write" method. Inheriting classes can use this method to optimize batch writes. Logging events to be written out. Current local time retrieved directly from DateTime.Now. Defines source of current time. Returns a that represents this instance. A that represents this instance. Converts the specified system time to the same form as the time value originated from this time source. The system originated time value to convert. The value of converted to the same form as time values originated from this source. There are situations when NLog have to compare the time originated from TimeSource to the time originated externally in the system. To be able to provide meaningful result of such comparisons the system time must be expressed in the same form as TimeSource time. Examples: - If the TimeSource provides time values of local time, it should also convert the provided to the local time. - If the TimeSource shifts or skews its time values, it should also apply the same transform to the given . Gets current time. Gets or sets current global time source used in all log events. Default time source is . Converts the specified system time to the same form as the time value originated from this time source. The system originated time value to convert. The value of converted to local time. Gets current local time directly from DateTime.Now. Current UTC time retrieved directly from DateTime.UtcNow. Converts the specified system time to the same form as the time value originated from this time source. The system originated time value to convert. The value of converted to UTC time. Gets current UTC time directly from DateTime.UtcNow. Fast time source that updates current time only once per tick (15.6 milliseconds). Gets raw uncached time from derived time source. Gets current time cached for one system tick (15.6 milliseconds). Fast local time source that is updated once per tick (15.6 milliseconds). Converts the specified system time to the same form as the time value originated from this time source. The system originated time value to convert. The value of converted to local time. Gets uncached local time directly from DateTime.Now. Fast UTC time source that is updated once per tick (15.6 milliseconds). Converts the specified system time to the same form as the time value originated from this time source. The system originated time value to convert. The value of converted to UTC time. Gets uncached UTC time directly from DateTime.UtcNow. Marks class as a time source and assigns a name to it. Initializes a new instance of the class. Name of the time source.