1 |
|
<?xml version="1.0"?>
|
2 |
|
<doc>
|
3 |
|
<assembly>
|
4 |
|
<name>log4net</name>
|
5 |
|
</assembly>
|
6 |
|
<members>
|
7 |
|
<member name="T:log4net.Appender.AdoNetAppender">
|
8 |
|
<summary>
|
9 |
|
Appender that logs to a database.
|
10 |
|
</summary>
|
11 |
|
<remarks>
|
12 |
|
<para>
|
13 |
|
<see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a
|
14 |
|
database. The appender can be configured to specify the connection
|
15 |
|
string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property.
|
16 |
|
The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/>
|
17 |
|
property. For more information on database connection strings for
|
18 |
|
your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>.
|
19 |
|
</para>
|
20 |
|
<para>
|
21 |
|
Records are written into the database either using a prepared
|
22 |
|
statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property
|
23 |
|
is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement
|
24 |
|
or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored
|
25 |
|
procedure.
|
26 |
|
</para>
|
27 |
|
<para>
|
28 |
|
The prepared statement text or the name of the stored procedure
|
29 |
|
must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property.
|
30 |
|
</para>
|
31 |
|
<para>
|
32 |
|
The prepared statement or stored procedure can take a number
|
33 |
|
of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/>
|
34 |
|
method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the
|
35 |
|
ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/>
|
36 |
|
type may be subclassed if required to provide database specific
|
37 |
|
functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies
|
38 |
|
the parameter name, database type, size, and how the value should
|
39 |
|
be generated using a <see cref="T:log4net.Layout.ILayout"/>.
|
40 |
|
</para>
|
41 |
|
</remarks>
|
42 |
|
<example>
|
43 |
|
An example of a SQL Server table that could be logged to:
|
44 |
|
<code lang="SQL">
|
45 |
|
CREATE TABLE [dbo].[Log] (
|
46 |
|
[ID] [int] IDENTITY (1, 1) NOT NULL ,
|
47 |
|
[Date] [datetime] NOT NULL ,
|
48 |
|
[Thread] [varchar] (255) NOT NULL ,
|
49 |
|
[Level] [varchar] (20) NOT NULL ,
|
50 |
|
[Logger] [varchar] (255) NOT NULL ,
|
51 |
|
[Message] [varchar] (4000) NOT NULL
|
52 |
|
) ON [PRIMARY]
|
53 |
|
</code>
|
54 |
|
</example>
|
55 |
|
<example>
|
56 |
|
An example configuration to log to the above table:
|
57 |
|
<code lang="XML" escaped="true">
|
58 |
|
<appender name="AdoNetAppender_SqlServer" type="log4net.Appender.AdoNetAppender">
|
59 |
|
<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
60 |
|
<connectionString value="data source=SQLSVR;initial catalog=test_log4net;integrated security=false;persist security info=True;User ID=sa;Password=sa"/>
|
61 |
|
<commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message]) VALUES (@log_date, @thread, @log_level, @logger, @message)"/>
|
62 |
|
<parameter>
|
63 |
|
<parameterName value="@log_date"/>
|
64 |
|
<dbType value="DateTime"/>
|
65 |
|
<layout type="log4net.Layout.PatternLayout" value="%date{yyyy'-'MM'-'dd HH':'mm':'ss'.'fff}"/>
|
66 |
|
</parameter>
|
67 |
|
<parameter>
|
68 |
|
<parameterName value="@thread"/>
|
69 |
|
<dbType value="String"/>
|
70 |
|
<size value="255"/>
|
71 |
|
<layout type="log4net.Layout.PatternLayout" value="%thread"/>
|
72 |
|
</parameter>
|
73 |
|
<parameter>
|
74 |
|
<parameterName value="@log_level"/>
|
75 |
|
<dbType value="String"/>
|
76 |
|
<size value="50"/>
|
77 |
|
<layout type="log4net.Layout.PatternLayout" value="%level"/>
|
78 |
|
</parameter>
|
79 |
|
<parameter>
|
80 |
|
<parameterName value="@logger"/>
|
81 |
|
<dbType value="String"/>
|
82 |
|
<size value="255"/>
|
83 |
|
<layout type="log4net.Layout.PatternLayout" value="%logger"/>
|
84 |
|
</parameter>
|
85 |
|
<parameter>
|
86 |
|
<parameterName value="@message"/>
|
87 |
|
<dbType value="String"/>
|
88 |
|
<size value="4000"/>
|
89 |
|
<layout type="log4net.Layout.PatternLayout" value="%message"/>
|
90 |
|
</parameter>
|
91 |
|
</appender>
|
92 |
|
</code>
|
93 |
|
</example>
|
94 |
|
<author>Julian Biddle</author>
|
95 |
|
<author>Nicko Cadell</author>
|
96 |
|
<author>Gert Driesen</author>
|
97 |
|
<author>Lance Nehring</author>
|
98 |
|
</member>
|
99 |
|
<member name="T:log4net.Appender.BufferingAppenderSkeleton">
|
100 |
|
<summary>
|
101 |
|
Abstract base class implementation of <see cref="T:log4net.Appender.IAppender"/> that
|
102 |
|
buffers events in a fixed size buffer.
|
103 |
|
</summary>
|
104 |
|
<remarks>
|
105 |
|
<para>
|
106 |
|
This base class should be used by appenders that need to buffer a
|
107 |
|
number of events before logging them. For example the <see cref="T:log4net.Appender.AdoNetAppender"/>
|
108 |
|
buffers events and then submits the entire contents of the buffer to
|
109 |
|
the underlying database in one go.
|
110 |
|
</para>
|
111 |
|
<para>
|
112 |
|
Subclasses should override the <see cref="M:SendBuffer(LoggingEvent[])"/>
|
113 |
|
method to deliver the buffered events.
|
114 |
|
</para>
|
115 |
|
<para>The BufferingAppenderSkeleton maintains a fixed size cyclic
|
116 |
|
buffer of events. The size of the buffer is set using
|
117 |
|
the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> property.
|
118 |
|
</para>
|
119 |
|
<para>A <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> is used to inspect
|
120 |
|
each event as it arrives in the appender. If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/>
|
121 |
|
triggers, then the current buffer is sent immediately
|
122 |
|
(see <see cref="M:SendBuffer(LoggingEvent[])"/>). Otherwise the event
|
123 |
|
is stored in the buffer. For example, an evaluator can be used to
|
124 |
|
deliver the events immediately when an ERROR event arrives.
|
125 |
|
</para>
|
126 |
|
<para>
|
127 |
|
The buffering appender can be configured in a <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode.
|
128 |
|
By default the appender is NOT lossy. When the buffer is full all
|
129 |
|
the buffered events are sent with <see cref="M:SendBuffer(LoggingEvent[])"/>.
|
130 |
|
If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> property is set to <c>true</c> then the
|
131 |
|
buffer will not be sent when it is full, and new events arriving
|
132 |
|
in the appender will overwrite the oldest event in the buffer.
|
133 |
|
In lossy mode the buffer will only be sent when the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/>
|
134 |
|
triggers. This can be useful behavior when you need to know about
|
135 |
|
ERROR events but not about events with a lower level, configure an
|
136 |
|
evaluator that will trigger when an ERROR event arrives, the whole
|
137 |
|
buffer will be sent which gives a history of events leading up to
|
138 |
|
the ERROR event.
|
139 |
|
</para>
|
140 |
|
</remarks>
|
141 |
|
<author>Nicko Cadell</author>
|
142 |
|
<author>Gert Driesen</author>
|
143 |
|
</member>
|
144 |
|
<member name="T:log4net.Appender.AppenderSkeleton">
|
145 |
|
<summary>
|
146 |
|
Abstract base class implementation of <see cref="T:log4net.Appender.IAppender"/>.
|
147 |
|
</summary>
|
148 |
|
<remarks>
|
149 |
|
<para>
|
150 |
|
This class provides the code for common functionality, such
|
151 |
|
as support for threshold filtering and support for general filters.
|
152 |
|
</para>
|
153 |
|
<para>
|
154 |
|
Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore
|
155 |
|
they would require that the <see cref="M:IOptionHandler.ActivateOptions()"/> method
|
156 |
|
be called after the appenders properties have been configured.
|
157 |
|
</para>
|
158 |
|
</remarks>
|
159 |
|
<author>Nicko Cadell</author>
|
160 |
|
<author>Gert Driesen</author>
|
161 |
|
</member>
|
162 |
|
<member name="T:log4net.Appender.IAppender">
|
163 |
|
<summary>
|
164 |
|
Implement this interface for your own strategies for printing log statements.
|
165 |
|
</summary>
|
166 |
|
<remarks>
|
167 |
|
<para>
|
168 |
|
Implementors should consider extending the <see cref="T:log4net.Appender.AppenderSkeleton"/>
|
169 |
|
class which provides a default implementation of this interface.
|
170 |
|
</para>
|
171 |
|
<para>
|
172 |
|
Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore
|
173 |
|
they would require that the <see cref="M:IOptionHandler.ActivateOptions()"/> method
|
174 |
|
be called after the appenders properties have been configured.
|
175 |
|
</para>
|
176 |
|
</remarks>
|
177 |
|
<author>Nicko Cadell</author>
|
178 |
|
<author>Gert Driesen</author>
|
179 |
|
</member>
|
180 |
|
<member name="M:log4net.Appender.IAppender.Close">
|
181 |
|
<summary>
|
182 |
|
Closes the appender and releases resources.
|
183 |
|
</summary>
|
184 |
|
<remarks>
|
185 |
|
<para>
|
186 |
|
Releases any resources allocated within the appender such as file handles,
|
187 |
|
network connections, etc.
|
188 |
|
</para>
|
189 |
|
<para>
|
190 |
|
It is a programming error to append to a closed appender.
|
191 |
|
</para>
|
192 |
|
</remarks>
|
193 |
|
</member>
|
194 |
|
<member name="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)">
|
195 |
|
<summary>
|
196 |
|
Log the logging event in Appender specific way.
|
197 |
|
</summary>
|
198 |
|
<param name="loggingEvent">The event to log</param>
|
199 |
|
<remarks>
|
200 |
|
<para>
|
201 |
|
This method is called to log a message into this appender.
|
202 |
|
</para>
|
203 |
|
</remarks>
|
204 |
|
</member>
|
205 |
|
<member name="P:log4net.Appender.IAppender.Name">
|
206 |
|
<summary>
|
207 |
|
Gets or sets the name of this appender.
|
208 |
|
</summary>
|
209 |
|
<value>The name of the appender.</value>
|
210 |
|
<remarks>
|
211 |
|
<para>The name uniquely identifies the appender.</para>
|
212 |
|
</remarks>
|
213 |
|
</member>
|
214 |
|
<member name="T:log4net.Appender.IBulkAppender">
|
215 |
|
<summary>
|
216 |
|
Interface for appenders that support bulk logging.
|
217 |
|
</summary>
|
218 |
|
<remarks>
|
219 |
|
<para>
|
220 |
|
This interface extends the <see cref="T:log4net.Appender.IAppender"/> interface to
|
221 |
|
support bulk logging of <see cref="T:log4net.Core.LoggingEvent"/> objects. Appenders
|
222 |
|
should only implement this interface if they can bulk log efficiently.
|
223 |
|
</para>
|
224 |
|
</remarks>
|
225 |
|
<author>Nicko Cadell</author>
|
226 |
|
</member>
|
227 |
|
<member name="M:log4net.Appender.IBulkAppender.DoAppend(log4net.Core.LoggingEvent[])">
|
228 |
|
<summary>
|
229 |
|
Log the array of logging events in Appender specific way.
|
230 |
|
</summary>
|
231 |
|
<param name="loggingEvents">The events to log</param>
|
232 |
|
<remarks>
|
233 |
|
<para>
|
234 |
|
This method is called to log an array of events into this appender.
|
235 |
|
</para>
|
236 |
|
</remarks>
|
237 |
|
</member>
|
238 |
|
<member name="T:log4net.Core.IOptionHandler">
|
239 |
|
<summary>
|
240 |
|
Interface used to delay activate a configured object.
|
241 |
|
</summary>
|
242 |
|
<remarks>
|
243 |
|
<para>
|
244 |
|
This allows an object to defer activation of its options until all
|
245 |
|
options have been set. This is required for components which have
|
246 |
|
related options that remain ambiguous until all are set.
|
247 |
|
</para>
|
248 |
|
<para>
|
249 |
|
If a component implements this interface then the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method
|
250 |
|
must be called by the container after its all the configured properties have been set
|
251 |
|
and before the component can be used.
|
252 |
|
</para>
|
253 |
|
</remarks>
|
254 |
|
<author>Nicko Cadell</author>
|
255 |
|
</member>
|
256 |
|
<member name="M:log4net.Core.IOptionHandler.ActivateOptions">
|
257 |
|
<summary>
|
258 |
|
Activate the options that were previously set with calls to properties.
|
259 |
|
</summary>
|
260 |
|
<remarks>
|
261 |
|
<para>
|
262 |
|
This allows an object to defer activation of its options until all
|
263 |
|
options have been set. This is required for components which have
|
264 |
|
related options that remain ambiguous until all are set.
|
265 |
|
</para>
|
266 |
|
<para>
|
267 |
|
If a component implements this interface then this method must be called
|
268 |
|
after its properties have been set before the component can be used.
|
269 |
|
</para>
|
270 |
|
</remarks>
|
271 |
|
</member>
|
272 |
|
<member name="F:log4net.Appender.AppenderSkeleton.c_renderBufferSize">
|
273 |
|
<summary>
|
274 |
|
Initial buffer size
|
275 |
|
</summary>
|
276 |
|
</member>
|
277 |
|
<member name="F:log4net.Appender.AppenderSkeleton.c_renderBufferMaxCapacity">
|
278 |
|
<summary>
|
279 |
|
Maximum buffer size before it is recycled
|
280 |
|
</summary>
|
281 |
|
</member>
|
282 |
|
<member name="M:log4net.Appender.AppenderSkeleton.#ctor">
|
283 |
|
<summary>
|
284 |
|
Default constructor
|
285 |
|
</summary>
|
286 |
|
<remarks>
|
287 |
|
<para>Empty default constructor</para>
|
288 |
|
</remarks>
|
289 |
|
</member>
|
290 |
|
<member name="M:log4net.Appender.AppenderSkeleton.Finalize">
|
291 |
|
<summary>
|
292 |
|
Finalizes this appender by calling the implementation's
|
293 |
|
<see cref="M:log4net.Appender.AppenderSkeleton.Close"/> method.
|
294 |
|
</summary>
|
295 |
|
<remarks>
|
296 |
|
<para>
|
297 |
|
If this appender has not been closed then the <c>Finalize</c> method
|
298 |
|
will call <see cref="M:log4net.Appender.AppenderSkeleton.Close"/>.
|
299 |
|
</para>
|
300 |
|
</remarks>
|
301 |
|
</member>
|
302 |
|
<member name="M:log4net.Appender.AppenderSkeleton.ActivateOptions">
|
303 |
|
<summary>
|
304 |
|
Initialize the appender based on the options set
|
305 |
|
</summary>
|
306 |
|
<remarks>
|
307 |
|
<para>
|
308 |
|
This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
|
309 |
|
activation scheme. The <see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> method must
|
310 |
|
be called on this object after the configuration properties have
|
311 |
|
been set. Until <see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> is called this
|
312 |
|
object is in an undefined state and must not be used.
|
313 |
|
</para>
|
314 |
|
<para>
|
315 |
|
If any of the configuration properties are modified then
|
316 |
|
<see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> must be called again.
|
317 |
|
</para>
|
318 |
|
</remarks>
|
319 |
|
</member>
|
320 |
|
<member name="M:log4net.Appender.AppenderSkeleton.Close">
|
321 |
|
<summary>
|
322 |
|
Closes the appender and release resources.
|
323 |
|
</summary>
|
324 |
|
<remarks>
|
325 |
|
<para>
|
326 |
|
Release any resources allocated within the appender such as file handles,
|
327 |
|
network connections, etc.
|
328 |
|
</para>
|
329 |
|
<para>
|
330 |
|
It is a programming error to append to a closed appender.
|
331 |
|
</para>
|
332 |
|
<para>
|
333 |
|
This method cannot be overridden by subclasses. This method
|
334 |
|
delegates the closing of the appender to the <see cref="M:log4net.Appender.AppenderSkeleton.OnClose"/>
|
335 |
|
method which must be overridden in the subclass.
|
336 |
|
</para>
|
337 |
|
</remarks>
|
338 |
|
</member>
|
339 |
|
<member name="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)">
|
340 |
|
<summary>
|
341 |
|
Performs threshold checks and invokes filters before
|
342 |
|
delegating actual logging to the subclasses specific
|
343 |
|
<see cref="M:Append(LoggingEvent)"/> method.
|
344 |
|
</summary>
|
345 |
|
<param name="loggingEvent">The event to log.</param>
|
346 |
|
<remarks>
|
347 |
|
<para>
|
348 |
|
This method cannot be overridden by derived classes. A
|
349 |
|
derived class should override the <see cref="M:Append(LoggingEvent)"/> method
|
350 |
|
which is called by this method.
|
351 |
|
</para>
|
352 |
|
<para>
|
353 |
|
The implementation of this method is as follows:
|
354 |
|
</para>
|
355 |
|
<para>
|
356 |
|
<list type="bullet">
|
357 |
|
<item>
|
358 |
|
<description>
|
359 |
|
Checks that the severity of the <paramref name="loggingEvent"/>
|
360 |
|
is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this
|
361 |
|
appender.</description>
|
362 |
|
</item>
|
363 |
|
<item>
|
364 |
|
<description>
|
365 |
|
Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the
|
366 |
|
<paramref name="loggingEvent"/>.
|
367 |
|
</description>
|
368 |
|
</item>
|
369 |
|
<item>
|
370 |
|
<description>
|
371 |
|
Calls <see cref="M:PreAppendCheck()"/> and checks that
|
372 |
|
it returns <c>true</c>.</description>
|
373 |
|
</item>
|
374 |
|
</list>
|
375 |
|
</para>
|
376 |
|
<para>
|
377 |
|
If all of the above steps succeed then the <paramref name="loggingEvent"/>
|
378 |
|
will be passed to the abstract <see cref="M:Append(LoggingEvent)"/> method.
|
379 |
|
</para>
|
380 |
|
</remarks>
|
381 |
|
</member>
|
382 |
|
<member name="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])">
|
383 |
|
<summary>
|
384 |
|
Performs threshold checks and invokes filters before
|
385 |
|
delegating actual logging to the subclasses specific
|
386 |
|
<see cref="M:Append(LoggingEvent[])"/> method.
|
387 |
|
</summary>
|
388 |
|
<param name="loggingEvents">The array of events to log.</param>
|
389 |
|
<remarks>
|
390 |
|
<para>
|
391 |
|
This method cannot be overridden by derived classes. A
|
392 |
|
derived class should override the <see cref="M:Append(LoggingEvent[])"/> method
|
393 |
|
which is called by this method.
|
394 |
|
</para>
|
395 |
|
<para>
|
396 |
|
The implementation of this method is as follows:
|
397 |
|
</para>
|
398 |
|
<para>
|
399 |
|
<list type="bullet">
|
400 |
|
<item>
|
401 |
|
<description>
|
402 |
|
Checks that the severity of the <paramref name="loggingEvents"/>
|
403 |
|
is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this
|
404 |
|
appender.</description>
|
405 |
|
</item>
|
406 |
|
<item>
|
407 |
|
<description>
|
408 |
|
Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the
|
409 |
|
<paramref name="loggingEvents"/>.
|
410 |
|
</description>
|
411 |
|
</item>
|
412 |
|
<item>
|
413 |
|
<description>
|
414 |
|
Calls <see cref="M:PreAppendCheck()"/> and checks that
|
415 |
|
it returns <c>true</c>.</description>
|
416 |
|
</item>
|
417 |
|
</list>
|
418 |
|
</para>
|
419 |
|
<para>
|
420 |
|
If all of the above steps succeed then the <paramref name="loggingEvents"/>
|
421 |
|
will be passed to the <see cref="M:Append(LoggingEvent[])"/> method.
|
422 |
|
</para>
|
423 |
|
</remarks>
|
424 |
|
</member>
|
425 |
|
<member name="M:log4net.Appender.AppenderSkeleton.FilterEvent(log4net.Core.LoggingEvent)">
|
426 |
|
<summary>
|
427 |
|
Test if the logging event should we output by this appender
|
428 |
|
</summary>
|
429 |
|
<param name="loggingEvent">the event to test</param>
|
430 |
|
<returns><c>true</c> if the event should be output, <c>false</c> if the event should be ignored</returns>
|
431 |
|
<remarks>
|
432 |
|
<para>
|
433 |
|
This method checks the logging event against the threshold level set
|
434 |
|
on this appender and also against the filters specified on this
|
435 |
|
appender.
|
436 |
|
</para>
|
437 |
|
<para>
|
438 |
|
The implementation of this method is as follows:
|
439 |
|
</para>
|
440 |
|
<para>
|
441 |
|
<list type="bullet">
|
442 |
|
<item>
|
443 |
|
<description>
|
444 |
|
Checks that the severity of the <paramref name="loggingEvent"/>
|
445 |
|
is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this
|
446 |
|
appender.</description>
|
447 |
|
</item>
|
448 |
|
<item>
|
449 |
|
<description>
|
450 |
|
Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the
|
451 |
|
<paramref name="loggingEvent"/>.
|
452 |
|
</description>
|
453 |
|
</item>
|
454 |
|
</list>
|
455 |
|
</para>
|
456 |
|
</remarks>
|
457 |
|
</member>
|
458 |
|
<member name="M:log4net.Appender.AppenderSkeleton.AddFilter(log4net.Filter.IFilter)">
|
459 |
|
<summary>
|
460 |
|
Adds a filter to the end of the filter chain.
|
461 |
|
</summary>
|
462 |
|
<param name="filter">the filter to add to this appender</param>
|
463 |
|
<remarks>
|
464 |
|
<para>
|
465 |
|
The Filters are organized in a linked list.
|
466 |
|
</para>
|
467 |
|
<para>
|
468 |
|
Setting this property causes the new filter to be pushed onto the
|
469 |
|
back of the filter chain.
|
470 |
|
</para>
|
471 |
|
</remarks>
|
472 |
|
</member>
|
473 |
|
<member name="M:log4net.Appender.AppenderSkeleton.ClearFilters">
|
474 |
|
<summary>
|
475 |
|
Clears the filter list for this appender.
|
476 |
|
</summary>
|
477 |
|
<remarks>
|
478 |
|
<para>
|
479 |
|
Clears the filter list for this appender.
|
480 |
|
</para>
|
481 |
|
</remarks>
|
482 |
|
</member>
|
483 |
|
<member name="M:log4net.Appender.AppenderSkeleton.IsAsSevereAsThreshold(log4net.Core.Level)">
|
484 |
|
<summary>
|
485 |
|
Checks if the message level is below this appender's threshold.
|
486 |
|
</summary>
|
487 |
|
<param name="level"><see cref="T:log4net.Core.Level"/> to test against.</param>
|
488 |
|
<remarks>
|
489 |
|
<para>
|
490 |
|
If there is no threshold set, then the return value is always <c>true</c>.
|
491 |
|
</para>
|
492 |
|
</remarks>
|
493 |
|
<returns>
|
494 |
|
<c>true</c> if the <paramref name="level"/> meets the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/>
|
495 |
|
requirements of this appender.
|
496 |
|
</returns>
|
497 |
|
</member>
|
498 |
|
<member name="M:log4net.Appender.AppenderSkeleton.OnClose">
|
499 |
|
<summary>
|
500 |
|
Is called when the appender is closed. Derived classes should override
|
501 |
|
this method if resources need to be released.
|
502 |
|
</summary>
|
503 |
|
<remarks>
|
504 |
|
<para>
|
505 |
|
Releases any resources allocated within the appender such as file handles,
|
506 |
|
network connections, etc.
|
507 |
|
</para>
|
508 |
|
<para>
|
509 |
|
It is a programming error to append to a closed appender.
|
510 |
|
</para>
|
511 |
|
</remarks>
|
512 |
|
</member>
|
513 |
|
<member name="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)">
|
514 |
|
<summary>
|
515 |
|
Subclasses of <see cref="T:log4net.Appender.AppenderSkeleton"/> should implement this method
|
516 |
|
to perform actual logging.
|
517 |
|
</summary>
|
518 |
|
<param name="loggingEvent">The event to append.</param>
|
519 |
|
<remarks>
|
520 |
|
<para>
|
521 |
|
A subclass must implement this method to perform
|
522 |
|
logging of the <paramref name="loggingEvent"/>.
|
523 |
|
</para>
|
524 |
|
<para>This method will be called by <see cref="M:DoAppend(LoggingEvent)"/>
|
525 |
|
if all the conditions listed for that method are met.
|
526 |
|
</para>
|
527 |
|
<para>
|
528 |
|
To restrict the logging of events in the appender
|
529 |
|
override the <see cref="M:PreAppendCheck()"/> method.
|
530 |
|
</para>
|
531 |
|
</remarks>
|
532 |
|
</member>
|
533 |
|
<member name="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent[])">
|
534 |
|
<summary>
|
535 |
|
Append a bulk array of logging events.
|
536 |
|
</summary>
|
537 |
|
<param name="loggingEvents">the array of logging events</param>
|
538 |
|
<remarks>
|
539 |
|
<para>
|
540 |
|
This base class implementation calls the <see cref="M:Append(LoggingEvent)"/>
|
541 |
|
method for each element in the bulk array.
|
542 |
|
</para>
|
543 |
|
<para>
|
544 |
|
A sub class that can better process a bulk array of events should
|
545 |
|
override this method in addition to <see cref="M:Append(LoggingEvent)"/>.
|
546 |
|
</para>
|
547 |
|
</remarks>
|
548 |
|
</member>
|
549 |
|
<member name="M:log4net.Appender.AppenderSkeleton.PreAppendCheck">
|
550 |
|
<summary>
|
551 |
|
Called before <see cref="M:Append(LoggingEvent)"/> as a precondition.
|
552 |
|
</summary>
|
553 |
|
<remarks>
|
554 |
|
<para>
|
555 |
|
This method is called by <see cref="M:DoAppend(LoggingEvent)"/>
|
556 |
|
before the call to the abstract <see cref="M:Append(LoggingEvent)"/> method.
|
557 |
|
</para>
|
558 |
|
<para>
|
559 |
|
This method can be overridden in a subclass to extend the checks
|
560 |
|
made before the event is passed to the <see cref="M:Append(LoggingEvent)"/> method.
|
561 |
|
</para>
|
562 |
|
<para>
|
563 |
|
A subclass should ensure that they delegate this call to
|
564 |
|
this base class if it is overridden.
|
565 |
|
</para>
|
566 |
|
</remarks>
|
567 |
|
<returns><c>true</c> if the call to <see cref="M:Append(LoggingEvent)"/> should proceed.</returns>
|
568 |
|
</member>
|
569 |
|
<member name="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.LoggingEvent)">
|
570 |
|
<summary>
|
571 |
|
Renders the <see cref="T:log4net.Core.LoggingEvent"/> to a string.
|
572 |
|
</summary>
|
573 |
|
<param name="loggingEvent">The event to render.</param>
|
574 |
|
<returns>The event rendered as a string.</returns>
|
575 |
|
<remarks>
|
576 |
|
<para>
|
577 |
|
Helper method to render a <see cref="T:log4net.Core.LoggingEvent"/> to
|
578 |
|
a string. This appender must have a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/>
|
579 |
|
set to render the <paramref name="loggingEvent"/> to
|
580 |
|
a string.
|
581 |
|
</para>
|
582 |
|
<para>If there is exception data in the logging event and
|
583 |
|
the layout does not process the exception, this method
|
584 |
|
will append the exception text to the rendered string.
|
585 |
|
</para>
|
586 |
|
<para>
|
587 |
|
Where possible use the alternative version of this method
|
588 |
|
<see cref="M:RenderLoggingEvent(TextWriter,LoggingEvent)"/>.
|
589 |
|
That method streams the rendering onto an existing Writer
|
590 |
|
which can give better performance if the caller already has
|
591 |
|
a <see cref="T:System.IO.TextWriter"/> open and ready for writing.
|
592 |
|
</para>
|
593 |
|
</remarks>
|
594 |
|
</member>
|
595 |
|
<member name="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(System.IO.TextWriter,log4net.Core.LoggingEvent)">
|
596 |
|
<summary>
|
597 |
|
Renders the <see cref="T:log4net.Core.LoggingEvent"/> to a string.
|
598 |
|
</summary>
|
599 |
|
<param name="loggingEvent">The event to render.</param>
|
600 |
|
<param name="writer">The TextWriter to write the formatted event to</param>
|
601 |
|
<remarks>
|
602 |
|
<para>
|
603 |
|
Helper method to render a <see cref="T:log4net.Core.LoggingEvent"/> to
|
604 |
|
a string. This appender must have a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/>
|
605 |
|
set to render the <paramref name="loggingEvent"/> to
|
606 |
|
a string.
|
607 |
|
</para>
|
608 |
|
<para>If there is exception data in the logging event and
|
609 |
|
the layout does not process the exception, this method
|
610 |
|
will append the exception text to the rendered string.
|
611 |
|
</para>
|
612 |
|
<para>
|
613 |
|
Use this method in preference to <see cref="M:RenderLoggingEvent(LoggingEvent)"/>
|
614 |
|
where possible. If, however, the caller needs to render the event
|
615 |
|
to a string then <see cref="M:RenderLoggingEvent(LoggingEvent)"/> does
|
616 |
|
provide an efficient mechanism for doing so.
|
617 |
|
</para>
|
618 |
|
</remarks>
|
619 |
|
</member>
|
620 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_layout">
|
621 |
|
<summary>
|
622 |
|
The layout of this appender.
|
623 |
|
</summary>
|
624 |
|
<remarks>
|
625 |
|
See <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> for more information.
|
626 |
|
</remarks>
|
627 |
|
</member>
|
628 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_name">
|
629 |
|
<summary>
|
630 |
|
The name of this appender.
|
631 |
|
</summary>
|
632 |
|
<remarks>
|
633 |
|
See <see cref="P:log4net.Appender.AppenderSkeleton.Name"/> for more information.
|
634 |
|
</remarks>
|
635 |
|
</member>
|
636 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_threshold">
|
637 |
|
<summary>
|
638 |
|
The level threshold of this appender.
|
639 |
|
</summary>
|
640 |
|
<remarks>
|
641 |
|
<para>
|
642 |
|
There is no level threshold filtering by default.
|
643 |
|
</para>
|
644 |
|
<para>
|
645 |
|
See <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> for more information.
|
646 |
|
</para>
|
647 |
|
</remarks>
|
648 |
|
</member>
|
649 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_errorHandler">
|
650 |
|
<summary>
|
651 |
|
It is assumed and enforced that errorHandler is never null.
|
652 |
|
</summary>
|
653 |
|
<remarks>
|
654 |
|
<para>
|
655 |
|
It is assumed and enforced that errorHandler is never null.
|
656 |
|
</para>
|
657 |
|
<para>
|
658 |
|
See <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/> for more information.
|
659 |
|
</para>
|
660 |
|
</remarks>
|
661 |
|
</member>
|
662 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_headFilter">
|
663 |
|
<summary>
|
664 |
|
The first filter in the filter chain.
|
665 |
|
</summary>
|
666 |
|
<remarks>
|
667 |
|
<para>
|
668 |
|
Set to <c>null</c> initially.
|
669 |
|
</para>
|
670 |
|
<para>
|
671 |
|
See <see cref="T:log4net.Filter.IFilter"/> for more information.
|
672 |
|
</para>
|
673 |
|
</remarks>
|
674 |
|
</member>
|
675 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_tailFilter">
|
676 |
|
<summary>
|
677 |
|
The last filter in the filter chain.
|
678 |
|
</summary>
|
679 |
|
<remarks>
|
680 |
|
See <see cref="T:log4net.Filter.IFilter"/> for more information.
|
681 |
|
</remarks>
|
682 |
|
</member>
|
683 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_closed">
|
684 |
|
<summary>
|
685 |
|
Flag indicating if this appender is closed.
|
686 |
|
</summary>
|
687 |
|
<remarks>
|
688 |
|
See <see cref="M:log4net.Appender.AppenderSkeleton.Close"/> for more information.
|
689 |
|
</remarks>
|
690 |
|
</member>
|
691 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_recursiveGuard">
|
692 |
|
<summary>
|
693 |
|
The guard prevents an appender from repeatedly calling its own DoAppend method
|
694 |
|
</summary>
|
695 |
|
</member>
|
696 |
|
<member name="F:log4net.Appender.AppenderSkeleton.m_renderWriter">
|
697 |
|
<summary>
|
698 |
|
StringWriter used to render events
|
699 |
|
</summary>
|
700 |
|
</member>
|
701 |
|
<member name="F:log4net.Appender.AppenderSkeleton.declaringType">
|
702 |
|
<summary>
|
703 |
|
The fully qualified type of the AppenderSkeleton class.
|
704 |
|
</summary>
|
705 |
|
<remarks>
|
706 |
|
Used by the internal logger to record the Type of the
|
707 |
|
log message.
|
708 |
|
</remarks>
|
709 |
|
</member>
|
710 |
|
<member name="P:log4net.Appender.AppenderSkeleton.Threshold">
|
711 |
|
<summary>
|
712 |
|
Gets or sets the threshold <see cref="T:log4net.Core.Level"/> of this appender.
|
713 |
|
</summary>
|
714 |
|
<value>
|
715 |
|
The threshold <see cref="T:log4net.Core.Level"/> of the appender.
|
716 |
|
</value>
|
717 |
|
<remarks>
|
718 |
|
<para>
|
719 |
|
All log events with lower level than the threshold level are ignored
|
720 |
|
by the appender.
|
721 |
|
</para>
|
722 |
|
<para>
|
723 |
|
In configuration files this option is specified by setting the
|
724 |
|
value of the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> option to a level
|
725 |
|
string, such as "DEBUG", "INFO" and so on.
|
726 |
|
</para>
|
727 |
|
</remarks>
|
728 |
|
</member>
|
729 |
|
<member name="P:log4net.Appender.AppenderSkeleton.ErrorHandler">
|
730 |
|
<summary>
|
731 |
|
Gets or sets the <see cref="T:log4net.Core.IErrorHandler"/> for this appender.
|
732 |
|
</summary>
|
733 |
|
<value>The <see cref="T:log4net.Core.IErrorHandler"/> of the appender</value>
|
734 |
|
<remarks>
|
735 |
|
<para>
|
736 |
|
The <see cref="T:log4net.Appender.AppenderSkeleton"/> provides a default
|
737 |
|
implementation for the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/> property.
|
738 |
|
</para>
|
739 |
|
</remarks>
|
740 |
|
</member>
|
741 |
|
<member name="P:log4net.Appender.AppenderSkeleton.FilterHead">
|
742 |
|
<summary>
|
743 |
|
The filter chain.
|
744 |
|
</summary>
|
745 |
|
<value>The head of the filter chain filter chain.</value>
|
746 |
|
<remarks>
|
747 |
|
<para>
|
748 |
|
Returns the head Filter. The Filters are organized in a linked list
|
749 |
|
and so all Filters on this Appender are available through the result.
|
750 |
|
</para>
|
751 |
|
</remarks>
|
752 |
|
</member>
|
753 |
|
<member name="P:log4net.Appender.AppenderSkeleton.Layout">
|
754 |
|
<summary>
|
755 |
|
Gets or sets the <see cref="T:log4net.Layout.ILayout"/> for this appender.
|
756 |
|
</summary>
|
757 |
|
<value>The layout of the appender.</value>
|
758 |
|
<remarks>
|
759 |
|
<para>
|
760 |
|
See <see cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/> for more information.
|
761 |
|
</para>
|
762 |
|
</remarks>
|
763 |
|
<seealso cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/>
|
764 |
|
</member>
|
765 |
|
<member name="P:log4net.Appender.AppenderSkeleton.Name">
|
766 |
|
<summary>
|
767 |
|
Gets or sets the name of this appender.
|
768 |
|
</summary>
|
769 |
|
<value>The name of the appender.</value>
|
770 |
|
<remarks>
|
771 |
|
<para>
|
772 |
|
The name uniquely identifies the appender.
|
773 |
|
</para>
|
774 |
|
</remarks>
|
775 |
|
</member>
|
776 |
|
<member name="P:log4net.Appender.AppenderSkeleton.RequiresLayout">
|
777 |
|
<summary>
|
778 |
|
Tests if this appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.
|
779 |
|
</summary>
|
780 |
|
<remarks>
|
781 |
|
<para>
|
782 |
|
In the rather exceptional case, where the appender
|
783 |
|
implementation admits a layout but can also work without it,
|
784 |
|
then the appender should return <c>true</c>.
|
785 |
|
</para>
|
786 |
|
<para>
|
787 |
|
This default implementation always returns <c>false</c>.
|
788 |
|
</para>
|
789 |
|
</remarks>
|
790 |
|
<returns>
|
791 |
|
<c>true</c> if the appender requires a layout object, otherwise <c>false</c>.
|
792 |
|
</returns>
|
793 |
|
</member>
|
794 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE">
|
795 |
|
<summary>
|
796 |
|
The default buffer size.
|
797 |
|
</summary>
|
798 |
|
<remarks>
|
799 |
|
The default size of the cyclic buffer used to store events.
|
800 |
|
This is set to 512 by default.
|
801 |
|
</remarks>
|
802 |
|
</member>
|
803 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor">
|
804 |
|
<summary>
|
805 |
|
Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.
|
806 |
|
</summary>
|
807 |
|
<remarks>
|
808 |
|
<para>
|
809 |
|
Protected default constructor to allow subclassing.
|
810 |
|
</para>
|
811 |
|
</remarks>
|
812 |
|
</member>
|
813 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor(System.Boolean)">
|
814 |
|
<summary>
|
815 |
|
Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.
|
816 |
|
</summary>
|
817 |
|
<param name="eventMustBeFixed">the events passed through this appender must be
|
818 |
|
fixed by the time that they arrive in the derived class' <c>SendBuffer</c> method.</param>
|
819 |
|
<remarks>
|
820 |
|
<para>
|
821 |
|
Protected constructor to allow subclassing.
|
822 |
|
</para>
|
823 |
|
<para>
|
824 |
|
The <paramref name="eventMustBeFixed"/> should be set if the subclass
|
825 |
|
expects the events delivered to be fixed even if the
|
826 |
|
<see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is set to zero, i.e. when no buffering occurs.
|
827 |
|
</para>
|
828 |
|
</remarks>
|
829 |
|
</member>
|
830 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush">
|
831 |
|
<summary>
|
832 |
|
Flush the currently buffered events
|
833 |
|
</summary>
|
834 |
|
<remarks>
|
835 |
|
<para>
|
836 |
|
Flushes any events that have been buffered.
|
837 |
|
</para>
|
838 |
|
<para>
|
839 |
|
If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents
|
840 |
|
of the buffer will NOT be flushed to the appender.
|
841 |
|
</para>
|
842 |
|
</remarks>
|
843 |
|
</member>
|
844 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush(System.Boolean)">
|
845 |
|
<summary>
|
846 |
|
Flush the currently buffered events
|
847 |
|
</summary>
|
848 |
|
<param name="flushLossyBuffer">set to <c>true</c> to flush the buffer of lossy events</param>
|
849 |
|
<remarks>
|
850 |
|
<para>
|
851 |
|
Flushes events that have been buffered. If <paramref name="flushLossyBuffer"/> is
|
852 |
|
<c>false</c> then events will only be flushed if this buffer is non-lossy mode.
|
853 |
|
</para>
|
854 |
|
<para>
|
855 |
|
If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents
|
856 |
|
of the buffer will only be flushed if <paramref name="flushLossyBuffer"/> is <c>true</c>.
|
857 |
|
In this case the contents of the buffer will be tested against the
|
858 |
|
<see cref="P:log4net.Appender.BufferingAppenderSkeleton.LossyEvaluator"/> and if triggering will be output. All other buffered
|
859 |
|
events will be discarded.
|
860 |
|
</para>
|
861 |
|
<para>
|
862 |
|
If <paramref name="flushLossyBuffer"/> is <c>true</c> then the buffer will always
|
863 |
|
be emptied by calling this method.
|
864 |
|
</para>
|
865 |
|
</remarks>
|
866 |
|
</member>
|
867 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions">
|
868 |
|
<summary>
|
869 |
|
Initialize the appender based on the options set
|
870 |
|
</summary>
|
871 |
|
<remarks>
|
872 |
|
<para>
|
873 |
|
This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
|
874 |
|
activation scheme. The <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> method must
|
875 |
|
be called on this object after the configuration properties have
|
876 |
|
been set. Until <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> is called this
|
877 |
|
object is in an undefined state and must not be used.
|
878 |
|
</para>
|
879 |
|
<para>
|
880 |
|
If any of the configuration properties are modified then
|
881 |
|
<see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> must be called again.
|
882 |
|
</para>
|
883 |
|
</remarks>
|
884 |
|
</member>
|
885 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.OnClose">
|
886 |
|
<summary>
|
887 |
|
Close this appender instance.
|
888 |
|
</summary>
|
889 |
|
<remarks>
|
890 |
|
<para>
|
891 |
|
Close this appender instance. If this appender is marked
|
892 |
|
as not <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> then the remaining events in
|
893 |
|
the buffer must be sent when the appender is closed.
|
894 |
|
</para>
|
895 |
|
</remarks>
|
896 |
|
</member>
|
897 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.Append(log4net.Core.LoggingEvent)">
|
898 |
|
<summary>
|
899 |
|
This method is called by the <see cref="M:AppenderSkeleton.DoAppend(LoggingEvent)"/> method.
|
900 |
|
</summary>
|
901 |
|
<param name="loggingEvent">the event to log</param>
|
902 |
|
<remarks>
|
903 |
|
<para>
|
904 |
|
Stores the <paramref name="loggingEvent"/> in the cyclic buffer.
|
905 |
|
</para>
|
906 |
|
<para>
|
907 |
|
The buffer will be sent (i.e. passed to the <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>
|
908 |
|
method) if one of the following conditions is met:
|
909 |
|
</para>
|
910 |
|
<list type="bullet">
|
911 |
|
<item>
|
912 |
|
<description>The cyclic buffer is full and this appender is
|
913 |
|
marked as not lossy (see <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/>)</description>
|
914 |
|
</item>
|
915 |
|
<item>
|
916 |
|
<description>An <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> is set and
|
917 |
|
it is triggered for the <paramref name="loggingEvent"/>
|
918 |
|
specified.</description>
|
919 |
|
</item>
|
920 |
|
</list>
|
921 |
|
<para>
|
922 |
|
Before the event is stored in the buffer it is fixed
|
923 |
|
(see <see cref="M:LoggingEvent.FixVolatileData(FixFlags)"/>) to ensure that
|
924 |
|
any data referenced by the event will be valid when the buffer
|
925 |
|
is processed.
|
926 |
|
</para>
|
927 |
|
</remarks>
|
928 |
|
</member>
|
929 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.SendFromBuffer(log4net.Core.LoggingEvent,log4net.Util.CyclicBuffer)">
|
930 |
|
<summary>
|
931 |
|
Sends the contents of the buffer.
|
932 |
|
</summary>
|
933 |
|
<param name="firstLoggingEvent">The first logging event.</param>
|
934 |
|
<param name="buffer">The buffer containing the events that need to be send.</param>
|
935 |
|
<remarks>
|
936 |
|
<para>
|
937 |
|
The subclass must override <see cref="M:SendBuffer(LoggingEvent[])"/>.
|
938 |
|
</para>
|
939 |
|
</remarks>
|
940 |
|
</member>
|
941 |
|
<member name="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])">
|
942 |
|
<summary>
|
943 |
|
Sends the events.
|
944 |
|
</summary>
|
945 |
|
<param name="events">The events that need to be send.</param>
|
946 |
|
<remarks>
|
947 |
|
<para>
|
948 |
|
The subclass must override this method to process the buffered events.
|
949 |
|
</para>
|
950 |
|
</remarks>
|
951 |
|
</member>
|
952 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_bufferSize">
|
953 |
|
<summary>
|
954 |
|
The size of the cyclic buffer used to hold the logging events.
|
955 |
|
</summary>
|
956 |
|
<remarks>
|
957 |
|
Set to <see cref="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE"/> by default.
|
958 |
|
</remarks>
|
959 |
|
</member>
|
960 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_cb">
|
961 |
|
<summary>
|
962 |
|
The cyclic buffer used to store the logging events.
|
963 |
|
</summary>
|
964 |
|
</member>
|
965 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_evaluator">
|
966 |
|
<summary>
|
967 |
|
The triggering event evaluator that causes the buffer to be sent immediately.
|
968 |
|
</summary>
|
969 |
|
<remarks>
|
970 |
|
The object that is used to determine if an event causes the entire
|
971 |
|
buffer to be sent immediately. This field can be <c>null</c>, which
|
972 |
|
indicates that event triggering is not to be done. The evaluator
|
973 |
|
can be set using the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> property. If this appender
|
974 |
|
has the <see cref="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy"/> (<see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> property) set to
|
975 |
|
<c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be set.
|
976 |
|
</remarks>
|
977 |
|
</member>
|
978 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy">
|
979 |
|
<summary>
|
980 |
|
Indicates if the appender should overwrite events in the cyclic buffer
|
981 |
|
when it becomes full, or if the buffer should be flushed when the
|
982 |
|
buffer is full.
|
983 |
|
</summary>
|
984 |
|
<remarks>
|
985 |
|
If this field is set to <c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must
|
986 |
|
be set.
|
987 |
|
</remarks>
|
988 |
|
</member>
|
989 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossyEvaluator">
|
990 |
|
<summary>
|
991 |
|
The triggering event evaluator filters discarded events.
|
992 |
|
</summary>
|
993 |
|
<remarks>
|
994 |
|
The object that is used to determine if an event that is discarded should
|
995 |
|
really be discarded or if it should be sent to the appenders.
|
996 |
|
This field can be <c>null</c>, which indicates that all discarded events will
|
997 |
|
be discarded.
|
998 |
|
</remarks>
|
999 |
|
</member>
|
1000 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_fixFlags">
|
1001 |
|
<summary>
|
1002 |
|
Value indicating which fields in the event should be fixed
|
1003 |
|
</summary>
|
1004 |
|
<remarks>
|
1005 |
|
By default all fields are fixed
|
1006 |
|
</remarks>
|
1007 |
|
</member>
|
1008 |
|
<member name="F:log4net.Appender.BufferingAppenderSkeleton.m_eventMustBeFixed">
|
1009 |
|
<summary>
|
1010 |
|
The events delivered to the subclass must be fixed.
|
1011 |
|
</summary>
|
1012 |
|
</member>
|
1013 |
|
<member name="P:log4net.Appender.BufferingAppenderSkeleton.Lossy">
|
1014 |
|
<summary>
|
1015 |
|
Gets or sets a value that indicates whether the appender is lossy.
|
1016 |
|
</summary>
|
1017 |
|
<value>
|
1018 |
|
<c>true</c> if the appender is lossy, otherwise <c>false</c>. The default is <c>false</c>.
|