- 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. -
-- 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. -
-- 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. -
-${longdate}|${level:uppercase=true}|${logger}|${message}
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- - 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: -
-
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- - 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 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: -
-
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- ${basedir}/${level}.log
- All
- 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
- 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: -
-
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- - 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. -
-- The result is a message box: -
-
- - To set up the log target programmatically use code like this: -
-
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- - 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 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 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
-
- - 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: -
-
- - 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: -
-
- ${longdate}|${level:uppercase=true}|${logger}|${message}
- 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: -
-
- 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: -
-
- - 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: -
-
- 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: -
-
- 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: -
-
- 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: -
-
- 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: -
-
- 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: -
-
-