/packages/log4net.1.2.10/lib/2.0/log4net.xml

http://github.com/teamaton/toolbelt · XML · 20666 lines · 20645 code · 21 blank · 0 comment · 0 complexity · c7569dba001b18130ada8afd65de8c70 MD5 · raw file

  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:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.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:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.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:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.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:log4net.Core.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:log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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="loggingEvent"/>
  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="loggingEvent"/>.
  410. </description>
  411. </item>
  412. <item>
  413. <description>
  414. Calls <see cref="M:log4net.Appender.AppenderSkeleton.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.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:log4net.Appender.AppenderSkeleton.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/>.
  546. </para>
  547. </remarks>
  548. </member>
  549. <member name="M:log4net.Appender.AppenderSkeleton.PreAppendCheck">
  550. <summary>
  551. Called before <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> as a precondition.
  552. </summary>
  553. <remarks>
  554. <para>
  555. This method is called by <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>
  556. before the call to the abstract <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.Append(log4net.Core.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:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(System.IO.TextWriter,log4net.Core.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:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.LoggingEvent)"/>
  614. where possible. If, however, the caller needs to render the event
  615. to a string then <see cref="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.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="P:log4net.Appender.AppenderSkeleton.Threshold">
  702. <summary>
  703. Gets or sets the threshold <see cref="T:log4net.Core.Level"/> of this appender.
  704. </summary>
  705. <value>
  706. The threshold <see cref="T:log4net.Core.Level"/> of the appender.
  707. </value>
  708. <remarks>
  709. <para>
  710. All log events with lower level than the threshold level are ignored
  711. by the appender.
  712. </para>
  713. <para>
  714. In configuration files this option is specified by setting the
  715. value of the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> option to a level
  716. string, such as "DEBUG", "INFO" and so on.
  717. </para>
  718. </remarks>
  719. </member>
  720. <member name="P:log4net.Appender.AppenderSkeleton.ErrorHandler">
  721. <summary>
  722. Gets or sets the <see cref="T:log4net.Core.IErrorHandler"/> for this appender.
  723. </summary>
  724. <value>The <see cref="T:log4net.Core.IErrorHandler"/> of the appender</value>
  725. <remarks>
  726. <para>
  727. The <see cref="T:log4net.Appender.AppenderSkeleton"/> provides a default
  728. implementation for the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/> property.
  729. </para>
  730. </remarks>
  731. </member>
  732. <member name="P:log4net.Appender.AppenderSkeleton.FilterHead">
  733. <summary>
  734. The filter chain.
  735. </summary>
  736. <value>The head of the filter chain filter chain.</value>
  737. <remarks>
  738. <para>
  739. Returns the head Filter. The Filters are organized in a linked list
  740. and so all Filters on this Appender are available through the result.
  741. </para>
  742. </remarks>
  743. </member>
  744. <member name="P:log4net.Appender.AppenderSkeleton.Layout">
  745. <summary>
  746. Gets or sets the <see cref="T:log4net.Layout.ILayout"/> for this appender.
  747. </summary>
  748. <value>The layout of the appender.</value>
  749. <remarks>
  750. <para>
  751. See <see cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/> for more information.
  752. </para>
  753. </remarks>
  754. <seealso cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/>
  755. </member>
  756. <member name="P:log4net.Appender.AppenderSkeleton.Name">
  757. <summary>
  758. Gets or sets the name of this appender.
  759. </summary>
  760. <value>The name of the appender.</value>
  761. <remarks>
  762. <para>
  763. The name uniquely identifies the appender.
  764. </para>
  765. </remarks>
  766. </member>
  767. <member name="P:log4net.Appender.AppenderSkeleton.RequiresLayout">
  768. <summary>
  769. Tests if this appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.
  770. </summary>
  771. <remarks>
  772. <para>
  773. In the rather exceptional case, where the appender
  774. implementation admits a layout but can also work without it,
  775. then the appender should return <c>true</c>.
  776. </para>
  777. <para>
  778. This default implementation always returns <c>true</c>.
  779. </para>
  780. </remarks>
  781. <returns>
  782. <c>true</c> if the appender requires a layout object, otherwise <c>false</c>.
  783. </returns>
  784. </member>
  785. <member name="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE">
  786. <summary>
  787. The default buffer size.
  788. </summary>
  789. <remarks>
  790. The default size of the cyclic buffer used to store events.
  791. This is set to 512 by default.
  792. </remarks>
  793. </member>
  794. <member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor">
  795. <summary>
  796. Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.
  797. </summary>
  798. <remarks>
  799. <para>
  800. Protected default constructor to allow subclassing.
  801. </para>
  802. </remarks>
  803. </member>
  804. <member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor(System.Boolean)">
  805. <summary>
  806. Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.
  807. </summary>
  808. <param name="eventMustBeFixed">the events passed through this appender must be
  809. fixed by the time that they arrive in the derived class' <c>SendBuffer</c> method.</param>
  810. <remarks>
  811. <para>
  812. Protected constructor to allow subclassing.
  813. </para>
  814. <para>
  815. The <paramref name="eventMustBeFixed"/> should be set if the subclass
  816. expects the events delivered to be fixed even if the
  817. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is set to zero, i.e. when no buffering occurs.
  818. </para>
  819. </remarks>
  820. </member>
  821. <member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush">
  822. <summary>
  823. Flush the currently buffered events
  824. </summary>
  825. <remarks>
  826. <para>
  827. Flushes any events that have been buffered.
  828. </para>
  829. <para>
  830. If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents
  831. of the buffer will NOT be flushed to the appender.
  832. </para>
  833. </remarks>
  834. </member>
  835. <member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush(System.Boolean)">
  836. <summary>
  837. Flush the currently buffered events
  838. </summary>
  839. <param name="flushLossyBuffer">set to <c>true</c> to flush the buffer of lossy events</param>
  840. <remarks>
  841. <para>
  842. Flushes events that have been buffered. If <paramref name="flushLossyBuffer"/> is
  843. <c>false</c> then events will only be flushed if this buffer is non-lossy mode.
  844. </para>
  845. <para>
  846. If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents
  847. of the buffer will only be flushed if <paramref name="flushLossyBuffer"/> is <c>true</c>.
  848. In this case the contents of the buffer will be tested against the
  849. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.LossyEvaluator"/> and if triggering will be output. All other buffered
  850. events will be discarded.
  851. </para>
  852. <para>
  853. If <paramref name="flushLossyBuffer"/> is <c>true</c> then the buffer will always
  854. be emptied by calling this method.
  855. </para>
  856. </remarks>
  857. </member>
  858. <member name="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions">
  859. <summary>
  860. Initialize the appender based on the options set
  861. </summary>
  862. <remarks>
  863. <para>
  864. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  865. activation scheme. The <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> method must
  866. be called on this object after the configuration properties have
  867. been set. Until <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> is called this
  868. object is in an undefined state and must not be used.
  869. </para>
  870. <para>
  871. If any of the configuration properties are modified then
  872. <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> must be called again.
  873. </para>
  874. </remarks>
  875. </member>
  876. <member name="M:log4net.Appender.BufferingAppenderSkeleton.OnClose">
  877. <summary>
  878. Close this appender instance.
  879. </summary>
  880. <remarks>
  881. <para>
  882. Close this appender instance. If this appender is marked
  883. as not <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> then the remaining events in
  884. the buffer must be sent when the appender is closed.
  885. </para>
  886. </remarks>
  887. </member>
  888. <member name="M:log4net.Appender.BufferingAppenderSkeleton.Append(log4net.Core.LoggingEvent)">
  889. <summary>
  890. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  891. </summary>
  892. <param name="loggingEvent">the event to log</param>
  893. <remarks>
  894. <para>
  895. Stores the <paramref name="loggingEvent"/> in the cyclic buffer.
  896. </para>
  897. <para>
  898. The buffer will be sent (i.e. passed to the <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>
  899. method) if one of the following conditions is met:
  900. </para>
  901. <list type="bullet">
  902. <item>
  903. <description>The cyclic buffer is full and this appender is
  904. marked as not lossy (see <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/>)</description>
  905. </item>
  906. <item>
  907. <description>An <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> is set and
  908. it is triggered for the <paramref name="loggingEvent"/>
  909. specified.</description>
  910. </item>
  911. </list>
  912. <para>
  913. Before the event is stored in the buffer it is fixed
  914. (see <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)"/>) to ensure that
  915. any data referenced by the event will be valid when the buffer
  916. is processed.
  917. </para>
  918. </remarks>
  919. </member>
  920. <member name="M:log4net.Appender.BufferingAppenderSkeleton.SendFromBuffer(log4net.Core.LoggingEvent,log4net.Util.CyclicBuffer)">
  921. <summary>
  922. Sends the contents of the buffer.
  923. </summary>
  924. <param name="firstLoggingEvent">The first logging event.</param>
  925. <param name="buffer">The buffer containing the events that need to be send.</param>
  926. <remarks>
  927. <para>
  928. The subclass must override <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>.
  929. </para>
  930. </remarks>
  931. </member>
  932. <member name="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])">
  933. <summary>
  934. Sends the events.
  935. </summary>
  936. <param name="events">The events that need to be send.</param>
  937. <remarks>
  938. <para>
  939. The subclass must override this method to process the buffered events.
  940. </para>
  941. </remarks>
  942. </member>
  943. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_bufferSize">
  944. <summary>
  945. The size of the cyclic buffer used to hold the logging events.
  946. </summary>
  947. <remarks>
  948. Set to <see cref="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE"/> by default.
  949. </remarks>
  950. </member>
  951. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_cb">
  952. <summary>
  953. The cyclic buffer used to store the logging events.
  954. </summary>
  955. </member>
  956. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_evaluator">
  957. <summary>
  958. The triggering event evaluator that causes the buffer to be sent immediately.
  959. </summary>
  960. <remarks>
  961. The object that is used to determine if an event causes the entire
  962. buffer to be sent immediately. This field can be <c>null</c>, which
  963. indicates that event triggering is not to be done. The evaluator
  964. can be set using the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> property. If this appender
  965. has the <see cref="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy"/> (<see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> property) set to
  966. <c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be set.
  967. </remarks>
  968. </member>
  969. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy">
  970. <summary>
  971. Indicates if the appender should overwrite events in the cyclic buffer
  972. when it becomes full, or if the buffer should be flushed when the
  973. buffer is full.
  974. </summary>
  975. <remarks>
  976. If this field is set to <c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must
  977. be set.
  978. </remarks>
  979. </member>
  980. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossyEvaluator">
  981. <summary>
  982. The triggering event evaluator filters discarded events.
  983. </summary>
  984. <remarks>
  985. The object that is used to determine if an event that is discarded should
  986. really be discarded or if it should be sent to the appenders.
  987. This field can be <c>null</c>, which indicates that all discarded events will
  988. be discarded.
  989. </remarks>
  990. </member>
  991. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_fixFlags">
  992. <summary>
  993. Value indicating which fields in the event should be fixed
  994. </summary>
  995. <remarks>
  996. By default all fields are fixed
  997. </remarks>
  998. </member>
  999. <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_eventMustBeFixed">
  1000. <summary>
  1001. The events delivered to the subclass must be fixed.
  1002. </summary>
  1003. </member>
  1004. <member name="P:log4net.Appender.BufferingAppenderSkeleton.Lossy">
  1005. <summary>
  1006. Gets or sets a value that indicates whether the appender is lossy.
  1007. </summary>
  1008. <value>
  1009. <c>true</c> if the appender is lossy, otherwise <c>false</c>. The default is <c>false</c>.
  1010. </value>
  1011. <remarks>
  1012. <para>
  1013. This appender uses a buffer to store logging events before
  1014. delivering them. A triggering event causes the whole buffer
  1015. to be send to the remote sink. If the buffer overruns before
  1016. a triggering event then logging events could be lost. Set
  1017. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> to <c>false</c> to prevent logging events
  1018. from being lost.
  1019. </para>
  1020. <para>If <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> is set to <c>true</c> then an
  1021. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be specified.</para>
  1022. </remarks>
  1023. </member>
  1024. <member name="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize">
  1025. <summary>
  1026. Gets or sets the size of the cyclic buffer used to hold the
  1027. logging events.
  1028. </summary>
  1029. <value>
  1030. The size of the cyclic buffer used to hold the logging events.
  1031. </value>
  1032. <remarks>
  1033. <para>
  1034. The <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option takes a positive integer
  1035. representing the maximum number of logging events to collect in
  1036. a cyclic buffer. When the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is reached,
  1037. oldest events are deleted as new events are added to the
  1038. buffer. By default the size of the cyclic buffer is 512 events.
  1039. </para>
  1040. <para>
  1041. If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is set to a value less than
  1042. or equal to 1 then no buffering will occur. The logging event
  1043. will be delivered synchronously (depending on the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/>
  1044. and <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> properties). Otherwise the event will
  1045. be buffered.
  1046. </para>
  1047. </remarks>
  1048. </member>
  1049. <member name="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator">
  1050. <summary>
  1051. Gets or sets the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> that causes the
  1052. buffer to be sent immediately.
  1053. </summary>
  1054. <value>
  1055. The <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> that causes the buffer to be
  1056. sent immediately.
  1057. </value>
  1058. <remarks>
  1059. <para>
  1060. The evaluator will be called for each event that is appended to this
  1061. appender. If the evaluator triggers then the current buffer will
  1062. immediately be sent (see <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>).
  1063. </para>
  1064. <para>If <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> is set to <c>true</c> then an
  1065. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be specified.</para>
  1066. </remarks>
  1067. </member>
  1068. <member name="P:log4net.Appender.BufferingAppenderSkeleton.LossyEvaluator">
  1069. <summary>
  1070. Gets or sets the value of the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> to use.
  1071. </summary>
  1072. <value>
  1073. The value of the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> to use.
  1074. </value>
  1075. <remarks>
  1076. <para>
  1077. The evaluator will be called for each event that is discarded from this
  1078. appender. If the evaluator triggers then the current buffer will immediately
  1079. be sent (see <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>).
  1080. </para>
  1081. </remarks>
  1082. </member>
  1083. <member name="P:log4net.Appender.BufferingAppenderSkeleton.OnlyFixPartialEventData">
  1084. <summary>
  1085. Gets or sets a value indicating if only part of the logging event data
  1086. should be fixed.
  1087. </summary>
  1088. <value>
  1089. <c>true</c> if the appender should only fix part of the logging event
  1090. data, otherwise <c>false</c>. The default is <c>false</c>.
  1091. </value>
  1092. <remarks>
  1093. <para>
  1094. Setting this property to <c>true</c> will cause only part of the
  1095. event data to be fixed and serialized. This will improve performance.
  1096. </para>
  1097. <para>
  1098. See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)"/> for more information.
  1099. </para>
  1100. </remarks>
  1101. </member>
  1102. <member name="P:log4net.Appender.BufferingAppenderSkeleton.Fix">
  1103. <summary>
  1104. Gets or sets a the fields that will be fixed in the event
  1105. </summary>
  1106. <value>
  1107. The event fields that will be fixed before the event is buffered
  1108. </value>
  1109. <remarks>
  1110. <para>
  1111. The logging event needs to have certain thread specific values
  1112. captured before it can be buffered. See <see cref="P:log4net.Core.LoggingEvent.Fix"/>
  1113. for details.
  1114. </para>
  1115. </remarks>
  1116. <seealso cref="P:log4net.Core.LoggingEvent.Fix"/>
  1117. </member>
  1118. <member name="M:log4net.Appender.AdoNetAppender.#ctor">
  1119. <summary>
  1120. Initializes a new instance of the <see cref="T:log4net.Appender.AdoNetAppender"/> class.
  1121. </summary>
  1122. <remarks>
  1123. Public default constructor to initialize a new instance of this class.
  1124. </remarks>
  1125. </member>
  1126. <member name="M:log4net.Appender.AdoNetAppender.ActivateOptions">
  1127. <summary>
  1128. Initialize the appender based on the options set
  1129. </summary>
  1130. <remarks>
  1131. <para>
  1132. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  1133. activation scheme. The <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> method must
  1134. be called on this object after the configuration properties have
  1135. been set. Until <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> is called this
  1136. object is in an undefined state and must not be used.
  1137. </para>
  1138. <para>
  1139. If any of the configuration properties are modified then
  1140. <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> must be called again.
  1141. </para>
  1142. </remarks>
  1143. </member>
  1144. <member name="M:log4net.Appender.AdoNetAppender.OnClose">
  1145. <summary>
  1146. Override the parent method to close the database
  1147. </summary>
  1148. <remarks>
  1149. <para>
  1150. Closes the database command and database connection.
  1151. </para>
  1152. </remarks>
  1153. </member>
  1154. <member name="M:log4net.Appender.AdoNetAppender.SendBuffer(log4net.Core.LoggingEvent[])">
  1155. <summary>
  1156. Inserts the events into the database.
  1157. </summary>
  1158. <param name="events">The events to insert into the database.</param>
  1159. <remarks>
  1160. <para>
  1161. Insert all the events specified in the <paramref name="events"/>
  1162. array into the database.
  1163. </para>
  1164. </remarks>
  1165. </member>
  1166. <member name="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)">
  1167. <summary>
  1168. Adds a parameter to the command.
  1169. </summary>
  1170. <param name="parameter">The parameter to add to the command.</param>
  1171. <remarks>
  1172. <para>
  1173. Adds a parameter to the ordered list of command parameters.
  1174. </para>
  1175. </remarks>
  1176. </member>
  1177. <member name="M:log4net.Appender.AdoNetAppender.SendBuffer(System.Data.IDbTransaction,log4net.Core.LoggingEvent[])">
  1178. <summary>
  1179. Writes the events to the database using the transaction specified.
  1180. </summary>
  1181. <param name="dbTran">The transaction that the events will be executed under.</param>
  1182. <param name="events">The array of events to insert into the database.</param>
  1183. <remarks>
  1184. <para>
  1185. The transaction argument can be <c>null</c> if the appender has been
  1186. configured not to use transactions. See <see cref="P:log4net.Appender.AdoNetAppender.UseTransactions"/>
  1187. property for more information.
  1188. </para>
  1189. </remarks>
  1190. </member>
  1191. <member name="M:log4net.Appender.AdoNetAppender.GetLogStatement(log4net.Core.LoggingEvent)">
  1192. <summary>
  1193. Formats the log message into database statement text.
  1194. </summary>
  1195. <param name="logEvent">The event being logged.</param>
  1196. <remarks>
  1197. This method can be overridden by subclasses to provide
  1198. more control over the format of the database statement.
  1199. </remarks>
  1200. <returns>
  1201. Text that can be passed to a <see cref="T:System.Data.IDbCommand"/>.
  1202. </returns>
  1203. </member>
  1204. <member name="M:log4net.Appender.AdoNetAppender.InitializeDatabaseConnection">
  1205. <summary>
  1206. Connects to the database.
  1207. </summary>
  1208. </member>
  1209. <member name="M:log4net.Appender.AdoNetAppender.ResolveConnectionType">
  1210. <summary>
  1211. Retrieves the class type of the ADO.NET provider.
  1212. </summary>
  1213. <remarks>
  1214. <para>
  1215. Gets the Type of the ADO.NET provider to use to connect to the
  1216. database. This method resolves the type specified in the
  1217. <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property.
  1218. </para>
  1219. <para>
  1220. Subclasses can override this method to return a different type
  1221. if necessary.
  1222. </para>
  1223. </remarks>
  1224. <returns>The <see cref="T:System.Type"/> of the ADO.NET provider</returns>
  1225. </member>
  1226. <member name="M:log4net.Appender.AdoNetAppender.InitializeDatabaseCommand">
  1227. <summary>
  1228. Prepares the database command and initialize the parameters.
  1229. </summary>
  1230. </member>
  1231. <member name="F:log4net.Appender.AdoNetAppender.m_usePreparedCommand">
  1232. <summary>
  1233. Flag to indicate if we are using a command object
  1234. </summary>
  1235. <remarks>
  1236. <para>
  1237. Set to <c>true</c> when the appender is to use a prepared
  1238. statement or stored procedure to insert into the database.
  1239. </para>
  1240. </remarks>
  1241. </member>
  1242. <member name="F:log4net.Appender.AdoNetAppender.m_parameters">
  1243. <summary>
  1244. The list of <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> objects.
  1245. </summary>
  1246. <remarks>
  1247. <para>
  1248. The list of <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> objects.
  1249. </para>
  1250. </remarks>
  1251. </member>
  1252. <member name="F:log4net.Appender.AdoNetAppender.m_securityContext">
  1253. <summary>
  1254. The security context to use for privileged calls
  1255. </summary>
  1256. </member>
  1257. <member name="F:log4net.Appender.AdoNetAppender.m_dbConnection">
  1258. <summary>
  1259. The <see cref="T:System.Data.IDbConnection"/> that will be used
  1260. to insert logging events into a database.
  1261. </summary>
  1262. </member>
  1263. <member name="F:log4net.Appender.AdoNetAppender.m_dbCommand">
  1264. <summary>
  1265. The database command.
  1266. </summary>
  1267. </member>
  1268. <member name="F:log4net.Appender.AdoNetAppender.m_connectionString">
  1269. <summary>
  1270. Database connection string.
  1271. </summary>
  1272. </member>
  1273. <member name="F:log4net.Appender.AdoNetAppender.m_connectionType">
  1274. <summary>
  1275. String type name of the <see cref="T:System.Data.IDbConnection"/> type name.
  1276. </summary>
  1277. </member>
  1278. <member name="F:log4net.Appender.AdoNetAppender.m_commandText">
  1279. <summary>
  1280. The text of the command.
  1281. </summary>
  1282. </member>
  1283. <member name="F:log4net.Appender.AdoNetAppender.m_commandType">
  1284. <summary>
  1285. The command type.
  1286. </summary>
  1287. </member>
  1288. <member name="F:log4net.Appender.AdoNetAppender.m_useTransactions">
  1289. <summary>
  1290. Indicates whether to use transactions when writing to the database.
  1291. </summary>
  1292. </member>
  1293. <member name="F:log4net.Appender.AdoNetAppender.m_reconnectOnError">
  1294. <summary>
  1295. Indicates whether to use transactions when writing to the database.
  1296. </summary>
  1297. </member>
  1298. <member name="P:log4net.Appender.AdoNetAppender.ConnectionString">
  1299. <summary>
  1300. Gets or sets the database connection string that is used to connect to
  1301. the database.
  1302. </summary>
  1303. <value>
  1304. The database connection string used to connect to the database.
  1305. </value>
  1306. <remarks>
  1307. <para>
  1308. The connections string is specific to the connection type.
  1309. See <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> for more information.
  1310. </para>
  1311. </remarks>
  1312. <example>Connection string for MS Access via ODBC:
  1313. <code>"DSN=MS Access Database;UID=admin;PWD=;SystemDB=C:\data\System.mdw;SafeTransactions = 0;FIL=MS Access;DriverID = 25;DBQ=C:\data\train33.mdb"</code>
  1314. </example>
  1315. <example>Another connection string for MS Access via ODBC:
  1316. <code>"Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\Work\cvs_root\log4net-1.2\access.mdb;UID=;PWD=;"</code>
  1317. </example>
  1318. <example>Connection string for MS Access via OLE DB:
  1319. <code>"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Work\cvs_root\log4net-1.2\access.mdb;User Id=;Password=;"</code>
  1320. </example>
  1321. </member>
  1322. <member name="P:log4net.Appender.AdoNetAppender.ConnectionType">
  1323. <summary>
  1324. Gets or sets the type name of the <see cref="T:System.Data.IDbConnection"/> connection
  1325. that should be created.
  1326. </summary>
  1327. <value>
  1328. The type name of the <see cref="T:System.Data.IDbConnection"/> connection.
  1329. </value>
  1330. <remarks>
  1331. <para>
  1332. The type name of the ADO.NET provider to use.
  1333. </para>
  1334. <para>
  1335. The default is to use the OLE DB provider.
  1336. </para>
  1337. </remarks>
  1338. <example>Use the OLE DB Provider. This is the default value.
  1339. <code>System.Data.OleDb.OleDbConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>
  1340. </example>
  1341. <example>Use the MS SQL Server Provider.
  1342. <code>System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>
  1343. </example>
  1344. <example>Use the ODBC Provider.
  1345. <code>Microsoft.Data.Odbc.OdbcConnection,Microsoft.Data.Odbc,version=1.0.3300.0,publicKeyToken=b77a5c561934e089,culture=neutral</code>
  1346. This is an optional package that you can download from
  1347. <a href="http://msdn.microsoft.com/downloads">http://msdn.microsoft.com/downloads</a>
  1348. search for <b>ODBC .NET Data Provider</b>.
  1349. </example>
  1350. <example>Use the Oracle Provider.
  1351. <code>System.Data.OracleClient.OracleConnection, System.Data.OracleClient, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>
  1352. This is an optional package that you can download from
  1353. <a href="http://msdn.microsoft.com/downloads">http://msdn.microsoft.com/downloads</a>
  1354. search for <b>.NET Managed Provider for Oracle</b>.
  1355. </example>
  1356. </member>
  1357. <member name="P:log4net.Appender.AdoNetAppender.CommandText">
  1358. <summary>
  1359. Gets or sets the command text that is used to insert logging events
  1360. into the database.
  1361. </summary>
  1362. <value>
  1363. The command text used to insert logging events into the database.
  1364. </value>
  1365. <remarks>
  1366. <para>
  1367. Either the text of the prepared statement or the
  1368. name of the stored procedure to execute to write into
  1369. the database.
  1370. </para>
  1371. <para>
  1372. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property determines if
  1373. this text is a prepared statement or a stored procedure.
  1374. </para>
  1375. </remarks>
  1376. </member>
  1377. <member name="P:log4net.Appender.AdoNetAppender.CommandType">
  1378. <summary>
  1379. Gets or sets the command type to execute.
  1380. </summary>
  1381. <value>
  1382. The command type to execute.
  1383. </value>
  1384. <remarks>
  1385. <para>
  1386. This value may be either <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify
  1387. that the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> is a prepared statement to execute,
  1388. or <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify that the
  1389. <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property is the name of a stored procedure
  1390. to execute.
  1391. </para>
  1392. <para>
  1393. The default value is <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>).
  1394. </para>
  1395. </remarks>
  1396. </member>
  1397. <member name="P:log4net.Appender.AdoNetAppender.UseTransactions">
  1398. <summary>
  1399. Should transactions be used to insert logging events in the database.
  1400. </summary>
  1401. <value>
  1402. <c>true</c> if transactions should be used to insert logging events in
  1403. the database, otherwise <c>false</c>. The default value is <c>true</c>.
  1404. </value>
  1405. <remarks>
  1406. <para>
  1407. Gets or sets a value that indicates whether transactions should be used
  1408. to insert logging events in the database.
  1409. </para>
  1410. <para>
  1411. When set a single transaction will be used to insert the buffered events
  1412. into the database. Otherwise each event will be inserted without using
  1413. an explicit transaction.
  1414. </para>
  1415. </remarks>
  1416. </member>
  1417. <member name="P:log4net.Appender.AdoNetAppender.SecurityContext">
  1418. <summary>
  1419. Gets or sets the <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> used to call the NetSend method.
  1420. </summary>
  1421. <value>
  1422. The <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> used to call the NetSend method.
  1423. </value>
  1424. <remarks>
  1425. <para>
  1426. Unless a <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> specified here for this appender
  1427. the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the
  1428. security context to use. The default behavior is to use the security context
  1429. of the current thread.
  1430. </para>
  1431. </remarks>
  1432. </member>
  1433. <member name="P:log4net.Appender.AdoNetAppender.ReconnectOnError">
  1434. <summary>
  1435. Should this appender try to reconnect to the database on error.
  1436. </summary>
  1437. <value>
  1438. <c>true</c> if the appender should try to reconnect to the database after an
  1439. error has occurred, otherwise <c>false</c>. The default value is <c>false</c>,
  1440. i.e. not to try to reconnect.
  1441. </value>
  1442. <remarks>
  1443. <para>
  1444. The default behaviour is for the appender not to try to reconnect to the
  1445. database if an error occurs. Subsequent logging events are discarded.
  1446. </para>
  1447. <para>
  1448. To force the appender to attempt to reconnect to the database set this
  1449. property to <c>true</c>.
  1450. </para>
  1451. <note>
  1452. When the appender attempts to connect to the database there may be a
  1453. delay of up to the connection timeout specified in the connection string.
  1454. This delay will block the calling application's thread.
  1455. Until the connection can be reestablished this potential delay may occur multiple times.
  1456. </note>
  1457. </remarks>
  1458. </member>
  1459. <member name="P:log4net.Appender.AdoNetAppender.Connection">
  1460. <summary>
  1461. Gets or sets the underlying <see cref="T:System.Data.IDbConnection"/>.
  1462. </summary>
  1463. <value>
  1464. The underlying <see cref="T:System.Data.IDbConnection"/>.
  1465. </value>
  1466. <remarks>
  1467. <see cref="T:log4net.Appender.AdoNetAppender"/> creates a <see cref="T:System.Data.IDbConnection"/> to insert
  1468. logging events into a database. Classes deriving from <see cref="T:log4net.Appender.AdoNetAppender"/>
  1469. can use this property to get or set this <see cref="T:System.Data.IDbConnection"/>. Use the
  1470. underlying <see cref="T:System.Data.IDbConnection"/> returned from <see cref="P:log4net.Appender.AdoNetAppender.Connection"/> if
  1471. you require access beyond that which <see cref="T:log4net.Appender.AdoNetAppender"/> provides.
  1472. </remarks>
  1473. </member>
  1474. <member name="T:log4net.Appender.AdoNetAppenderParameter">
  1475. <summary>
  1476. Parameter type used by the <see cref="T:log4net.Appender.AdoNetAppender"/>.
  1477. </summary>
  1478. <remarks>
  1479. <para>
  1480. This class provides the basic database parameter properties
  1481. as defined by the <see cref="T:System.Data.IDbDataParameter"/> interface.
  1482. </para>
  1483. <para>This type can be subclassed to provide database specific
  1484. functionality. The two methods that are called externally are
  1485. <see cref="M:log4net.Appender.AdoNetAppenderParameter.Prepare(System.Data.IDbCommand)"/> and <see cref="M:log4net.Appender.AdoNetAppenderParameter.FormatValue(System.Data.IDbCommand,log4net.Core.LoggingEvent)"/>.
  1486. </para>
  1487. </remarks>
  1488. </member>
  1489. <member name="M:log4net.Appender.AdoNetAppenderParameter.#ctor">
  1490. <summary>
  1491. Initializes a new instance of the <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> class.
  1492. </summary>
  1493. <remarks>
  1494. Default constructor for the AdoNetAppenderParameter class.
  1495. </remarks>
  1496. </member>
  1497. <member name="M:log4net.Appender.AdoNetAppenderParameter.Prepare(System.Data.IDbCommand)">
  1498. <summary>
  1499. Prepare the specified database command object.
  1500. </summary>
  1501. <param name="command">The command to prepare.</param>
  1502. <remarks>
  1503. <para>
  1504. Prepares the database command object by adding
  1505. this parameter to its collection of parameters.
  1506. </para>
  1507. </remarks>
  1508. </member>
  1509. <member name="M:log4net.Appender.AdoNetAppenderParameter.FormatValue(System.Data.IDbCommand,log4net.Core.LoggingEvent)">
  1510. <summary>
  1511. Renders the logging event and set the parameter value in the command.
  1512. </summary>
  1513. <param name="command">The command containing the parameter.</param>
  1514. <param name="loggingEvent">The event to be rendered.</param>
  1515. <remarks>
  1516. <para>
  1517. Renders the logging event using this parameters layout
  1518. object. Sets the value of the parameter on the command object.
  1519. </para>
  1520. </remarks>
  1521. </member>
  1522. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_parameterName">
  1523. <summary>
  1524. The name of this parameter.
  1525. </summary>
  1526. </member>
  1527. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_dbType">
  1528. <summary>
  1529. The database type for this parameter.
  1530. </summary>
  1531. </member>
  1532. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_inferType">
  1533. <summary>
  1534. Flag to infer type rather than use the DbType
  1535. </summary>
  1536. </member>
  1537. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_precision">
  1538. <summary>
  1539. The precision for this parameter.
  1540. </summary>
  1541. </member>
  1542. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_scale">
  1543. <summary>
  1544. The scale for this parameter.
  1545. </summary>
  1546. </member>
  1547. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_size">
  1548. <summary>
  1549. The size for this parameter.
  1550. </summary>
  1551. </member>
  1552. <member name="F:log4net.Appender.AdoNetAppenderParameter.m_layout">
  1553. <summary>
  1554. The <see cref="T:log4net.Layout.IRawLayout"/> to use to render the
  1555. logging event into an object for this parameter.
  1556. </summary>
  1557. </member>
  1558. <member name="P:log4net.Appender.AdoNetAppenderParameter.ParameterName">
  1559. <summary>
  1560. Gets or sets the name of this parameter.
  1561. </summary>
  1562. <value>
  1563. The name of this parameter.
  1564. </value>
  1565. <remarks>
  1566. <para>
  1567. The name of this parameter. The parameter name
  1568. must match up to a named parameter to the SQL stored procedure
  1569. or prepared statement.
  1570. </para>
  1571. </remarks>
  1572. </member>
  1573. <member name="P:log4net.Appender.AdoNetAppenderParameter.DbType">
  1574. <summary>
  1575. Gets or sets the database type for this parameter.
  1576. </summary>
  1577. <value>
  1578. The database type for this parameter.
  1579. </value>
  1580. <remarks>
  1581. <para>
  1582. The database type for this parameter. This property should
  1583. be set to the database type from the <see cref="P:log4net.Appender.AdoNetAppenderParameter.DbType"/>
  1584. enumeration. See <see cref="P:System.Data.IDataParameter.DbType"/>.
  1585. </para>
  1586. <para>
  1587. This property is optional. If not specified the ADO.NET provider
  1588. will attempt to infer the type from the value.
  1589. </para>
  1590. </remarks>
  1591. <seealso cref="P:System.Data.IDataParameter.DbType"/>
  1592. </member>
  1593. <member name="P:log4net.Appender.AdoNetAppenderParameter.Precision">
  1594. <summary>
  1595. Gets or sets the precision for this parameter.
  1596. </summary>
  1597. <value>
  1598. The precision for this parameter.
  1599. </value>
  1600. <remarks>
  1601. <para>
  1602. The maximum number of digits used to represent the Value.
  1603. </para>
  1604. <para>
  1605. This property is optional. If not specified the ADO.NET provider
  1606. will attempt to infer the precision from the value.
  1607. </para>
  1608. </remarks>
  1609. <seealso cref="P:System.Data.IDbDataParameter.Precision"/>
  1610. </member>
  1611. <member name="P:log4net.Appender.AdoNetAppenderParameter.Scale">
  1612. <summary>
  1613. Gets or sets the scale for this parameter.
  1614. </summary>
  1615. <value>
  1616. The scale for this parameter.
  1617. </value>
  1618. <remarks>
  1619. <para>
  1620. The number of decimal places to which Value is resolved.
  1621. </para>
  1622. <para>
  1623. This property is optional. If not specified the ADO.NET provider
  1624. will attempt to infer the scale from the value.
  1625. </para>
  1626. </remarks>
  1627. <seealso cref="P:System.Data.IDbDataParameter.Scale"/>
  1628. </member>
  1629. <member name="P:log4net.Appender.AdoNetAppenderParameter.Size">
  1630. <summary>
  1631. Gets or sets the size for this parameter.
  1632. </summary>
  1633. <value>
  1634. The size for this parameter.
  1635. </value>
  1636. <remarks>
  1637. <para>
  1638. The maximum size, in bytes, of the data within the column.
  1639. </para>
  1640. <para>
  1641. This property is optional. If not specified the ADO.NET provider
  1642. will attempt to infer the size from the value.
  1643. </para>
  1644. </remarks>
  1645. <seealso cref="P:System.Data.IDbDataParameter.Size"/>
  1646. </member>
  1647. <member name="P:log4net.Appender.AdoNetAppenderParameter.Layout">
  1648. <summary>
  1649. Gets or sets the <see cref="T:log4net.Layout.IRawLayout"/> to use to
  1650. render the logging event into an object for this
  1651. parameter.
  1652. </summary>
  1653. <value>
  1654. The <see cref="T:log4net.Layout.IRawLayout"/> used to render the
  1655. logging event into an object for this parameter.
  1656. </value>
  1657. <remarks>
  1658. <para>
  1659. The <see cref="T:log4net.Layout.IRawLayout"/> that renders the value for this
  1660. parameter.
  1661. </para>
  1662. <para>
  1663. The <see cref="T:log4net.Layout.RawLayoutConverter"/> can be used to adapt
  1664. any <see cref="T:log4net.Layout.ILayout"/> into a <see cref="T:log4net.Layout.IRawLayout"/>
  1665. for use in the property.
  1666. </para>
  1667. </remarks>
  1668. </member>
  1669. <member name="T:log4net.Appender.AnsiColorTerminalAppender">
  1670. <summary>
  1671. Appends logging events to the terminal using ANSI color escape sequences.
  1672. </summary>
  1673. <remarks>
  1674. <para>
  1675. AnsiColorTerminalAppender appends log events to the standard output stream
  1676. or the error output stream using a layout specified by the
  1677. user. It also allows the color of a specific level of message to be set.
  1678. </para>
  1679. <note>
  1680. This appender expects the terminal to understand the VT100 control set
  1681. in order to interpret the color codes. If the terminal or console does not
  1682. understand the control codes the behavior is not defined.
  1683. </note>
  1684. <para>
  1685. By default, all output is written to the console's standard output stream.
  1686. The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> property can be set to direct the output to the
  1687. error stream.
  1688. </para>
  1689. <para>
  1690. NOTE: This appender writes each message to the <c>System.Console.Out</c> or
  1691. <c>System.Console.Error</c> that is set at the time the event is appended.
  1692. Therefore it is possible to programmatically redirect the output of this appender
  1693. (for example NUnit does this to capture program output). While this is the desired
  1694. behavior of this appender it may have security implications in your application.
  1695. </para>
  1696. <para>
  1697. When configuring the ANSI colored terminal appender, a mapping should be
  1698. specified to map a logging level to a color. For example:
  1699. </para>
  1700. <code lang="XML" escaped="true">
  1701. <mapping>
  1702. <level value="ERROR"/>
  1703. <foreColor value="White"/>
  1704. <backColor value="Red"/>
  1705. <attributes value="Bright,Underscore"/>
  1706. </mapping>
  1707. <mapping>
  1708. <level value="DEBUG"/>
  1709. <backColor value="Green"/>
  1710. </mapping>
  1711. </code>
  1712. <para>
  1713. The Level is the standard log4net logging level and ForeColor and BackColor can be any
  1714. of the following values:
  1715. <list type="bullet">
  1716. <item><term>Blue</term><description></description></item>
  1717. <item><term>Green</term><description></description></item>
  1718. <item><term>Red</term><description></description></item>
  1719. <item><term>White</term><description></description></item>
  1720. <item><term>Yellow</term><description></description></item>
  1721. <item><term>Purple</term><description></description></item>
  1722. <item><term>Cyan</term><description></description></item>
  1723. </list>
  1724. These color values cannot be combined together to make new colors.
  1725. </para>
  1726. <para>
  1727. The attributes can be any combination of the following:
  1728. <list type="bullet">
  1729. <item><term>Bright</term><description>foreground is brighter</description></item>
  1730. <item><term>Dim</term><description>foreground is dimmer</description></item>
  1731. <item><term>Underscore</term><description>message is underlined</description></item>
  1732. <item><term>Blink</term><description>foreground is blinking (does not work on all terminals)</description></item>
  1733. <item><term>Reverse</term><description>foreground and background are reversed</description></item>
  1734. <item><term>Hidden</term><description>output is hidden</description></item>
  1735. <item><term>Strikethrough</term><description>message has a line through it</description></item>
  1736. </list>
  1737. While any of these attributes may be combined together not all combinations
  1738. work well together, for example setting both <i>Bright</i> and <i>Dim</i> attributes makes
  1739. no sense.
  1740. </para>
  1741. </remarks>
  1742. <author>Patrick Wagstrom</author>
  1743. <author>Nicko Cadell</author>
  1744. </member>
  1745. <member name="F:log4net.Appender.AnsiColorTerminalAppender.ConsoleOut">
  1746. <summary>
  1747. The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console
  1748. standard output stream.
  1749. </summary>
  1750. <remarks>
  1751. <para>
  1752. The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console
  1753. standard output stream.
  1754. </para>
  1755. </remarks>
  1756. </member>
  1757. <member name="F:log4net.Appender.AnsiColorTerminalAppender.ConsoleError">
  1758. <summary>
  1759. The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console
  1760. standard error output stream.
  1761. </summary>
  1762. <remarks>
  1763. <para>
  1764. The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console
  1765. standard error output stream.
  1766. </para>
  1767. </remarks>
  1768. </member>
  1769. <member name="F:log4net.Appender.AnsiColorTerminalAppender.PostEventCodes">
  1770. <summary>
  1771. Ansi code to reset terminal
  1772. </summary>
  1773. </member>
  1774. <member name="M:log4net.Appender.AnsiColorTerminalAppender.#ctor">
  1775. <summary>
  1776. Initializes a new instance of the <see cref="T:log4net.Appender.AnsiColorTerminalAppender"/> class.
  1777. </summary>
  1778. <remarks>
  1779. The instance of the <see cref="T:log4net.Appender.AnsiColorTerminalAppender"/> class is set up to write
  1780. to the standard output stream.
  1781. </remarks>
  1782. </member>
  1783. <member name="M:log4net.Appender.AnsiColorTerminalAppender.AddMapping(log4net.Appender.AnsiColorTerminalAppender.LevelColors)">
  1784. <summary>
  1785. Add a mapping of level to color
  1786. </summary>
  1787. <param name="mapping">The mapping to add</param>
  1788. <remarks>
  1789. <para>
  1790. Add a <see cref="T:log4net.Appender.AnsiColorTerminalAppender.LevelColors"/> mapping to this appender.
  1791. Each mapping defines the foreground and background colours
  1792. for a level.
  1793. </para>
  1794. </remarks>
  1795. </member>
  1796. <member name="M:log4net.Appender.AnsiColorTerminalAppender.Append(log4net.Core.LoggingEvent)">
  1797. <summary>
  1798. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  1799. </summary>
  1800. <param name="loggingEvent">The event to log.</param>
  1801. <remarks>
  1802. <para>
  1803. Writes the event to the console.
  1804. </para>
  1805. <para>
  1806. The format of the output will depend on the appender's layout.
  1807. </para>
  1808. </remarks>
  1809. </member>
  1810. <member name="M:log4net.Appender.AnsiColorTerminalAppender.ActivateOptions">
  1811. <summary>
  1812. Initialize the options for this appender
  1813. </summary>
  1814. <remarks>
  1815. <para>
  1816. Initialize the level to color mappings set on this appender.
  1817. </para>
  1818. </remarks>
  1819. </member>
  1820. <member name="F:log4net.Appender.AnsiColorTerminalAppender.m_writeToErrorStream">
  1821. <summary>
  1822. Flag to write output to the error stream rather than the standard output stream
  1823. </summary>
  1824. </member>
  1825. <member name="F:log4net.Appender.AnsiColorTerminalAppender.m_levelMapping">
  1826. <summary>
  1827. Mapping from level object to color value
  1828. </summary>
  1829. </member>
  1830. <member name="P:log4net.Appender.AnsiColorTerminalAppender.Target">
  1831. <summary>
  1832. Target is the value of the console output stream.
  1833. </summary>
  1834. <value>
  1835. Target is the value of the console output stream.
  1836. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  1837. </value>
  1838. <remarks>
  1839. <para>
  1840. Target is the value of the console output stream.
  1841. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  1842. </para>
  1843. </remarks>
  1844. </member>
  1845. <member name="P:log4net.Appender.AnsiColorTerminalAppender.RequiresLayout">
  1846. <summary>
  1847. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  1848. </summary>
  1849. <value><c>true</c></value>
  1850. <remarks>
  1851. <para>
  1852. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  1853. </para>
  1854. </remarks>
  1855. </member>
  1856. <member name="T:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes">
  1857. <summary>
  1858. The enum of possible display attributes
  1859. </summary>
  1860. <remarks>
  1861. <para>
  1862. The following flags can be combined together to
  1863. form the ANSI color attributes.
  1864. </para>
  1865. </remarks>
  1866. <seealso cref="T:log4net.Appender.AnsiColorTerminalAppender"/>
  1867. </member>
  1868. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Bright">
  1869. <summary>
  1870. text is bright
  1871. </summary>
  1872. </member>
  1873. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Dim">
  1874. <summary>
  1875. text is dim
  1876. </summary>
  1877. </member>
  1878. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Underscore">
  1879. <summary>
  1880. text is underlined
  1881. </summary>
  1882. </member>
  1883. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Blink">
  1884. <summary>
  1885. text is blinking
  1886. </summary>
  1887. <remarks>
  1888. Not all terminals support this attribute
  1889. </remarks>
  1890. </member>
  1891. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Reverse">
  1892. <summary>
  1893. text and background colors are reversed
  1894. </summary>
  1895. </member>
  1896. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Hidden">
  1897. <summary>
  1898. text is hidden
  1899. </summary>
  1900. </member>
  1901. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Strikethrough">
  1902. <summary>
  1903. text is displayed with a strikethrough
  1904. </summary>
  1905. </member>
  1906. <member name="T:log4net.Appender.AnsiColorTerminalAppender.AnsiColor">
  1907. <summary>
  1908. The enum of possible foreground or background color values for
  1909. use with the color mapping method
  1910. </summary>
  1911. <remarks>
  1912. <para>
  1913. The output can be in one for the following ANSI colors.
  1914. </para>
  1915. </remarks>
  1916. <seealso cref="T:log4net.Appender.AnsiColorTerminalAppender"/>
  1917. </member>
  1918. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Black">
  1919. <summary>
  1920. color is black
  1921. </summary>
  1922. </member>
  1923. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Red">
  1924. <summary>
  1925. color is red
  1926. </summary>
  1927. </member>
  1928. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Green">
  1929. <summary>
  1930. color is green
  1931. </summary>
  1932. </member>
  1933. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Yellow">
  1934. <summary>
  1935. color is yellow
  1936. </summary>
  1937. </member>
  1938. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Blue">
  1939. <summary>
  1940. color is blue
  1941. </summary>
  1942. </member>
  1943. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Magenta">
  1944. <summary>
  1945. color is magenta
  1946. </summary>
  1947. </member>
  1948. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Cyan">
  1949. <summary>
  1950. color is cyan
  1951. </summary>
  1952. </member>
  1953. <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.White">
  1954. <summary>
  1955. color is white
  1956. </summary>
  1957. </member>
  1958. <member name="T:log4net.Appender.AnsiColorTerminalAppender.LevelColors">
  1959. <summary>
  1960. A class to act as a mapping between the level that a logging call is made at and
  1961. the color it should be displayed as.
  1962. </summary>
  1963. <remarks>
  1964. <para>
  1965. Defines the mapping between a level and the color it should be displayed in.
  1966. </para>
  1967. </remarks>
  1968. </member>
  1969. <member name="T:log4net.Util.LevelMappingEntry">
  1970. <summary>
  1971. An entry in the <see cref="T:log4net.Util.LevelMapping"/>
  1972. </summary>
  1973. <remarks>
  1974. <para>
  1975. This is an abstract base class for types that are stored in the
  1976. <see cref="T:log4net.Util.LevelMapping"/> object.
  1977. </para>
  1978. </remarks>
  1979. <author>Nicko Cadell</author>
  1980. </member>
  1981. <member name="M:log4net.Util.LevelMappingEntry.#ctor">
  1982. <summary>
  1983. Default protected constructor
  1984. </summary>
  1985. <remarks>
  1986. <para>
  1987. Default protected constructor
  1988. </para>
  1989. </remarks>
  1990. </member>
  1991. <member name="M:log4net.Util.LevelMappingEntry.ActivateOptions">
  1992. <summary>
  1993. Initialize any options defined on this entry
  1994. </summary>
  1995. <remarks>
  1996. <para>
  1997. Should be overridden by any classes that need to initialise based on their options
  1998. </para>
  1999. </remarks>
  2000. </member>
  2001. <member name="P:log4net.Util.LevelMappingEntry.Level">
  2002. <summary>
  2003. The level that is the key for this mapping
  2004. </summary>
  2005. <value>
  2006. The <see cref="P:log4net.Util.LevelMappingEntry.Level"/> that is the key for this mapping
  2007. </value>
  2008. <remarks>
  2009. <para>
  2010. Get or set the <see cref="P:log4net.Util.LevelMappingEntry.Level"/> that is the key for this
  2011. mapping subclass.
  2012. </para>
  2013. </remarks>
  2014. </member>
  2015. <member name="M:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ActivateOptions">
  2016. <summary>
  2017. Initialize the options for the object
  2018. </summary>
  2019. <remarks>
  2020. <para>
  2021. Combine the <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor"/> together
  2022. and append the attributes.
  2023. </para>
  2024. </remarks>
  2025. </member>
  2026. <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor">
  2027. <summary>
  2028. The mapped foreground color for the specified level
  2029. </summary>
  2030. <remarks>
  2031. <para>
  2032. Required property.
  2033. The mapped foreground color for the specified level
  2034. </para>
  2035. </remarks>
  2036. </member>
  2037. <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor">
  2038. <summary>
  2039. The mapped background color for the specified level
  2040. </summary>
  2041. <remarks>
  2042. <para>
  2043. Required property.
  2044. The mapped background color for the specified level
  2045. </para>
  2046. </remarks>
  2047. </member>
  2048. <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.Attributes">
  2049. <summary>
  2050. The color attributes for the specified level
  2051. </summary>
  2052. <remarks>
  2053. <para>
  2054. Required property.
  2055. The color attributes for the specified level
  2056. </para>
  2057. </remarks>
  2058. </member>
  2059. <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.CombinedColor">
  2060. <summary>
  2061. The combined <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor"/>, <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor"/> and
  2062. <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.Attributes"/> suitable for setting the ansi terminal color.
  2063. </summary>
  2064. </member>
  2065. <member name="T:log4net.Appender.AppenderCollection">
  2066. <summary>
  2067. A strongly-typed collection of <see cref="T:log4net.Appender.IAppender"/> objects.
  2068. </summary>
  2069. <author>Nicko Cadell</author>
  2070. </member>
  2071. <member name="M:log4net.Appender.AppenderCollection.ReadOnly(log4net.Appender.AppenderCollection)">
  2072. <summary>
  2073. Creates a read-only wrapper for a <c>AppenderCollection</c> instance.
  2074. </summary>
  2075. <param name="list">list to create a readonly wrapper arround</param>
  2076. <returns>
  2077. An <c>AppenderCollection</c> wrapper that is read-only.
  2078. </returns>
  2079. </member>
  2080. <member name="F:log4net.Appender.AppenderCollection.EmptyCollection">
  2081. <summary>
  2082. An empty readonly static AppenderCollection
  2083. </summary>
  2084. </member>
  2085. <member name="M:log4net.Appender.AppenderCollection.#ctor">
  2086. <summary>
  2087. Initializes a new instance of the <c>AppenderCollection</c> class
  2088. that is empty and has the default initial capacity.
  2089. </summary>
  2090. </member>
  2091. <member name="M:log4net.Appender.AppenderCollection.#ctor(System.Int32)">
  2092. <summary>
  2093. Initializes a new instance of the <c>AppenderCollection</c> class
  2094. that has the specified initial capacity.
  2095. </summary>
  2096. <param name="capacity">
  2097. The number of elements that the new <c>AppenderCollection</c> is initially capable of storing.
  2098. </param>
  2099. </member>
  2100. <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.AppenderCollection)">
  2101. <summary>
  2102. Initializes a new instance of the <c>AppenderCollection</c> class
  2103. that contains elements copied from the specified <c>AppenderCollection</c>.
  2104. </summary>
  2105. <param name="c">The <c>AppenderCollection</c> whose elements are copied to the new collection.</param>
  2106. </member>
  2107. <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.IAppender[])">
  2108. <summary>
  2109. Initializes a new instance of the <c>AppenderCollection</c> class
  2110. that contains elements copied from the specified <see cref="T:log4net.Appender.IAppender"/> array.
  2111. </summary>
  2112. <param name="a">The <see cref="T:log4net.Appender.IAppender"/> array whose elements are copied to the new list.</param>
  2113. </member>
  2114. <member name="M:log4net.Appender.AppenderCollection.#ctor(System.Collections.ICollection)">
  2115. <summary>
  2116. Initializes a new instance of the <c>AppenderCollection</c> class
  2117. that contains elements copied from the specified <see cref="T:log4net.Appender.IAppender"/> collection.
  2118. </summary>
  2119. <param name="col">The <see cref="T:log4net.Appender.IAppender"/> collection whose elements are copied to the new list.</param>
  2120. </member>
  2121. <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.AppenderCollection.Tag)">
  2122. <summary>
  2123. Allow subclasses to avoid our default constructors
  2124. </summary>
  2125. <param name="tag"></param>
  2126. <exclude/>
  2127. </member>
  2128. <member name="M:log4net.Appender.AppenderCollection.CopyTo(log4net.Appender.IAppender[])">
  2129. <summary>
  2130. Copies the entire <c>AppenderCollection</c> to a one-dimensional
  2131. <see cref="T:log4net.Appender.IAppender"/> array.
  2132. </summary>
  2133. <param name="array">The one-dimensional <see cref="T:log4net.Appender.IAppender"/> array to copy to.</param>
  2134. </member>
  2135. <member name="M:log4net.Appender.AppenderCollection.CopyTo(log4net.Appender.IAppender[],System.Int32)">
  2136. <summary>
  2137. Copies the entire <c>AppenderCollection</c> to a one-dimensional
  2138. <see cref="T:log4net.Appender.IAppender"/> array, starting at the specified index of the target array.
  2139. </summary>
  2140. <param name="array">The one-dimensional <see cref="T:log4net.Appender.IAppender"/> array to copy to.</param>
  2141. <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>
  2142. </member>
  2143. <member name="M:log4net.Appender.AppenderCollection.Add(log4net.Appender.IAppender)">
  2144. <summary>
  2145. Adds a <see cref="T:log4net.Appender.IAppender"/> to the end of the <c>AppenderCollection</c>.
  2146. </summary>
  2147. <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to be added to the end of the <c>AppenderCollection</c>.</param>
  2148. <returns>The index at which the value has been added.</returns>
  2149. </member>
  2150. <member name="M:log4net.Appender.AppenderCollection.Clear">
  2151. <summary>
  2152. Removes all elements from the <c>AppenderCollection</c>.
  2153. </summary>
  2154. </member>
  2155. <member name="M:log4net.Appender.AppenderCollection.Clone">
  2156. <summary>
  2157. Creates a shallow copy of the <see cref="T:log4net.Appender.AppenderCollection"/>.
  2158. </summary>
  2159. <returns>A new <see cref="T:log4net.Appender.AppenderCollection"/> with a shallow copy of the collection data.</returns>
  2160. </member>
  2161. <member name="M:log4net.Appender.AppenderCollection.Contains(log4net.Appender.IAppender)">
  2162. <summary>
  2163. Determines whether a given <see cref="T:log4net.Appender.IAppender"/> is in the <c>AppenderCollection</c>.
  2164. </summary>
  2165. <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to check for.</param>
  2166. <returns><c>true</c> if <paramref name="item"/> is found in the <c>AppenderCollection</c>; otherwise, <c>false</c>.</returns>
  2167. </member>
  2168. <member name="M:log4net.Appender.AppenderCollection.IndexOf(log4net.Appender.IAppender)">
  2169. <summary>
  2170. Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Appender.IAppender"/>
  2171. in the <c>AppenderCollection</c>.
  2172. </summary>
  2173. <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to locate in the <c>AppenderCollection</c>.</param>
  2174. <returns>
  2175. The zero-based index of the first occurrence of <paramref name="item"/>
  2176. in the entire <c>AppenderCollection</c>, if found; otherwise, -1.
  2177. </returns>
  2178. </member>
  2179. <member name="M:log4net.Appender.AppenderCollection.Insert(System.Int32,log4net.Appender.IAppender)">
  2180. <summary>
  2181. Inserts an element into the <c>AppenderCollection</c> at the specified index.
  2182. </summary>
  2183. <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
  2184. <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to insert.</param>
  2185. <exception cref="T:System.ArgumentOutOfRangeException">
  2186. <para><paramref name="index"/> is less than zero</para>
  2187. <para>-or-</para>
  2188. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>
  2189. </exception>
  2190. </member>
  2191. <member name="M:log4net.Appender.AppenderCollection.Remove(log4net.Appender.IAppender)">
  2192. <summary>
  2193. Removes the first occurrence of a specific <see cref="T:log4net.Appender.IAppender"/> from the <c>AppenderCollection</c>.
  2194. </summary>
  2195. <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to remove from the <c>AppenderCollection</c>.</param>
  2196. <exception cref="T:System.ArgumentException">
  2197. The specified <see cref="T:log4net.Appender.IAppender"/> was not found in the <c>AppenderCollection</c>.
  2198. </exception>
  2199. </member>
  2200. <member name="M:log4net.Appender.AppenderCollection.RemoveAt(System.Int32)">
  2201. <summary>
  2202. Removes the element at the specified index of the <c>AppenderCollection</c>.
  2203. </summary>
  2204. <param name="index">The zero-based index of the element to remove.</param>
  2205. <exception cref="T:System.ArgumentOutOfRangeException">
  2206. <para><paramref name="index"/> is less than zero</para>
  2207. <para>-or-</para>
  2208. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>
  2209. </exception>
  2210. </member>
  2211. <member name="M:log4net.Appender.AppenderCollection.GetEnumerator">
  2212. <summary>
  2213. Returns an enumerator that can iterate through the <c>AppenderCollection</c>.
  2214. </summary>
  2215. <returns>An <see cref="T:log4net.Appender.AppenderCollection.Enumerator"/> for the entire <c>AppenderCollection</c>.</returns>
  2216. </member>
  2217. <member name="M:log4net.Appender.AppenderCollection.AddRange(log4net.Appender.AppenderCollection)">
  2218. <summary>
  2219. Adds the elements of another <c>AppenderCollection</c> to the current <c>AppenderCollection</c>.
  2220. </summary>
  2221. <param name="x">The <c>AppenderCollection</c> whose elements should be added to the end of the current <c>AppenderCollection</c>.</param>
  2222. <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>
  2223. </member>
  2224. <member name="M:log4net.Appender.AppenderCollection.AddRange(log4net.Appender.IAppender[])">
  2225. <summary>
  2226. Adds the elements of a <see cref="T:log4net.Appender.IAppender"/> array to the current <c>AppenderCollection</c>.
  2227. </summary>
  2228. <param name="x">The <see cref="T:log4net.Appender.IAppender"/> array whose elements should be added to the end of the <c>AppenderCollection</c>.</param>
  2229. <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>
  2230. </member>
  2231. <member name="M:log4net.Appender.AppenderCollection.AddRange(System.Collections.ICollection)">
  2232. <summary>
  2233. Adds the elements of a <see cref="T:log4net.Appender.IAppender"/> collection to the current <c>AppenderCollection</c>.
  2234. </summary>
  2235. <param name="col">The <see cref="T:log4net.Appender.IAppender"/> collection whose elements should be added to the end of the <c>AppenderCollection</c>.</param>
  2236. <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>
  2237. </member>
  2238. <member name="M:log4net.Appender.AppenderCollection.TrimToSize">
  2239. <summary>
  2240. Sets the capacity to the actual number of elements.
  2241. </summary>
  2242. </member>
  2243. <member name="M:log4net.Appender.AppenderCollection.ToArray">
  2244. <summary>
  2245. Return the collection elements as an array
  2246. </summary>
  2247. <returns>the array</returns>
  2248. </member>
  2249. <member name="M:log4net.Appender.AppenderCollection.ValidateIndex(System.Int32)">
  2250. <exception cref="T:System.ArgumentOutOfRangeException">
  2251. <para><paramref name="index"/> is less than zero</para>
  2252. <para>-or-</para>
  2253. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>
  2254. </exception>
  2255. </member>
  2256. <member name="M:log4net.Appender.AppenderCollection.ValidateIndex(System.Int32,System.Boolean)">
  2257. <exception cref="T:System.ArgumentOutOfRangeException">
  2258. <para><paramref name="index"/> is less than zero</para>
  2259. <para>-or-</para>
  2260. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>
  2261. </exception>
  2262. </member>
  2263. <member name="P:log4net.Appender.AppenderCollection.Count">
  2264. <summary>
  2265. Gets the number of elements actually contained in the <c>AppenderCollection</c>.
  2266. </summary>
  2267. </member>
  2268. <member name="P:log4net.Appender.AppenderCollection.IsSynchronized">
  2269. <summary>
  2270. Gets a value indicating whether access to the collection is synchronized (thread-safe).
  2271. </summary>
  2272. <returns>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</returns>
  2273. </member>
  2274. <member name="P:log4net.Appender.AppenderCollection.SyncRoot">
  2275. <summary>
  2276. Gets an object that can be used to synchronize access to the collection.
  2277. </summary>
  2278. </member>
  2279. <member name="P:log4net.Appender.AppenderCollection.Item(System.Int32)">
  2280. <summary>
  2281. Gets or sets the <see cref="T:log4net.Appender.IAppender"/> at the specified index.
  2282. </summary>
  2283. <param name="index">The zero-based index of the element to get or set.</param>
  2284. <exception cref="T:System.ArgumentOutOfRangeException">
  2285. <para><paramref name="index"/> is less than zero</para>
  2286. <para>-or-</para>
  2287. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>
  2288. </exception>
  2289. </member>
  2290. <member name="P:log4net.Appender.AppenderCollection.IsFixedSize">
  2291. <summary>
  2292. Gets a value indicating whether the collection has a fixed size.
  2293. </summary>
  2294. <value>true if the collection has a fixed size; otherwise, false. The default is false</value>
  2295. </member>
  2296. <member name="P:log4net.Appender.AppenderCollection.IsReadOnly">
  2297. <summary>
  2298. Gets a value indicating whether the IList is read-only.
  2299. </summary>
  2300. <value>true if the collection is read-only; otherwise, false. The default is false</value>
  2301. </member>
  2302. <member name="P:log4net.Appender.AppenderCollection.Capacity">
  2303. <summary>
  2304. Gets or sets the number of elements the <c>AppenderCollection</c> can contain.
  2305. </summary>
  2306. </member>
  2307. <member name="T:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator">
  2308. <summary>
  2309. Supports type-safe iteration over a <see cref="T:log4net.Appender.AppenderCollection"/>.
  2310. </summary>
  2311. <exclude/>
  2312. </member>
  2313. <member name="M:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.MoveNext">
  2314. <summary>
  2315. Advances the enumerator to the next element in the collection.
  2316. </summary>
  2317. <returns>
  2318. <c>true</c> if the enumerator was successfully advanced to the next element;
  2319. <c>false</c> if the enumerator has passed the end of the collection.
  2320. </returns>
  2321. <exception cref="T:System.InvalidOperationException">
  2322. The collection was modified after the enumerator was created.
  2323. </exception>
  2324. </member>
  2325. <member name="M:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.Reset">
  2326. <summary>
  2327. Sets the enumerator to its initial position, before the first element in the collection.
  2328. </summary>
  2329. </member>
  2330. <member name="P:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.Current">
  2331. <summary>
  2332. Gets the current element in the collection.
  2333. </summary>
  2334. </member>
  2335. <member name="T:log4net.Appender.AppenderCollection.Tag">
  2336. <summary>
  2337. Type visible only to our subclasses
  2338. Used to access protected constructor
  2339. </summary>
  2340. <exclude/>
  2341. </member>
  2342. <member name="F:log4net.Appender.AppenderCollection.Tag.Default">
  2343. <summary>
  2344. A value
  2345. </summary>
  2346. </member>
  2347. <member name="T:log4net.Appender.AppenderCollection.Enumerator">
  2348. <summary>
  2349. Supports simple iteration over a <see cref="T:log4net.Appender.AppenderCollection"/>.
  2350. </summary>
  2351. <exclude/>
  2352. </member>
  2353. <member name="M:log4net.Appender.AppenderCollection.Enumerator.#ctor(log4net.Appender.AppenderCollection)">
  2354. <summary>
  2355. Initializes a new instance of the <c>Enumerator</c> class.
  2356. </summary>
  2357. <param name="tc"></param>
  2358. </member>
  2359. <member name="M:log4net.Appender.AppenderCollection.Enumerator.MoveNext">
  2360. <summary>
  2361. Advances the enumerator to the next element in the collection.
  2362. </summary>
  2363. <returns>
  2364. <c>true</c> if the enumerator was successfully advanced to the next element;
  2365. <c>false</c> if the enumerator has passed the end of the collection.
  2366. </returns>
  2367. <exception cref="T:System.InvalidOperationException">
  2368. The collection was modified after the enumerator was created.
  2369. </exception>
  2370. </member>
  2371. <member name="M:log4net.Appender.AppenderCollection.Enumerator.Reset">
  2372. <summary>
  2373. Sets the enumerator to its initial position, before the first element in the collection.
  2374. </summary>
  2375. </member>
  2376. <member name="P:log4net.Appender.AppenderCollection.Enumerator.Current">
  2377. <summary>
  2378. Gets the current element in the collection.
  2379. </summary>
  2380. </member>
  2381. <member name="T:log4net.Appender.AppenderCollection.ReadOnlyAppenderCollection">
  2382. <exclude/>
  2383. </member>
  2384. <member name="T:log4net.Appender.AspNetTraceAppender">
  2385. <summary>
  2386. <para>
  2387. Appends log events to the ASP.NET <see cref="T:System.Web.TraceContext"/> system.
  2388. </para>
  2389. </summary>
  2390. <remarks>
  2391. <para>
  2392. Diagnostic information and tracing messages that you specify are appended to the output
  2393. of the page that is sent to the requesting browser. Optionally, you can view this information
  2394. from a separate trace viewer (Trace.axd) that displays trace information for every page in a
  2395. given application.
  2396. </para>
  2397. <para>
  2398. Trace statements are processed and displayed only when tracing is enabled. You can control
  2399. whether tracing is displayed to a page, to the trace viewer, or both.
  2400. </para>
  2401. <para>
  2402. The logging event is passed to the <see cref="M:System.Web.TraceContext.Write(System.String)"/> or
  2403. <see cref="M:System.Web.TraceContext.Warn(System.String)"/> method depending on the level of the logging event.
  2404. </para>
  2405. </remarks>
  2406. <author>Nicko Cadell</author>
  2407. <author>Gert Driesen</author>
  2408. </member>
  2409. <member name="M:log4net.Appender.AspNetTraceAppender.#ctor">
  2410. <summary>
  2411. Initializes a new instance of the <see cref="T:log4net.Appender.AspNetTraceAppender"/> class.
  2412. </summary>
  2413. <remarks>
  2414. <para>
  2415. Default constructor.
  2416. </para>
  2417. </remarks>
  2418. </member>
  2419. <member name="M:log4net.Appender.AspNetTraceAppender.Append(log4net.Core.LoggingEvent)">
  2420. <summary>
  2421. Write the logging event to the ASP.NET trace
  2422. </summary>
  2423. <param name="loggingEvent">the event to log</param>
  2424. <remarks>
  2425. <para>
  2426. Write the logging event to the ASP.NET trace
  2427. <c>HttpContext.Current.Trace</c>
  2428. (<see cref="T:System.Web.TraceContext"/>).
  2429. </para>
  2430. </remarks>
  2431. </member>
  2432. <member name="P:log4net.Appender.AspNetTraceAppender.RequiresLayout">
  2433. <summary>
  2434. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  2435. </summary>
  2436. <value><c>true</c></value>
  2437. <remarks>
  2438. <para>
  2439. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  2440. </para>
  2441. </remarks>
  2442. </member>
  2443. <member name="T:log4net.Appender.BufferingForwardingAppender">
  2444. <summary>
  2445. Buffers events and then forwards them to attached appenders.
  2446. </summary>
  2447. <remarks>
  2448. <para>
  2449. The events are buffered in this appender until conditions are
  2450. met to allow the appender to deliver the events to the attached
  2451. appenders. See <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> for the
  2452. conditions that cause the buffer to be sent.
  2453. </para>
  2454. <para>The forwarding appender can be used to specify different
  2455. thresholds and filters for the same appender at different locations
  2456. within the hierarchy.
  2457. </para>
  2458. </remarks>
  2459. <author>Nicko Cadell</author>
  2460. <author>Gert Driesen</author>
  2461. </member>
  2462. <member name="T:log4net.Core.IAppenderAttachable">
  2463. <summary>
  2464. Interface for attaching appenders to objects.
  2465. </summary>
  2466. <remarks>
  2467. <para>
  2468. Interface for attaching, removing and retrieving appenders.
  2469. </para>
  2470. </remarks>
  2471. <author>Nicko Cadell</author>
  2472. <author>Gert Driesen</author>
  2473. </member>
  2474. <member name="M:log4net.Core.IAppenderAttachable.AddAppender(log4net.Appender.IAppender)">
  2475. <summary>
  2476. Attaches an appender.
  2477. </summary>
  2478. <param name="appender">The appender to add.</param>
  2479. <remarks>
  2480. <para>
  2481. Add the specified appender. The implementation may
  2482. choose to allow or deny duplicate appenders.
  2483. </para>
  2484. </remarks>
  2485. </member>
  2486. <member name="M:log4net.Core.IAppenderAttachable.GetAppender(System.String)">
  2487. <summary>
  2488. Gets an attached appender with the specified name.
  2489. </summary>
  2490. <param name="name">The name of the appender to get.</param>
  2491. <returns>
  2492. The appender with the name specified, or <c>null</c> if no appender with the
  2493. specified name is found.
  2494. </returns>
  2495. <remarks>
  2496. <para>
  2497. Returns an attached appender with the <paramref name="name"/> specified.
  2498. If no appender with the specified name is found <c>null</c> will be
  2499. returned.
  2500. </para>
  2501. </remarks>
  2502. </member>
  2503. <member name="M:log4net.Core.IAppenderAttachable.RemoveAllAppenders">
  2504. <summary>
  2505. Removes all attached appenders.
  2506. </summary>
  2507. <remarks>
  2508. <para>
  2509. Removes and closes all attached appenders
  2510. </para>
  2511. </remarks>
  2512. </member>
  2513. <member name="M:log4net.Core.IAppenderAttachable.RemoveAppender(log4net.Appender.IAppender)">
  2514. <summary>
  2515. Removes the specified appender from the list of attached appenders.
  2516. </summary>
  2517. <param name="appender">The appender to remove.</param>
  2518. <returns>The appender removed from the list</returns>
  2519. <remarks>
  2520. <para>
  2521. The appender removed is not closed.
  2522. If you are discarding the appender you must call
  2523. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  2524. </para>
  2525. </remarks>
  2526. </member>
  2527. <member name="M:log4net.Core.IAppenderAttachable.RemoveAppender(System.String)">
  2528. <summary>
  2529. Removes the appender with the specified name from the list of appenders.
  2530. </summary>
  2531. <param name="name">The name of the appender to remove.</param>
  2532. <returns>The appender removed from the list</returns>
  2533. <remarks>
  2534. <para>
  2535. The appender removed is not closed.
  2536. If you are discarding the appender you must call
  2537. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  2538. </para>
  2539. </remarks>
  2540. </member>
  2541. <member name="P:log4net.Core.IAppenderAttachable.Appenders">
  2542. <summary>
  2543. Gets all attached appenders.
  2544. </summary>
  2545. <value>
  2546. A collection of attached appenders.
  2547. </value>
  2548. <remarks>
  2549. <para>
  2550. Gets a collection of attached appenders.
  2551. If there are no attached appenders the
  2552. implementation should return an empty
  2553. collection rather than <c>null</c>.
  2554. </para>
  2555. </remarks>
  2556. </member>
  2557. <member name="M:log4net.Appender.BufferingForwardingAppender.#ctor">
  2558. <summary>
  2559. Initializes a new instance of the <see cref="T:log4net.Appender.BufferingForwardingAppender"/> class.
  2560. </summary>
  2561. <remarks>
  2562. <para>
  2563. Default constructor.
  2564. </para>
  2565. </remarks>
  2566. </member>
  2567. <member name="M:log4net.Appender.BufferingForwardingAppender.OnClose">
  2568. <summary>
  2569. Closes the appender and releases resources.
  2570. </summary>
  2571. <remarks>
  2572. <para>
  2573. Releases any resources allocated within the appender such as file handles,
  2574. network connections, etc.
  2575. </para>
  2576. <para>
  2577. It is a programming error to append to a closed appender.
  2578. </para>
  2579. </remarks>
  2580. </member>
  2581. <member name="M:log4net.Appender.BufferingForwardingAppender.SendBuffer(log4net.Core.LoggingEvent[])">
  2582. <summary>
  2583. Send the events.
  2584. </summary>
  2585. <param name="events">The events that need to be send.</param>
  2586. <remarks>
  2587. <para>
  2588. Forwards the events to the attached appenders.
  2589. </para>
  2590. </remarks>
  2591. </member>
  2592. <member name="M:log4net.Appender.BufferingForwardingAppender.AddAppender(log4net.Appender.IAppender)">
  2593. <summary>
  2594. Adds an <see cref="T:log4net.Appender.IAppender"/> to the list of appenders of this
  2595. instance.
  2596. </summary>
  2597. <param name="newAppender">The <see cref="T:log4net.Appender.IAppender"/> to add to this appender.</param>
  2598. <remarks>
  2599. <para>
  2600. If the specified <see cref="T:log4net.Appender.IAppender"/> is already in the list of
  2601. appenders, then it won't be added again.
  2602. </para>
  2603. </remarks>
  2604. </member>
  2605. <member name="M:log4net.Appender.BufferingForwardingAppender.GetAppender(System.String)">
  2606. <summary>
  2607. Looks for the appender with the specified name.
  2608. </summary>
  2609. <param name="name">The name of the appender to lookup.</param>
  2610. <returns>
  2611. The appender with the specified name, or <c>null</c>.
  2612. </returns>
  2613. <remarks>
  2614. <para>
  2615. Get the named appender attached to this buffering appender.
  2616. </para>
  2617. </remarks>
  2618. </member>
  2619. <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAllAppenders">
  2620. <summary>
  2621. Removes all previously added appenders from this appender.
  2622. </summary>
  2623. <remarks>
  2624. <para>
  2625. This is useful when re-reading configuration information.
  2626. </para>
  2627. </remarks>
  2628. </member>
  2629. <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAppender(log4net.Appender.IAppender)">
  2630. <summary>
  2631. Removes the specified appender from the list of appenders.
  2632. </summary>
  2633. <param name="appender">The appender to remove.</param>
  2634. <returns>The appender removed from the list</returns>
  2635. <remarks>
  2636. The appender removed is not closed.
  2637. If you are discarding the appender you must call
  2638. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  2639. </remarks>
  2640. </member>
  2641. <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAppender(System.String)">
  2642. <summary>
  2643. Removes the appender with the specified name from the list of appenders.
  2644. </summary>
  2645. <param name="name">The name of the appender to remove.</param>
  2646. <returns>The appender removed from the list</returns>
  2647. <remarks>
  2648. The appender removed is not closed.
  2649. If you are discarding the appender you must call
  2650. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  2651. </remarks>
  2652. </member>
  2653. <member name="F:log4net.Appender.BufferingForwardingAppender.m_appenderAttachedImpl">
  2654. <summary>
  2655. Implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface
  2656. </summary>
  2657. </member>
  2658. <member name="P:log4net.Appender.BufferingForwardingAppender.Appenders">
  2659. <summary>
  2660. Gets the appenders contained in this appender as an
  2661. <see cref="T:System.Collections.ICollection"/>.
  2662. </summary>
  2663. <remarks>
  2664. If no appenders can be found, then an <see cref="T:log4net.Util.EmptyCollection"/>
  2665. is returned.
  2666. </remarks>
  2667. <returns>
  2668. A collection of the appenders in this appender.
  2669. </returns>
  2670. </member>
  2671. <member name="T:log4net.Appender.ColoredConsoleAppender">
  2672. <summary>
  2673. Appends logging events to the console.
  2674. </summary>
  2675. <remarks>
  2676. <para>
  2677. ColoredConsoleAppender appends log events to the standard output stream
  2678. or the error output stream using a layout specified by the
  2679. user. It also allows the color of a specific type of message to be set.
  2680. </para>
  2681. <para>
  2682. By default, all output is written to the console's standard output stream.
  2683. The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> property can be set to direct the output to the
  2684. error stream.
  2685. </para>
  2686. <para>
  2687. NOTE: This appender writes directly to the application's attached console
  2688. not to the <c>System.Console.Out</c> or <c>System.Console.Error</c> <c>TextWriter</c>.
  2689. The <c>System.Console.Out</c> and <c>System.Console.Error</c> streams can be
  2690. programmatically redirected (for example NUnit does this to capture program output).
  2691. This appender will ignore these redirections because it needs to use Win32
  2692. API calls to colorize the output. To respect these redirections the <see cref="T:log4net.Appender.ConsoleAppender"/>
  2693. must be used.
  2694. </para>
  2695. <para>
  2696. When configuring the colored console appender, mapping should be
  2697. specified to map a logging level to a color. For example:
  2698. </para>
  2699. <code lang="XML" escaped="true">
  2700. <mapping>
  2701. <level value="ERROR"/>
  2702. <foreColor value="White"/>
  2703. <backColor value="Red, HighIntensity"/>
  2704. </mapping>
  2705. <mapping>
  2706. <level value="DEBUG"/>
  2707. <backColor value="Green"/>
  2708. </mapping>
  2709. </code>
  2710. <para>
  2711. The Level is the standard log4net logging level and ForeColor and BackColor can be any
  2712. combination of the following values:
  2713. <list type="bullet">
  2714. <item><term>Blue</term><description></description></item>
  2715. <item><term>Green</term><description></description></item>
  2716. <item><term>Red</term><description></description></item>
  2717. <item><term>White</term><description></description></item>
  2718. <item><term>Yellow</term><description></description></item>
  2719. <item><term>Purple</term><description></description></item>
  2720. <item><term>Cyan</term><description></description></item>
  2721. <item><term>HighIntensity</term><description></description></item>
  2722. </list>
  2723. </para>
  2724. </remarks>
  2725. <author>Rick Hobbs</author>
  2726. <author>Nicko Cadell</author>
  2727. </member>
  2728. <member name="F:log4net.Appender.ColoredConsoleAppender.ConsoleOut">
  2729. <summary>
  2730. The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console
  2731. standard output stream.
  2732. </summary>
  2733. <remarks>
  2734. <para>
  2735. The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console
  2736. standard output stream.
  2737. </para>
  2738. </remarks>
  2739. </member>
  2740. <member name="F:log4net.Appender.ColoredConsoleAppender.ConsoleError">
  2741. <summary>
  2742. The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console
  2743. standard error output stream.
  2744. </summary>
  2745. <remarks>
  2746. <para>
  2747. The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console
  2748. standard error output stream.
  2749. </para>
  2750. </remarks>
  2751. </member>
  2752. <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor">
  2753. <summary>
  2754. Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class.
  2755. </summary>
  2756. <remarks>
  2757. The instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class is set up to write
  2758. to the standard output stream.
  2759. </remarks>
  2760. </member>
  2761. <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor(log4net.Layout.ILayout)">
  2762. <summary>
  2763. Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class
  2764. with the specified layout.
  2765. </summary>
  2766. <param name="layout">the layout to use for this appender</param>
  2767. <remarks>
  2768. The instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class is set up to write
  2769. to the standard output stream.
  2770. </remarks>
  2771. </member>
  2772. <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor(log4net.Layout.ILayout,System.Boolean)">
  2773. <summary>
  2774. Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class
  2775. with the specified layout.
  2776. </summary>
  2777. <param name="layout">the layout to use for this appender</param>
  2778. <param name="writeToErrorStream">flag set to <c>true</c> to write to the console error stream</param>
  2779. <remarks>
  2780. When <paramref name="writeToErrorStream"/> is set to <c>true</c>, output is written to
  2781. the standard error output stream. Otherwise, output is written to the standard
  2782. output stream.
  2783. </remarks>
  2784. </member>
  2785. <member name="M:log4net.Appender.ColoredConsoleAppender.AddMapping(log4net.Appender.ColoredConsoleAppender.LevelColors)">
  2786. <summary>
  2787. Add a mapping of level to color - done by the config file
  2788. </summary>
  2789. <param name="mapping">The mapping to add</param>
  2790. <remarks>
  2791. <para>
  2792. Add a <see cref="T:log4net.Appender.ColoredConsoleAppender.LevelColors"/> mapping to this appender.
  2793. Each mapping defines the foreground and background colors
  2794. for a level.
  2795. </para>
  2796. </remarks>
  2797. </member>
  2798. <member name="M:log4net.Appender.ColoredConsoleAppender.Append(log4net.Core.LoggingEvent)">
  2799. <summary>
  2800. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  2801. </summary>
  2802. <param name="loggingEvent">The event to log.</param>
  2803. <remarks>
  2804. <para>
  2805. Writes the event to the console.
  2806. </para>
  2807. <para>
  2808. The format of the output will depend on the appender's layout.
  2809. </para>
  2810. </remarks>
  2811. </member>
  2812. <member name="M:log4net.Appender.ColoredConsoleAppender.ActivateOptions">
  2813. <summary>
  2814. Initialize the options for this appender
  2815. </summary>
  2816. <remarks>
  2817. <para>
  2818. Initialize the level to color mappings set on this appender.
  2819. </para>
  2820. </remarks>
  2821. </member>
  2822. <member name="F:log4net.Appender.ColoredConsoleAppender.m_writeToErrorStream">
  2823. <summary>
  2824. Flag to write output to the error stream rather than the standard output stream
  2825. </summary>
  2826. </member>
  2827. <member name="F:log4net.Appender.ColoredConsoleAppender.m_levelMapping">
  2828. <summary>
  2829. Mapping from level object to color value
  2830. </summary>
  2831. </member>
  2832. <member name="F:log4net.Appender.ColoredConsoleAppender.m_consoleOutputWriter">
  2833. <summary>
  2834. The console output stream writer to write to
  2835. </summary>
  2836. <remarks>
  2837. <para>
  2838. This writer is not thread safe.
  2839. </para>
  2840. </remarks>
  2841. </member>
  2842. <member name="P:log4net.Appender.ColoredConsoleAppender.Target">
  2843. <summary>
  2844. Target is the value of the console output stream.
  2845. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  2846. </summary>
  2847. <value>
  2848. Target is the value of the console output stream.
  2849. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  2850. </value>
  2851. <remarks>
  2852. <para>
  2853. Target is the value of the console output stream.
  2854. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  2855. </para>
  2856. </remarks>
  2857. </member>
  2858. <member name="P:log4net.Appender.ColoredConsoleAppender.RequiresLayout">
  2859. <summary>
  2860. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  2861. </summary>
  2862. <value><c>true</c></value>
  2863. <remarks>
  2864. <para>
  2865. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  2866. </para>
  2867. </remarks>
  2868. </member>
  2869. <member name="T:log4net.Appender.ColoredConsoleAppender.Colors">
  2870. <summary>
  2871. The enum of possible color values for use with the color mapping method
  2872. </summary>
  2873. <remarks>
  2874. <para>
  2875. The following flags can be combined together to
  2876. form the colors.
  2877. </para>
  2878. </remarks>
  2879. <seealso cref="T:log4net.Appender.ColoredConsoleAppender"/>
  2880. </member>
  2881. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Blue">
  2882. <summary>
  2883. color is blue
  2884. </summary>
  2885. </member>
  2886. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Green">
  2887. <summary>
  2888. color is green
  2889. </summary>
  2890. </member>
  2891. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Red">
  2892. <summary>
  2893. color is red
  2894. </summary>
  2895. </member>
  2896. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.White">
  2897. <summary>
  2898. color is white
  2899. </summary>
  2900. </member>
  2901. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Yellow">
  2902. <summary>
  2903. color is yellow
  2904. </summary>
  2905. </member>
  2906. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Purple">
  2907. <summary>
  2908. color is purple
  2909. </summary>
  2910. </member>
  2911. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Cyan">
  2912. <summary>
  2913. color is cyan
  2914. </summary>
  2915. </member>
  2916. <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.HighIntensity">
  2917. <summary>
  2918. color is intensified
  2919. </summary>
  2920. </member>
  2921. <member name="T:log4net.Appender.ColoredConsoleAppender.LevelColors">
  2922. <summary>
  2923. A class to act as a mapping between the level that a logging call is made at and
  2924. the color it should be displayed as.
  2925. </summary>
  2926. <remarks>
  2927. <para>
  2928. Defines the mapping between a level and the color it should be displayed in.
  2929. </para>
  2930. </remarks>
  2931. </member>
  2932. <member name="M:log4net.Appender.ColoredConsoleAppender.LevelColors.ActivateOptions">
  2933. <summary>
  2934. Initialize the options for the object
  2935. </summary>
  2936. <remarks>
  2937. <para>
  2938. Combine the <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor"/> together.
  2939. </para>
  2940. </remarks>
  2941. </member>
  2942. <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor">
  2943. <summary>
  2944. The mapped foreground color for the specified level
  2945. </summary>
  2946. <remarks>
  2947. <para>
  2948. Required property.
  2949. The mapped foreground color for the specified level.
  2950. </para>
  2951. </remarks>
  2952. </member>
  2953. <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor">
  2954. <summary>
  2955. The mapped background color for the specified level
  2956. </summary>
  2957. <remarks>
  2958. <para>
  2959. Required property.
  2960. The mapped background color for the specified level.
  2961. </para>
  2962. </remarks>
  2963. </member>
  2964. <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.CombinedColor">
  2965. <summary>
  2966. The combined <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor"/> suitable for
  2967. setting the console color.
  2968. </summary>
  2969. </member>
  2970. <member name="T:log4net.Appender.ConsoleAppender">
  2971. <summary>
  2972. Appends logging events to the console.
  2973. </summary>
  2974. <remarks>
  2975. <para>
  2976. ConsoleAppender appends log events to the standard output stream
  2977. or the error output stream using a layout specified by the
  2978. user.
  2979. </para>
  2980. <para>
  2981. By default, all output is written to the console's standard output stream.
  2982. The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> property can be set to direct the output to the
  2983. error stream.
  2984. </para>
  2985. <para>
  2986. NOTE: This appender writes each message to the <c>System.Console.Out</c> or
  2987. <c>System.Console.Error</c> that is set at the time the event is appended.
  2988. Therefore it is possible to programmatically redirect the output of this appender
  2989. (for example NUnit does this to capture program output). While this is the desired
  2990. behavior of this appender it may have security implications in your application.
  2991. </para>
  2992. </remarks>
  2993. <author>Nicko Cadell</author>
  2994. <author>Gert Driesen</author>
  2995. </member>
  2996. <member name="F:log4net.Appender.ConsoleAppender.ConsoleOut">
  2997. <summary>
  2998. The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console
  2999. standard output stream.
  3000. </summary>
  3001. <remarks>
  3002. <para>
  3003. The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console
  3004. standard output stream.
  3005. </para>
  3006. </remarks>
  3007. </member>
  3008. <member name="F:log4net.Appender.ConsoleAppender.ConsoleError">
  3009. <summary>
  3010. The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console
  3011. standard error output stream.
  3012. </summary>
  3013. <remarks>
  3014. <para>
  3015. The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console
  3016. standard error output stream.
  3017. </para>
  3018. </remarks>
  3019. </member>
  3020. <member name="M:log4net.Appender.ConsoleAppender.#ctor">
  3021. <summary>
  3022. Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class.
  3023. </summary>
  3024. <remarks>
  3025. The instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class is set up to write
  3026. to the standard output stream.
  3027. </remarks>
  3028. </member>
  3029. <member name="M:log4net.Appender.ConsoleAppender.#ctor(log4net.Layout.ILayout)">
  3030. <summary>
  3031. Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class
  3032. with the specified layout.
  3033. </summary>
  3034. <param name="layout">the layout to use for this appender</param>
  3035. <remarks>
  3036. The instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class is set up to write
  3037. to the standard output stream.
  3038. </remarks>
  3039. </member>
  3040. <member name="M:log4net.Appender.ConsoleAppender.#ctor(log4net.Layout.ILayout,System.Boolean)">
  3041. <summary>
  3042. Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class
  3043. with the specified layout.
  3044. </summary>
  3045. <param name="layout">the layout to use for this appender</param>
  3046. <param name="writeToErrorStream">flag set to <c>true</c> to write to the console error stream</param>
  3047. <remarks>
  3048. When <paramref name="writeToErrorStream"/> is set to <c>true</c>, output is written to
  3049. the standard error output stream. Otherwise, output is written to the standard
  3050. output stream.
  3051. </remarks>
  3052. </member>
  3053. <member name="M:log4net.Appender.ConsoleAppender.Append(log4net.Core.LoggingEvent)">
  3054. <summary>
  3055. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  3056. </summary>
  3057. <param name="loggingEvent">The event to log.</param>
  3058. <remarks>
  3059. <para>
  3060. Writes the event to the console.
  3061. </para>
  3062. <para>
  3063. The format of the output will depend on the appender's layout.
  3064. </para>
  3065. </remarks>
  3066. </member>
  3067. <member name="P:log4net.Appender.ConsoleAppender.Target">
  3068. <summary>
  3069. Target is the value of the console output stream.
  3070. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  3071. </summary>
  3072. <value>
  3073. Target is the value of the console output stream.
  3074. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  3075. </value>
  3076. <remarks>
  3077. <para>
  3078. Target is the value of the console output stream.
  3079. This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.
  3080. </para>
  3081. </remarks>
  3082. </member>
  3083. <member name="P:log4net.Appender.ConsoleAppender.RequiresLayout">
  3084. <summary>
  3085. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3086. </summary>
  3087. <value><c>true</c></value>
  3088. <remarks>
  3089. <para>
  3090. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3091. </para>
  3092. </remarks>
  3093. </member>
  3094. <member name="T:log4net.Appender.DebugAppender">
  3095. <summary>
  3096. Appends log events to the <see cref="T:System.Diagnostics.Debug"/> system.
  3097. </summary>
  3098. <remarks>
  3099. <para>
  3100. The application configuration file can be used to control what listeners
  3101. are actually used. See the MSDN documentation for the
  3102. <see cref="T:System.Diagnostics.Debug"/> class for details on configuring the
  3103. debug system.
  3104. </para>
  3105. <para>
  3106. Events are written using the <see cref="M:System.Diagnostics.Debug.Write(System.String,System.String)"/>
  3107. method. The event's logger name is passed as the value for the category name to the Write method.
  3108. </para>
  3109. </remarks>
  3110. <author>Nicko Cadell</author>
  3111. </member>
  3112. <member name="M:log4net.Appender.DebugAppender.#ctor">
  3113. <summary>
  3114. Initializes a new instance of the <see cref="T:log4net.Appender.DebugAppender"/>.
  3115. </summary>
  3116. <remarks>
  3117. <para>
  3118. Default constructor.
  3119. </para>
  3120. </remarks>
  3121. </member>
  3122. <member name="M:log4net.Appender.DebugAppender.#ctor(log4net.Layout.ILayout)">
  3123. <summary>
  3124. Initializes a new instance of the <see cref="T:log4net.Appender.DebugAppender"/>
  3125. with a specified layout.
  3126. </summary>
  3127. <param name="layout">The layout to use with this appender.</param>
  3128. <remarks>
  3129. <para>
  3130. Obsolete constructor.
  3131. </para>
  3132. </remarks>
  3133. </member>
  3134. <member name="M:log4net.Appender.DebugAppender.Append(log4net.Core.LoggingEvent)">
  3135. <summary>
  3136. Writes the logging event to the <see cref="T:System.Diagnostics.Debug"/> system.
  3137. </summary>
  3138. <param name="loggingEvent">The event to log.</param>
  3139. <remarks>
  3140. <para>
  3141. Writes the logging event to the <see cref="T:System.Diagnostics.Debug"/> system.
  3142. If <see cref="P:log4net.Appender.DebugAppender.ImmediateFlush"/> is <c>true</c> then the <see cref="M:System.Diagnostics.Debug.Flush"/>
  3143. is called.
  3144. </para>
  3145. </remarks>
  3146. </member>
  3147. <member name="F:log4net.Appender.DebugAppender.m_immediateFlush">
  3148. <summary>
  3149. Immediate flush means that the underlying writer or output stream
  3150. will be flushed at the end of each append operation.
  3151. </summary>
  3152. <remarks>
  3153. <para>
  3154. Immediate flush is slower but ensures that each append request is
  3155. actually written. If <see cref="P:log4net.Appender.DebugAppender.ImmediateFlush"/> is set to
  3156. <c>false</c>, then there is a good chance that the last few
  3157. logs events are not actually written to persistent media if and
  3158. when the application crashes.
  3159. </para>
  3160. <para>
  3161. The default value is <c>true</c>.</para>
  3162. </remarks>
  3163. </member>
  3164. <member name="P:log4net.Appender.DebugAppender.ImmediateFlush">
  3165. <summary>
  3166. Gets or sets a value that indicates whether the appender will
  3167. flush at the end of each write.
  3168. </summary>
  3169. <remarks>
  3170. <para>The default behavior is to flush at the end of each
  3171. write. If the option is set to<c>false</c>, then the underlying
  3172. stream can defer writing to physical medium to a later time.
  3173. </para>
  3174. <para>
  3175. Avoiding the flush operation at the end of each append results
  3176. in a performance gain of 10 to 20 percent. However, there is safety
  3177. trade-off involved in skipping flushing. Indeed, when flushing is
  3178. skipped, then it is likely that the last few log events will not
  3179. be recorded on disk when the application exits. This is a high
  3180. price to pay even for a 20% performance gain.
  3181. </para>
  3182. </remarks>
  3183. </member>
  3184. <member name="P:log4net.Appender.DebugAppender.RequiresLayout">
  3185. <summary>
  3186. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3187. </summary>
  3188. <value><c>true</c></value>
  3189. <remarks>
  3190. <para>
  3191. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3192. </para>
  3193. </remarks>
  3194. </member>
  3195. <member name="T:log4net.Appender.EventLogAppender">
  3196. <summary>
  3197. Writes events to the system event log.
  3198. </summary>
  3199. <remarks>
  3200. <para>
  3201. The <c>EventID</c> of the event log entry can be
  3202. set using the <c>EventLogEventID</c> property (<see cref="P:log4net.Core.LoggingEvent.Properties"/>)
  3203. on the <see cref="T:log4net.Core.LoggingEvent"/>.
  3204. </para>
  3205. <para>
  3206. There is a limit of 32K characters for an event log message
  3207. </para>
  3208. <para>
  3209. When configuring the EventLogAppender a mapping can be
  3210. specified to map a logging level to an event log entry type. For example:
  3211. </para>
  3212. <code lang="XML">
  3213. &lt;mapping&gt;
  3214. &lt;level value="ERROR" /&gt;
  3215. &lt;eventLogEntryType value="Error" /&gt;
  3216. &lt;/mapping&gt;
  3217. &lt;mapping&gt;
  3218. &lt;level value="DEBUG" /&gt;
  3219. &lt;eventLogEntryType value="Information" /&gt;
  3220. &lt;/mapping&gt;
  3221. </code>
  3222. <para>
  3223. The Level is the standard log4net logging level and eventLogEntryType can be any value
  3224. from the <see cref="T:System.Diagnostics.EventLogEntryType"/> enum, i.e.:
  3225. <list type="bullet">
  3226. <item><term>Error</term><description>an error event</description></item>
  3227. <item><term>Warning</term><description>a warning event</description></item>
  3228. <item><term>Information</term><description>an informational event</description></item>
  3229. </list>
  3230. </para>
  3231. </remarks>
  3232. <author>Aspi Havewala</author>
  3233. <author>Douglas de la Torre</author>
  3234. <author>Nicko Cadell</author>
  3235. <author>Gert Driesen</author>
  3236. <author>Thomas Voss</author>
  3237. </member>
  3238. <member name="M:log4net.Appender.EventLogAppender.#ctor">
  3239. <summary>
  3240. Initializes a new instance of the <see cref="T:log4net.Appender.EventLogAppender"/> class.
  3241. </summary>
  3242. <remarks>
  3243. <para>
  3244. Default constructor.
  3245. </para>
  3246. </remarks>
  3247. </member>
  3248. <member name="M:log4net.Appender.EventLogAppender.#ctor(log4net.Layout.ILayout)">
  3249. <summary>
  3250. Initializes a new instance of the <see cref="T:log4net.Appender.EventLogAppender"/> class
  3251. with the specified <see cref="T:log4net.Layout.ILayout"/>.
  3252. </summary>
  3253. <param name="layout">The <see cref="T:log4net.Layout.ILayout"/> to use with this appender.</param>
  3254. <remarks>
  3255. <para>
  3256. Obsolete constructor.
  3257. </para>
  3258. </remarks>
  3259. </member>
  3260. <member name="M:log4net.Appender.EventLogAppender.AddMapping(log4net.Appender.EventLogAppender.Level2EventLogEntryType)">
  3261. <summary>
  3262. Add a mapping of level to <see cref="T:System.Diagnostics.EventLogEntryType"/> - done by the config file
  3263. </summary>
  3264. <param name="mapping">The mapping to add</param>
  3265. <remarks>
  3266. <para>
  3267. Add a <see cref="T:log4net.Appender.EventLogAppender.Level2EventLogEntryType"/> mapping to this appender.
  3268. Each mapping defines the event log entry type for a level.
  3269. </para>
  3270. </remarks>
  3271. </member>
  3272. <member name="M:log4net.Appender.EventLogAppender.ActivateOptions">
  3273. <summary>
  3274. Initialize the appender based on the options set
  3275. </summary>
  3276. <remarks>
  3277. <para>
  3278. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  3279. activation scheme. The <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> method must
  3280. be called on this object after the configuration properties have
  3281. been set. Until <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> is called this
  3282. object is in an undefined state and must not be used.
  3283. </para>
  3284. <para>
  3285. If any of the configuration properties are modified then
  3286. <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> must be called again.
  3287. </para>
  3288. </remarks>
  3289. </member>
  3290. <member name="M:log4net.Appender.EventLogAppender.CreateEventSource(System.String,System.String,System.String)">
  3291. <summary>
  3292. Create an event log source
  3293. </summary>
  3294. <remarks>
  3295. Uses different API calls under NET_2_0
  3296. </remarks>
  3297. </member>
  3298. <member name="M:log4net.Appender.EventLogAppender.Append(log4net.Core.LoggingEvent)">
  3299. <summary>
  3300. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>
  3301. method.
  3302. </summary>
  3303. <param name="loggingEvent">the event to log</param>
  3304. <remarks>
  3305. <para>Writes the event to the system event log using the
  3306. <see cref="P:log4net.Appender.EventLogAppender.ApplicationName"/>.</para>
  3307. <para>If the event has an <c>EventID</c> property (see <see cref="P:log4net.Core.LoggingEvent.Properties"/>)
  3308. set then this integer will be used as the event log event id.</para>
  3309. <para>
  3310. There is a limit of 32K characters for an event log message
  3311. </para>
  3312. </remarks>
  3313. </member>
  3314. <member name="M:log4net.Appender.EventLogAppender.GetEntryType(log4net.Core.Level)">
  3315. <summary>
  3316. Get the equivalent <see cref="T:System.Diagnostics.EventLogEntryType"/> for a <see cref="T:log4net.Core.Level"/> <paramref name="p"/>
  3317. </summary>
  3318. <param name="level">the Level to convert to an EventLogEntryType</param>
  3319. <returns>The equivalent <see cref="T:System.Diagnostics.EventLogEntryType"/> for a <see cref="T:log4net.Core.Level"/> <paramref name="p"/></returns>
  3320. <remarks>
  3321. Because there are fewer applicable <see cref="T:System.Diagnostics.EventLogEntryType"/>
  3322. values to use in logging levels than there are in the
  3323. <see cref="T:log4net.Core.Level"/> this is a one way mapping. There is
  3324. a loss of information during the conversion.
  3325. </remarks>
  3326. </member>
  3327. <member name="F:log4net.Appender.EventLogAppender.m_logName">
  3328. <summary>
  3329. The log name is the section in the event logs where the messages
  3330. are stored.
  3331. </summary>
  3332. </member>
  3333. <member name="F:log4net.Appender.EventLogAppender.m_applicationName">
  3334. <summary>
  3335. Name of the application to use when logging. This appears in the
  3336. application column of the event log named by <see cref="F:log4net.Appender.EventLogAppender.m_logName"/>.
  3337. </summary>
  3338. </member>
  3339. <member name="F:log4net.Appender.EventLogAppender.m_machineName">
  3340. <summary>
  3341. The name of the machine which holds the event log. This is
  3342. currently only allowed to be '.' i.e. the current machine.
  3343. </summary>
  3344. </member>
  3345. <member name="F:log4net.Appender.EventLogAppender.m_levelMapping">
  3346. <summary>
  3347. Mapping from level object to EventLogEntryType
  3348. </summary>
  3349. </member>
  3350. <member name="F:log4net.Appender.EventLogAppender.m_securityContext">
  3351. <summary>
  3352. The security context to use for privileged calls
  3353. </summary>
  3354. </member>
  3355. <member name="P:log4net.Appender.EventLogAppender.LogName">
  3356. <summary>
  3357. The name of the log where messages will be stored.
  3358. </summary>
  3359. <value>
  3360. The string name of the log where messages will be stored.
  3361. </value>
  3362. <remarks>
  3363. <para>This is the name of the log as it appears in the Event Viewer
  3364. tree. The default value is to log into the <c>Application</c>
  3365. log, this is where most applications write their events. However
  3366. if you need a separate log for your application (or applications)
  3367. then you should set the <see cref="P:log4net.Appender.EventLogAppender.LogName"/> appropriately.</para>
  3368. <para>This should not be used to distinguish your event log messages
  3369. from those of other applications, the <see cref="P:log4net.Appender.EventLogAppender.ApplicationName"/>
  3370. property should be used to distinguish events. This property should be
  3371. used to group together events into a single log.
  3372. </para>
  3373. </remarks>
  3374. </member>
  3375. <member name="P:log4net.Appender.EventLogAppender.ApplicationName">
  3376. <summary>
  3377. Property used to set the Application name. This appears in the
  3378. event logs when logging.
  3379. </summary>
  3380. <value>
  3381. The string used to distinguish events from different sources.
  3382. </value>
  3383. <remarks>
  3384. Sets the event log source property.
  3385. </remarks>
  3386. </member>
  3387. <member name="P:log4net.Appender.EventLogAppender.MachineName">
  3388. <summary>
  3389. This property is used to return the name of the computer to use
  3390. when accessing the event logs. Currently, this is the current
  3391. computer, denoted by a dot "."
  3392. </summary>
  3393. <value>
  3394. The string name of the machine holding the event log that
  3395. will be logged into.
  3396. </value>
  3397. <remarks>
  3398. This property cannot be changed. It is currently set to '.'
  3399. i.e. the local machine. This may be changed in future.
  3400. </remarks>
  3401. </member>
  3402. <member name="P:log4net.Appender.EventLogAppender.SecurityContext">
  3403. <summary>
  3404. Gets or sets the <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> used to write to the EventLog.
  3405. </summary>
  3406. <value>
  3407. The <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> used to write to the EventLog.
  3408. </value>
  3409. <remarks>
  3410. <para>
  3411. The system security context used to write to the EventLog.
  3412. </para>
  3413. <para>
  3414. Unless a <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> specified here for this appender
  3415. the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the
  3416. security context to use. The default behavior is to use the security context
  3417. of the current thread.
  3418. </para>
  3419. </remarks>
  3420. </member>
  3421. <member name="P:log4net.Appender.EventLogAppender.RequiresLayout">
  3422. <summary>
  3423. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3424. </summary>
  3425. <value><c>true</c></value>
  3426. <remarks>
  3427. <para>
  3428. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3429. </para>
  3430. </remarks>
  3431. </member>
  3432. <member name="T:log4net.Appender.EventLogAppender.Level2EventLogEntryType">
  3433. <summary>
  3434. A class to act as a mapping between the level that a logging call is made at and
  3435. the color it should be displayed as.
  3436. </summary>
  3437. <remarks>
  3438. <para>
  3439. Defines the mapping between a level and its event log entry type.
  3440. </para>
  3441. </remarks>
  3442. </member>
  3443. <member name="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType">
  3444. <summary>
  3445. The <see cref="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType"/> for this entry
  3446. </summary>
  3447. <remarks>
  3448. <para>
  3449. Required property.
  3450. The <see cref="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType"/> for this entry
  3451. </para>
  3452. </remarks>
  3453. </member>
  3454. <member name="T:log4net.Appender.FileAppender">
  3455. <summary>
  3456. Appends logging events to a file.
  3457. </summary>
  3458. <remarks>
  3459. <para>
  3460. Logging events are sent to the file specified by
  3461. the <see cref="P:log4net.Appender.FileAppender.File"/> property.
  3462. </para>
  3463. <para>
  3464. The file can be opened in either append or overwrite mode
  3465. by specifying the <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property.
  3466. If the file path is relative it is taken as relative from
  3467. the application base directory. The file encoding can be
  3468. specified by setting the <see cref="P:log4net.Appender.FileAppender.Encoding"/> property.
  3469. </para>
  3470. <para>
  3471. The layout's <see cref="P:log4net.Layout.ILayout.Header"/> and <see cref="P:log4net.Layout.ILayout.Footer"/>
  3472. values will be written each time the file is opened and closed
  3473. respectively. If the <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property is <see langword="true"/>
  3474. then the file may contain multiple copies of the header and footer.
  3475. </para>
  3476. <para>
  3477. This appender will first try to open the file for writing when <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/>
  3478. is called. This will typically be during configuration.
  3479. If the file cannot be opened for writing the appender will attempt
  3480. to open the file again each time a message is logged to the appender.
  3481. If the file cannot be opened for writing when a message is logged then
  3482. the message will be discarded by this appender.
  3483. </para>
  3484. <para>
  3485. The <see cref="T:log4net.Appender.FileAppender"/> supports pluggable file locking models via
  3486. the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> property.
  3487. The default behavior, implemented by <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/>
  3488. is to obtain an exclusive write lock on the file until this appender is closed.
  3489. The alternative model, <see cref="T:log4net.Appender.FileAppender.MinimalLock"/>, only holds a
  3490. write lock while the appender is writing a logging event.
  3491. </para>
  3492. </remarks>
  3493. <author>Nicko Cadell</author>
  3494. <author>Gert Driesen</author>
  3495. <author>Rodrigo B. de Oliveira</author>
  3496. <author>Douglas de la Torre</author>
  3497. <author>Niall Daley</author>
  3498. </member>
  3499. <member name="T:log4net.Appender.TextWriterAppender">
  3500. <summary>
  3501. Sends logging events to a <see cref="T:System.IO.TextWriter"/>.
  3502. </summary>
  3503. <remarks>
  3504. <para>
  3505. An Appender that writes to a <see cref="T:System.IO.TextWriter"/>.
  3506. </para>
  3507. <para>
  3508. This appender may be used stand alone if initialized with an appropriate
  3509. writer, however it is typically used as a base class for an appender that
  3510. can open a <see cref="T:System.IO.TextWriter"/> to write to.
  3511. </para>
  3512. </remarks>
  3513. <author>Nicko Cadell</author>
  3514. <author>Gert Driesen</author>
  3515. <author>Douglas de la Torre</author>
  3516. </member>
  3517. <member name="M:log4net.Appender.TextWriterAppender.#ctor">
  3518. <summary>
  3519. Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class.
  3520. </summary>
  3521. <remarks>
  3522. <para>
  3523. Default constructor.
  3524. </para>
  3525. </remarks>
  3526. </member>
  3527. <member name="M:log4net.Appender.TextWriterAppender.#ctor(log4net.Layout.ILayout,System.IO.Stream)">
  3528. <summary>
  3529. Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class and
  3530. sets the output destination to a new <see cref="T:System.IO.StreamWriter"/> initialized
  3531. with the specified <see cref="T:System.IO.Stream"/>.
  3532. </summary>
  3533. <param name="layout">The layout to use with this appender.</param>
  3534. <param name="os">The <see cref="T:System.IO.Stream"/> to output to.</param>
  3535. <remarks>
  3536. <para>
  3537. Obsolete constructor.
  3538. </para>
  3539. </remarks>
  3540. </member>
  3541. <member name="M:log4net.Appender.TextWriterAppender.#ctor(log4net.Layout.ILayout,System.IO.TextWriter)">
  3542. <summary>
  3543. Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class and sets
  3544. the output destination to the specified <see cref="T:System.IO.StreamWriter"/>.
  3545. </summary>
  3546. <param name="layout">The layout to use with this appender</param>
  3547. <param name="writer">The <see cref="T:System.IO.TextWriter"/> to output to</param>
  3548. <remarks>
  3549. The <see cref="T:System.IO.TextWriter"/> must have been previously opened.
  3550. </remarks>
  3551. <remarks>
  3552. <para>
  3553. Obsolete constructor.
  3554. </para>
  3555. </remarks>
  3556. </member>
  3557. <member name="M:log4net.Appender.TextWriterAppender.PreAppendCheck">
  3558. <summary>
  3559. This method determines if there is a sense in attempting to append.
  3560. </summary>
  3561. <remarks>
  3562. <para>
  3563. This method checked if an output target has been set and if a
  3564. layout has been set.
  3565. </para>
  3566. </remarks>
  3567. <returns><c>false</c> if any of the preconditions fail.</returns>
  3568. </member>
  3569. <member name="M:log4net.Appender.TextWriterAppender.Append(log4net.Core.LoggingEvent)">
  3570. <summary>
  3571. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>
  3572. method.
  3573. </summary>
  3574. <param name="loggingEvent">The event to log.</param>
  3575. <remarks>
  3576. <para>
  3577. Writes a log statement to the output stream if the output stream exists
  3578. and is writable.
  3579. </para>
  3580. <para>
  3581. The format of the output will depend on the appender's layout.
  3582. </para>
  3583. </remarks>
  3584. </member>
  3585. <member name="M:log4net.Appender.TextWriterAppender.Append(log4net.Core.LoggingEvent[])">
  3586. <summary>
  3587. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])"/>
  3588. method.
  3589. </summary>
  3590. <param name="loggingEvents">The array of events to log.</param>
  3591. <remarks>
  3592. <para>
  3593. This method writes all the bulk logged events to the output writer
  3594. before flushing the stream.
  3595. </para>
  3596. </remarks>
  3597. </member>
  3598. <member name="M:log4net.Appender.TextWriterAppender.OnClose">
  3599. <summary>
  3600. Close this appender instance. The underlying stream or writer is also closed.
  3601. </summary>
  3602. <remarks>
  3603. Closed appenders cannot be reused.
  3604. </remarks>
  3605. </member>
  3606. <member name="M:log4net.Appender.TextWriterAppender.WriteFooterAndCloseWriter">
  3607. <summary>
  3608. Writes the footer and closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3609. </summary>
  3610. <remarks>
  3611. <para>
  3612. Writes the footer and closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3613. </para>
  3614. </remarks>
  3615. </member>
  3616. <member name="M:log4net.Appender.TextWriterAppender.CloseWriter">
  3617. <summary>
  3618. Closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3619. </summary>
  3620. <remarks>
  3621. <para>
  3622. Closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3623. </para>
  3624. </remarks>
  3625. </member>
  3626. <member name="M:log4net.Appender.TextWriterAppender.Reset">
  3627. <summary>
  3628. Clears internal references to the underlying <see cref="T:System.IO.TextWriter"/>
  3629. and other variables.
  3630. </summary>
  3631. <remarks>
  3632. <para>
  3633. Subclasses can override this method for an alternate closing behavior.
  3634. </para>
  3635. </remarks>
  3636. </member>
  3637. <member name="M:log4net.Appender.TextWriterAppender.WriteFooter">
  3638. <summary>
  3639. Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.
  3640. </summary>
  3641. <remarks>
  3642. <para>
  3643. Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.
  3644. </para>
  3645. </remarks>
  3646. </member>
  3647. <member name="M:log4net.Appender.TextWriterAppender.WriteHeader">
  3648. <summary>
  3649. Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.
  3650. </summary>
  3651. <remarks>
  3652. <para>
  3653. Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.
  3654. </para>
  3655. </remarks>
  3656. </member>
  3657. <member name="M:log4net.Appender.TextWriterAppender.PrepareWriter">
  3658. <summary>
  3659. Called to allow a subclass to lazily initialize the writer
  3660. </summary>
  3661. <remarks>
  3662. <para>
  3663. This method is called when an event is logged and the <see cref="P:log4net.Appender.TextWriterAppender.Writer"/> or
  3664. <see cref="P:log4net.Appender.TextWriterAppender.QuietWriter"/> have not been set. This allows a subclass to
  3665. attempt to initialize the writer multiple times.
  3666. </para>
  3667. </remarks>
  3668. </member>
  3669. <member name="F:log4net.Appender.TextWriterAppender.m_qtw">
  3670. <summary>
  3671. This is the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events
  3672. will be written to.
  3673. </summary>
  3674. </member>
  3675. <member name="F:log4net.Appender.TextWriterAppender.m_immediateFlush">
  3676. <summary>
  3677. Immediate flush means that the underlying <see cref="T:System.IO.TextWriter"/>
  3678. or output stream will be flushed at the end of each append operation.
  3679. </summary>
  3680. <remarks>
  3681. <para>
  3682. Immediate flush is slower but ensures that each append request is
  3683. actually written. If <see cref="P:log4net.Appender.TextWriterAppender.ImmediateFlush"/> is set to
  3684. <c>false</c>, then there is a good chance that the last few
  3685. logging events are not actually persisted if and when the application
  3686. crashes.
  3687. </para>
  3688. <para>
  3689. The default value is <c>true</c>.
  3690. </para>
  3691. </remarks>
  3692. </member>
  3693. <member name="P:log4net.Appender.TextWriterAppender.ImmediateFlush">
  3694. <summary>
  3695. Gets or set whether the appender will flush at the end
  3696. of each append operation.
  3697. </summary>
  3698. <value>
  3699. <para>
  3700. The default behavior is to flush at the end of each
  3701. append operation.
  3702. </para>
  3703. <para>
  3704. If this option is set to <c>false</c>, then the underlying
  3705. stream can defer persisting the logging event to a later
  3706. time.
  3707. </para>
  3708. </value>
  3709. <remarks>
  3710. Avoiding the flush operation at the end of each append results in
  3711. a performance gain of 10 to 20 percent. However, there is safety
  3712. trade-off involved in skipping flushing. Indeed, when flushing is
  3713. skipped, then it is likely that the last few log events will not
  3714. be recorded on disk when the application exits. This is a high
  3715. price to pay even for a 20% performance gain.
  3716. </remarks>
  3717. </member>
  3718. <member name="P:log4net.Appender.TextWriterAppender.Writer">
  3719. <summary>
  3720. Sets the <see cref="T:System.IO.TextWriter"/> where the log output will go.
  3721. </summary>
  3722. <remarks>
  3723. <para>
  3724. The specified <see cref="T:System.IO.TextWriter"/> must be open and writable.
  3725. </para>
  3726. <para>
  3727. The <see cref="T:System.IO.TextWriter"/> will be closed when the appender
  3728. instance is closed.
  3729. </para>
  3730. <para>
  3731. <b>Note:</b> Logging to an unopened <see cref="T:System.IO.TextWriter"/> will fail.
  3732. </para>
  3733. </remarks>
  3734. </member>
  3735. <member name="P:log4net.Appender.TextWriterAppender.ErrorHandler">
  3736. <summary>
  3737. Gets or set the <see cref="T:log4net.Core.IErrorHandler"/> and the underlying
  3738. <see cref="T:log4net.Util.QuietTextWriter"/>, if any, for this appender.
  3739. </summary>
  3740. <value>
  3741. The <see cref="T:log4net.Core.IErrorHandler"/> for this appender.
  3742. </value>
  3743. </member>
  3744. <member name="P:log4net.Appender.TextWriterAppender.RequiresLayout">
  3745. <summary>
  3746. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3747. </summary>
  3748. <value><c>true</c></value>
  3749. <remarks>
  3750. <para>
  3751. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  3752. </para>
  3753. </remarks>
  3754. </member>
  3755. <member name="P:log4net.Appender.TextWriterAppender.QuietWriter">
  3756. <summary>
  3757. Gets or sets the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events
  3758. will be written to.
  3759. </summary>
  3760. <value>
  3761. The <see cref="T:log4net.Util.QuietTextWriter"/> where logging events are written.
  3762. </value>
  3763. <remarks>
  3764. <para>
  3765. This is the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events
  3766. will be written to.
  3767. </para>
  3768. </remarks>
  3769. </member>
  3770. <member name="M:log4net.Appender.FileAppender.#ctor">
  3771. <summary>
  3772. Default constructor
  3773. </summary>
  3774. <remarks>
  3775. <para>
  3776. Default constructor
  3777. </para>
  3778. </remarks>
  3779. </member>
  3780. <member name="M:log4net.Appender.FileAppender.#ctor(log4net.Layout.ILayout,System.String,System.Boolean)">
  3781. <summary>
  3782. Construct a new appender using the layout, file and append mode.
  3783. </summary>
  3784. <param name="layout">the layout to use with this appender</param>
  3785. <param name="filename">the full path to the file to write to</param>
  3786. <param name="append">flag to indicate if the file should be appended to</param>
  3787. <remarks>
  3788. <para>
  3789. Obsolete constructor.
  3790. </para>
  3791. </remarks>
  3792. </member>
  3793. <member name="M:log4net.Appender.FileAppender.#ctor(log4net.Layout.ILayout,System.String)">
  3794. <summary>
  3795. Construct a new appender using the layout and file specified.
  3796. The file will be appended to.
  3797. </summary>
  3798. <param name="layout">the layout to use with this appender</param>
  3799. <param name="filename">the full path to the file to write to</param>
  3800. <remarks>
  3801. <para>
  3802. Obsolete constructor.
  3803. </para>
  3804. </remarks>
  3805. </member>
  3806. <member name="M:log4net.Appender.FileAppender.ActivateOptions">
  3807. <summary>
  3808. Activate the options on the file appender.
  3809. </summary>
  3810. <remarks>
  3811. <para>
  3812. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  3813. activation scheme. The <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> method must
  3814. be called on this object after the configuration properties have
  3815. been set. Until <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> is called this
  3816. object is in an undefined state and must not be used.
  3817. </para>
  3818. <para>
  3819. If any of the configuration properties are modified then
  3820. <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> must be called again.
  3821. </para>
  3822. <para>
  3823. This will cause the file to be opened.
  3824. </para>
  3825. </remarks>
  3826. </member>
  3827. <member name="M:log4net.Appender.FileAppender.Reset">
  3828. <summary>
  3829. Closes any previously opened file and calls the parent's <see cref="M:log4net.Appender.TextWriterAppender.Reset"/>.
  3830. </summary>
  3831. <remarks>
  3832. <para>
  3833. Resets the filename and the file stream.
  3834. </para>
  3835. </remarks>
  3836. </member>
  3837. <member name="M:log4net.Appender.FileAppender.PrepareWriter">
  3838. <summary>
  3839. Called to initialize the file writer
  3840. </summary>
  3841. <remarks>
  3842. <para>
  3843. Will be called for each logged message until the file is
  3844. successfully opened.
  3845. </para>
  3846. </remarks>
  3847. </member>
  3848. <member name="M:log4net.Appender.FileAppender.Append(log4net.Core.LoggingEvent)">
  3849. <summary>
  3850. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>
  3851. method.
  3852. </summary>
  3853. <param name="loggingEvent">The event to log.</param>
  3854. <remarks>
  3855. <para>
  3856. Writes a log statement to the output stream if the output stream exists
  3857. and is writable.
  3858. </para>
  3859. <para>
  3860. The format of the output will depend on the appender's layout.
  3861. </para>
  3862. </remarks>
  3863. </member>
  3864. <member name="M:log4net.Appender.FileAppender.Append(log4net.Core.LoggingEvent[])">
  3865. <summary>
  3866. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])"/>
  3867. method.
  3868. </summary>
  3869. <param name="loggingEvents">The array of events to log.</param>
  3870. <remarks>
  3871. <para>
  3872. Acquires the output file locks once before writing all the events to
  3873. the stream.
  3874. </para>
  3875. </remarks>
  3876. </member>
  3877. <member name="M:log4net.Appender.FileAppender.WriteFooter">
  3878. <summary>
  3879. Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.
  3880. </summary>
  3881. <remarks>
  3882. <para>
  3883. Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.
  3884. </para>
  3885. </remarks>
  3886. </member>
  3887. <member name="M:log4net.Appender.FileAppender.WriteHeader">
  3888. <summary>
  3889. Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.
  3890. </summary>
  3891. <remarks>
  3892. <para>
  3893. Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.
  3894. </para>
  3895. </remarks>
  3896. </member>
  3897. <member name="M:log4net.Appender.FileAppender.CloseWriter">
  3898. <summary>
  3899. Closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3900. </summary>
  3901. <remarks>
  3902. <para>
  3903. Closes the underlying <see cref="T:System.IO.TextWriter"/>.
  3904. </para>
  3905. </remarks>
  3906. </member>
  3907. <member name="M:log4net.Appender.FileAppender.CloseFile">
  3908. <summary>
  3909. Closes the previously opened file.
  3910. </summary>
  3911. <remarks>
  3912. <para>
  3913. Writes the <see cref="P:log4net.Layout.ILayout.Footer"/> to the file and then
  3914. closes the file.
  3915. </para>
  3916. </remarks>
  3917. </member>
  3918. <member name="M:log4net.Appender.FileAppender.SafeOpenFile(System.String,System.Boolean)">
  3919. <summary>
  3920. Sets and <i>opens</i> the file where the log output will go. The specified file must be writable.
  3921. </summary>
  3922. <param name="fileName">The path to the log file. Must be a fully qualified path.</param>
  3923. <param name="append">If true will append to fileName. Otherwise will truncate fileName</param>
  3924. <remarks>
  3925. <para>
  3926. Calls <see cref="M:log4net.Appender.FileAppender.OpenFile(System.String,System.Boolean)"/> but guarantees not to throw an exception.
  3927. Errors are passed to the <see cref="P:log4net.Appender.TextWriterAppender.ErrorHandler"/>.
  3928. </para>
  3929. </remarks>
  3930. </member>
  3931. <member name="M:log4net.Appender.FileAppender.OpenFile(System.String,System.Boolean)">
  3932. <summary>
  3933. Sets and <i>opens</i> the file where the log output will go. The specified file must be writable.
  3934. </summary>
  3935. <param name="fileName">The path to the log file. Must be a fully qualified path.</param>
  3936. <param name="append">If true will append to fileName. Otherwise will truncate fileName</param>
  3937. <remarks>
  3938. <para>
  3939. If there was already an opened file, then the previous file
  3940. is closed first.
  3941. </para>
  3942. <para>
  3943. This method will ensure that the directory structure
  3944. for the <paramref name="fileName"/> specified exists.
  3945. </para>
  3946. </remarks>
  3947. </member>
  3948. <member name="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.Stream)">
  3949. <summary>
  3950. Sets the quiet writer used for file output
  3951. </summary>
  3952. <param name="fileStream">the file stream that has been opened for writing</param>
  3953. <remarks>
  3954. <para>
  3955. This implementation of <see cref="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.Stream)"/> creates a <see cref="T:System.IO.StreamWriter"/>
  3956. over the <paramref name="fileStream"/> and passes it to the
  3957. <see cref="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.TextWriter)"/> method.
  3958. </para>
  3959. <para>
  3960. This method can be overridden by sub classes that want to wrap the
  3961. <see cref="T:System.IO.Stream"/> in some way, for example to encrypt the output
  3962. data using a <c>System.Security.Cryptography.CryptoStream</c>.
  3963. </para>
  3964. </remarks>
  3965. </member>
  3966. <member name="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.TextWriter)">
  3967. <summary>
  3968. Sets the quiet writer being used.
  3969. </summary>
  3970. <param name="writer">the writer over the file stream that has been opened for writing</param>
  3971. <remarks>
  3972. <para>
  3973. This method can be overridden by sub classes that want to
  3974. wrap the <see cref="T:System.IO.TextWriter"/> in some way.
  3975. </para>
  3976. </remarks>
  3977. </member>
  3978. <member name="M:log4net.Appender.FileAppender.ConvertToFullPath(System.String)">
  3979. <summary>
  3980. Convert a path into a fully qualified path.
  3981. </summary>
  3982. <param name="path">The path to convert.</param>
  3983. <returns>The fully qualified path.</returns>
  3984. <remarks>
  3985. <para>
  3986. Converts the path specified to a fully
  3987. qualified path. If the path is relative it is
  3988. taken as relative from the application base
  3989. directory.
  3990. </para>
  3991. </remarks>
  3992. </member>
  3993. <member name="F:log4net.Appender.FileAppender.m_appendToFile">
  3994. <summary>
  3995. Flag to indicate if we should append to the file
  3996. or overwrite the file. The default is to append.
  3997. </summary>
  3998. </member>
  3999. <member name="F:log4net.Appender.FileAppender.m_fileName">
  4000. <summary>
  4001. The name of the log file.
  4002. </summary>
  4003. </member>
  4004. <member name="F:log4net.Appender.FileAppender.m_encoding">
  4005. <summary>
  4006. The encoding to use for the file stream.
  4007. </summary>
  4008. </member>
  4009. <member name="F:log4net.Appender.FileAppender.m_securityContext">
  4010. <summary>
  4011. The security context to use for privileged calls
  4012. </summary>
  4013. </member>
  4014. <member name="F:log4net.Appender.FileAppender.m_stream">
  4015. <summary>
  4016. The stream to log to. Has added locking semantics
  4017. </summary>
  4018. </member>
  4019. <member name="F:log4net.Appender.FileAppender.m_lockingModel">
  4020. <summary>
  4021. The locking model to use
  4022. </summary>
  4023. </member>
  4024. <member name="P:log4net.Appender.FileAppender.File">
  4025. <summary>
  4026. Gets or sets the path to the file that logging will be written to.
  4027. </summary>
  4028. <value>
  4029. The path to the file that logging will be written to.
  4030. </value>
  4031. <remarks>
  4032. <para>
  4033. If the path is relative it is taken as relative from
  4034. the application base directory.
  4035. </para>
  4036. </remarks>
  4037. </member>
  4038. <member name="P:log4net.Appender.FileAppender.AppendToFile">
  4039. <summary>
  4040. Gets or sets a flag that indicates whether the file should be
  4041. appended to or overwritten.
  4042. </summary>
  4043. <value>
  4044. Indicates whether the file should be appended to or overwritten.
  4045. </value>
  4046. <remarks>
  4047. <para>
  4048. If the value is set to false then the file will be overwritten, if
  4049. it is set to true then the file will be appended to.
  4050. </para>
  4051. The default value is true.
  4052. </remarks>
  4053. </member>
  4054. <member name="P:log4net.Appender.FileAppender.Encoding">
  4055. <summary>
  4056. Gets or sets <see cref="P:log4net.Appender.FileAppender.Encoding"/> used to write to the file.
  4057. </summary>
  4058. <value>
  4059. The <see cref="P:log4net.Appender.FileAppender.Encoding"/> used to write to the file.
  4060. </value>
  4061. <remarks>
  4062. <para>
  4063. The default encoding set is <see cref="P:System.Text.Encoding.Default"/>
  4064. which is the encoding for the system's current ANSI code page.
  4065. </para>
  4066. </remarks>
  4067. </member>
  4068. <member name="P:log4net.Appender.FileAppender.SecurityContext">
  4069. <summary>
  4070. Gets or sets the <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> used to write to the file.
  4071. </summary>
  4072. <value>
  4073. The <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> used to write to the file.
  4074. </value>
  4075. <remarks>
  4076. <para>
  4077. Unless a <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> specified here for this appender
  4078. the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the
  4079. security context to use. The default behavior is to use the security context
  4080. of the current thread.
  4081. </para>
  4082. </remarks>
  4083. </member>
  4084. <member name="P:log4net.Appender.FileAppender.LockingModel">
  4085. <summary>
  4086. Gets or sets the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to handle locking of the file.
  4087. </summary>
  4088. <value>
  4089. The <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to lock the file.
  4090. </value>
  4091. <remarks>
  4092. <para>
  4093. Gets or sets the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to handle locking of the file.
  4094. </para>
  4095. <para>
  4096. There are two built in locking models, <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/> and <see cref="T:log4net.Appender.FileAppender.MinimalLock"/>.
  4097. The former locks the file from the start of logging to the end and the
  4098. later lock only for the minimal amount of time when logging each message.
  4099. </para>
  4100. <para>
  4101. The default locking model is the <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/>.
  4102. </para>
  4103. </remarks>
  4104. </member>
  4105. <member name="T:log4net.Appender.FileAppender.LockingStream">
  4106. <summary>
  4107. Write only <see cref="T:System.IO.Stream"/> that uses the <see cref="T:log4net.Appender.FileAppender.LockingModelBase"/>
  4108. to manage access to an underlying resource.
  4109. </summary>
  4110. </member>
  4111. <member name="M:log4net.Appender.FileAppender.LockingStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
  4112. <summary>
  4113. True asynchronous writes are not supported, the implementation forces a synchronous write.
  4114. </summary>
  4115. </member>
  4116. <member name="T:log4net.Core.LogException">
  4117. <summary>
  4118. Exception base type for log4net.
  4119. </summary>
  4120. <remarks>
  4121. <para>
  4122. This type extends <see cref="T:System.ApplicationException"/>. It
  4123. does not add any new functionality but does differentiate the
  4124. type of exception being thrown.
  4125. </para>
  4126. </remarks>
  4127. <author>Nicko Cadell</author>
  4128. <author>Gert Driesen</author>
  4129. </member>
  4130. <member name="M:log4net.Core.LogException.#ctor">
  4131. <summary>
  4132. Constructor
  4133. </summary>
  4134. <remarks>
  4135. <para>
  4136. Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class.
  4137. </para>
  4138. </remarks>
  4139. </member>
  4140. <member name="M:log4net.Core.LogException.#ctor(System.String)">
  4141. <summary>
  4142. Constructor
  4143. </summary>
  4144. <param name="message">A message to include with the exception.</param>
  4145. <remarks>
  4146. <para>
  4147. Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class with
  4148. the specified message.
  4149. </para>
  4150. </remarks>
  4151. </member>
  4152. <member name="M:log4net.Core.LogException.#ctor(System.String,System.Exception)">
  4153. <summary>
  4154. Constructor
  4155. </summary>
  4156. <param name="message">A message to include with the exception.</param>
  4157. <param name="innerException">A nested exception to include.</param>
  4158. <remarks>
  4159. <para>
  4160. Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class
  4161. with the specified message and inner exception.
  4162. </para>
  4163. </remarks>
  4164. </member>
  4165. <member name="M:log4net.Core.LogException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
  4166. <summary>
  4167. Serialization constructor
  4168. </summary>
  4169. <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
  4170. <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
  4171. <remarks>
  4172. <para>
  4173. Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class
  4174. with serialized data.
  4175. </para>
  4176. </remarks>
  4177. </member>
  4178. <member name="T:log4net.Appender.FileAppender.LockingModelBase">
  4179. <summary>
  4180. Locking model base class
  4181. </summary>
  4182. <remarks>
  4183. <para>
  4184. Base class for the locking models available to the <see cref="T:log4net.Appender.FileAppender"/> derived loggers.
  4185. </para>
  4186. </remarks>
  4187. </member>
  4188. <member name="M:log4net.Appender.FileAppender.LockingModelBase.OpenFile(System.String,System.Boolean,System.Text.Encoding)">
  4189. <summary>
  4190. Open the output file
  4191. </summary>
  4192. <param name="filename">The filename to use</param>
  4193. <param name="append">Whether to append to the file, or overwrite</param>
  4194. <param name="encoding">The encoding to use</param>
  4195. <remarks>
  4196. <para>
  4197. Open the file specified and prepare for logging.
  4198. No writes will be made until <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/> is called.
  4199. Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/>,
  4200. <see cref="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.LockingModelBase.CloseFile"/>.
  4201. </para>
  4202. </remarks>
  4203. </member>
  4204. <member name="M:log4net.Appender.FileAppender.LockingModelBase.CloseFile">
  4205. <summary>
  4206. Close the file
  4207. </summary>
  4208. <remarks>
  4209. <para>
  4210. Close the file. No further writes will be made.
  4211. </para>
  4212. </remarks>
  4213. </member>
  4214. <member name="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock">
  4215. <summary>
  4216. Acquire the lock on the file
  4217. </summary>
  4218. <returns>A stream that is ready to be written to.</returns>
  4219. <remarks>
  4220. <para>
  4221. Acquire the lock on the file in preparation for writing to it.
  4222. Return a stream pointing to the file. <see cref="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock"/>
  4223. must be called to release the lock on the output file.
  4224. </para>
  4225. </remarks>
  4226. </member>
  4227. <member name="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock">
  4228. <summary>
  4229. Release the lock on the file
  4230. </summary>
  4231. <remarks>
  4232. <para>
  4233. Release the lock on the file. No further writes will be made to the
  4234. stream until <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/> is called again.
  4235. </para>
  4236. </remarks>
  4237. </member>
  4238. <member name="P:log4net.Appender.FileAppender.LockingModelBase.CurrentAppender">
  4239. <summary>
  4240. Gets or sets the <see cref="T:log4net.Appender.FileAppender"/> for this LockingModel
  4241. </summary>
  4242. <value>
  4243. The <see cref="T:log4net.Appender.FileAppender"/> for this LockingModel
  4244. </value>
  4245. <remarks>
  4246. <para>
  4247. The file appender this locking model is attached to and working on
  4248. behalf of.
  4249. </para>
  4250. <para>
  4251. The file appender is used to locate the security context and the error handler to use.
  4252. </para>
  4253. <para>
  4254. The value of this property will be set before <see cref="M:log4net.Appender.FileAppender.LockingModelBase.OpenFile(System.String,System.Boolean,System.Text.Encoding)"/> is
  4255. called.
  4256. </para>
  4257. </remarks>
  4258. </member>
  4259. <member name="T:log4net.Appender.FileAppender.ExclusiveLock">
  4260. <summary>
  4261. Hold an exclusive lock on the output file
  4262. </summary>
  4263. <remarks>
  4264. <para>
  4265. Open the file once for writing and hold it open until <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile"/> is called.
  4266. Maintains an exclusive lock on the file during this time.
  4267. </para>
  4268. </remarks>
  4269. </member>
  4270. <member name="M:log4net.Appender.FileAppender.ExclusiveLock.OpenFile(System.String,System.Boolean,System.Text.Encoding)">
  4271. <summary>
  4272. Open the file specified and prepare for logging.
  4273. </summary>
  4274. <param name="filename">The filename to use</param>
  4275. <param name="append">Whether to append to the file, or overwrite</param>
  4276. <param name="encoding">The encoding to use</param>
  4277. <remarks>
  4278. <para>
  4279. Open the file specified and prepare for logging.
  4280. No writes will be made until <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock"/> is called.
  4281. Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock"/>,
  4282. <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile"/>.
  4283. </para>
  4284. </remarks>
  4285. </member>
  4286. <member name="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile">
  4287. <summary>
  4288. Close the file
  4289. </summary>
  4290. <remarks>
  4291. <para>
  4292. Close the file. No further writes will be made.
  4293. </para>
  4294. </remarks>
  4295. </member>
  4296. <member name="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock">
  4297. <summary>
  4298. Acquire the lock on the file
  4299. </summary>
  4300. <returns>A stream that is ready to be written to.</returns>
  4301. <remarks>
  4302. <para>
  4303. Does nothing. The lock is already taken
  4304. </para>
  4305. </remarks>
  4306. </member>
  4307. <member name="M:log4net.Appender.FileAppender.ExclusiveLock.ReleaseLock">
  4308. <summary>
  4309. Release the lock on the file
  4310. </summary>
  4311. <remarks>
  4312. <para>
  4313. Does nothing. The lock will be released when the file is closed.
  4314. </para>
  4315. </remarks>
  4316. </member>
  4317. <member name="T:log4net.Appender.FileAppender.MinimalLock">
  4318. <summary>
  4319. Acquires the file lock for each write
  4320. </summary>
  4321. <remarks>
  4322. <para>
  4323. Opens the file once for each <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/>/<see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/> cycle,
  4324. thus holding the lock for the minimal amount of time. This method of locking
  4325. is considerably slower than <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/> but allows
  4326. other processes to move/delete the log file whilst logging continues.
  4327. </para>
  4328. </remarks>
  4329. </member>
  4330. <member name="M:log4net.Appender.FileAppender.MinimalLock.OpenFile(System.String,System.Boolean,System.Text.Encoding)">
  4331. <summary>
  4332. Prepares to open the file when the first message is logged.
  4333. </summary>
  4334. <param name="filename">The filename to use</param>
  4335. <param name="append">Whether to append to the file, or overwrite</param>
  4336. <param name="encoding">The encoding to use</param>
  4337. <remarks>
  4338. <para>
  4339. Open the file specified and prepare for logging.
  4340. No writes will be made until <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/> is called.
  4341. Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/>,
  4342. <see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.MinimalLock.CloseFile"/>.
  4343. </para>
  4344. </remarks>
  4345. </member>
  4346. <member name="M:log4net.Appender.FileAppender.MinimalLock.CloseFile">
  4347. <summary>
  4348. Close the file
  4349. </summary>
  4350. <remarks>
  4351. <para>
  4352. Close the file. No further writes will be made.
  4353. </para>
  4354. </remarks>
  4355. </member>
  4356. <member name="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock">
  4357. <summary>
  4358. Acquire the lock on the file
  4359. </summary>
  4360. <returns>A stream that is ready to be written to.</returns>
  4361. <remarks>
  4362. <para>
  4363. Acquire the lock on the file in preparation for writing to it.
  4364. Return a stream pointing to the file. <see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/>
  4365. must be called to release the lock on the output file.
  4366. </para>
  4367. </remarks>
  4368. </member>
  4369. <member name="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock">
  4370. <summary>
  4371. Release the lock on the file
  4372. </summary>
  4373. <remarks>
  4374. <para>
  4375. Release the lock on the file. No further writes will be made to the
  4376. stream until <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/> is called again.
  4377. </para>
  4378. </remarks>
  4379. </member>
  4380. <member name="T:log4net.Appender.ForwardingAppender">
  4381. <summary>
  4382. This appender forwards logging events to attached appenders.
  4383. </summary>
  4384. <remarks>
  4385. <para>
  4386. The forwarding appender can be used to specify different thresholds
  4387. and filters for the same appender at different locations within the hierarchy.
  4388. </para>
  4389. </remarks>
  4390. <author>Nicko Cadell</author>
  4391. <author>Gert Driesen</author>
  4392. </member>
  4393. <member name="M:log4net.Appender.ForwardingAppender.#ctor">
  4394. <summary>
  4395. Initializes a new instance of the <see cref="T:log4net.Appender.ForwardingAppender"/> class.
  4396. </summary>
  4397. <remarks>
  4398. <para>
  4399. Default constructor.
  4400. </para>
  4401. </remarks>
  4402. </member>
  4403. <member name="M:log4net.Appender.ForwardingAppender.OnClose">
  4404. <summary>
  4405. Closes the appender and releases resources.
  4406. </summary>
  4407. <remarks>
  4408. <para>
  4409. Releases any resources allocated within the appender such as file handles,
  4410. network connections, etc.
  4411. </para>
  4412. <para>
  4413. It is a programming error to append to a closed appender.
  4414. </para>
  4415. </remarks>
  4416. </member>
  4417. <member name="M:log4net.Appender.ForwardingAppender.Append(log4net.Core.LoggingEvent)">
  4418. <summary>
  4419. Forward the logging event to the attached appenders
  4420. </summary>
  4421. <param name="loggingEvent">The event to log.</param>
  4422. <remarks>
  4423. <para>
  4424. Delivers the logging event to all the attached appenders.
  4425. </para>
  4426. </remarks>
  4427. </member>
  4428. <member name="M:log4net.Appender.ForwardingAppender.Append(log4net.Core.LoggingEvent[])">
  4429. <summary>
  4430. Forward the logging events to the attached appenders
  4431. </summary>
  4432. <param name="loggingEvents">The array of events to log.</param>
  4433. <remarks>
  4434. <para>
  4435. Delivers the logging events to all the attached appenders.
  4436. </para>
  4437. </remarks>
  4438. </member>
  4439. <member name="M:log4net.Appender.ForwardingAppender.AddAppender(log4net.Appender.IAppender)">
  4440. <summary>
  4441. Adds an <see cref="T:log4net.Appender.IAppender"/> to the list of appenders of this
  4442. instance.
  4443. </summary>
  4444. <param name="newAppender">The <see cref="T:log4net.Appender.IAppender"/> to add to this appender.</param>
  4445. <remarks>
  4446. <para>
  4447. If the specified <see cref="T:log4net.Appender.IAppender"/> is already in the list of
  4448. appenders, then it won't be added again.
  4449. </para>
  4450. </remarks>
  4451. </member>
  4452. <member name="M:log4net.Appender.ForwardingAppender.GetAppender(System.String)">
  4453. <summary>
  4454. Looks for the appender with the specified name.
  4455. </summary>
  4456. <param name="name">The name of the appender to lookup.</param>
  4457. <returns>
  4458. The appender with the specified name, or <c>null</c>.
  4459. </returns>
  4460. <remarks>
  4461. <para>
  4462. Get the named appender attached to this appender.
  4463. </para>
  4464. </remarks>
  4465. </member>
  4466. <member name="M:log4net.Appender.ForwardingAppender.RemoveAllAppenders">
  4467. <summary>
  4468. Removes all previously added appenders from this appender.
  4469. </summary>
  4470. <remarks>
  4471. <para>
  4472. This is useful when re-reading configuration information.
  4473. </para>
  4474. </remarks>
  4475. </member>
  4476. <member name="M:log4net.Appender.ForwardingAppender.RemoveAppender(log4net.Appender.IAppender)">
  4477. <summary>
  4478. Removes the specified appender from the list of appenders.
  4479. </summary>
  4480. <param name="appender">The appender to remove.</param>
  4481. <returns>The appender removed from the list</returns>
  4482. <remarks>
  4483. The appender removed is not closed.
  4484. If you are discarding the appender you must call
  4485. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  4486. </remarks>
  4487. </member>
  4488. <member name="M:log4net.Appender.ForwardingAppender.RemoveAppender(System.String)">
  4489. <summary>
  4490. Removes the appender with the specified name from the list of appenders.
  4491. </summary>
  4492. <param name="name">The name of the appender to remove.</param>
  4493. <returns>The appender removed from the list</returns>
  4494. <remarks>
  4495. The appender removed is not closed.
  4496. If you are discarding the appender you must call
  4497. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  4498. </remarks>
  4499. </member>
  4500. <member name="F:log4net.Appender.ForwardingAppender.m_appenderAttachedImpl">
  4501. <summary>
  4502. Implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface
  4503. </summary>
  4504. </member>
  4505. <member name="P:log4net.Appender.ForwardingAppender.Appenders">
  4506. <summary>
  4507. Gets the appenders contained in this appender as an
  4508. <see cref="T:System.Collections.ICollection"/>.
  4509. </summary>
  4510. <remarks>
  4511. If no appenders can be found, then an <see cref="T:log4net.Util.EmptyCollection"/>
  4512. is returned.
  4513. </remarks>
  4514. <returns>
  4515. A collection of the appenders in this appender.
  4516. </returns>
  4517. </member>
  4518. <member name="T:log4net.Appender.LocalSyslogAppender">
  4519. <summary>
  4520. Logs events to a local syslog service.
  4521. </summary>
  4522. <remarks>
  4523. <note>
  4524. This appender uses the POSIX libc library functions <c>openlog</c>, <c>syslog</c>, and <c>closelog</c>.
  4525. If these functions are not available on the local system then this appender will not work!
  4526. </note>
  4527. <para>
  4528. The functions <c>openlog</c>, <c>syslog</c>, and <c>closelog</c> are specified in SUSv2 and
  4529. POSIX 1003.1-2001 standards. These are used to log messages to the local syslog service.
  4530. </para>
  4531. <para>
  4532. This appender talks to a local syslog service. If you need to log to a remote syslog
  4533. daemon and you cannot configure your local syslog service to do this you may be
  4534. able to use the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> to log via UDP.
  4535. </para>
  4536. <para>
  4537. Syslog messages must have a facility and and a severity. The severity
  4538. is derived from the Level of the logging event.
  4539. The facility must be chosen from the set of defined syslog
  4540. <see cref="T:log4net.Appender.LocalSyslogAppender.SyslogFacility"/> values. The facilities list is predefined
  4541. and cannot be extended.
  4542. </para>
  4543. <para>
  4544. An identifier is specified with each log message. This can be specified
  4545. by setting the <see cref="P:log4net.Appender.LocalSyslogAppender.Identity"/> property. The identity (also know
  4546. as the tag) must not contain white space. The default value for the
  4547. identity is the application name (from <see cref="P:log4net.Util.SystemInfo.ApplicationFriendlyName"/>).
  4548. </para>
  4549. </remarks>
  4550. <author>Rob Lyon</author>
  4551. <author>Nicko Cadell</author>
  4552. </member>
  4553. <member name="M:log4net.Appender.LocalSyslogAppender.#ctor">
  4554. <summary>
  4555. Initializes a new instance of the <see cref="T:log4net.Appender.LocalSyslogAppender"/> class.
  4556. </summary>
  4557. <remarks>
  4558. This instance of the <see cref="T:log4net.Appender.LocalSyslogAppender"/> class is set up to write
  4559. to a local syslog service.
  4560. </remarks>
  4561. </member>
  4562. <member name="M:log4net.Appender.LocalSyslogAppender.AddMapping(log4net.Appender.LocalSyslogAppender.LevelSeverity)">
  4563. <summary>
  4564. Add a mapping of level to severity
  4565. </summary>
  4566. <param name="mapping">The mapping to add</param>
  4567. <remarks>
  4568. <para>
  4569. Adds a <see cref="T:log4net.Appender.LocalSyslogAppender.LevelSeverity"/> to this appender.
  4570. </para>
  4571. </remarks>
  4572. </member>
  4573. <member name="M:log4net.Appender.LocalSyslogAppender.ActivateOptions">
  4574. <summary>
  4575. Initialize the appender based on the options set.
  4576. </summary>
  4577. <remarks>
  4578. <para>
  4579. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  4580. activation scheme. The <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> method must
  4581. be called on this object after the configuration properties have
  4582. been set. Until <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> is called this
  4583. object is in an undefined state and must not be used.
  4584. </para>
  4585. <para>
  4586. If any of the configuration properties are modified then
  4587. <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> must be called again.
  4588. </para>
  4589. </remarks>
  4590. </member>
  4591. <member name="M:log4net.Appender.LocalSyslogAppender.Append(log4net.Core.LoggingEvent)">
  4592. <summary>
  4593. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  4594. </summary>
  4595. <param name="loggingEvent">The event to log.</param>
  4596. <remarks>
  4597. <para>
  4598. Writes the event to a remote syslog daemon.
  4599. </para>
  4600. <para>
  4601. The format of the output will depend on the appender's layout.
  4602. </para>
  4603. </remarks>
  4604. </member>
  4605. <member name="M:log4net.Appender.LocalSyslogAppender.OnClose">
  4606. <summary>
  4607. Close the syslog when the appender is closed
  4608. </summary>
  4609. <remarks>
  4610. <para>
  4611. Close the syslog when the appender is closed
  4612. </para>
  4613. </remarks>
  4614. </member>
  4615. <member name="M:log4net.Appender.LocalSyslogAppender.GetSeverity(log4net.Core.Level)">
  4616. <summary>
  4617. Translates a log4net level to a syslog severity.
  4618. </summary>
  4619. <param name="level">A log4net level.</param>
  4620. <returns>A syslog severity.</returns>
  4621. <remarks>
  4622. <para>
  4623. Translates a log4net level to a syslog severity.
  4624. </para>
  4625. </remarks>
  4626. </member>
  4627. <member name="M:log4net.Appender.LocalSyslogAppender.GeneratePriority(log4net.Appender.LocalSyslogAppender.SyslogFacility,log4net.Appender.LocalSyslogAppender.SyslogSeverity)">
  4628. <summary>
  4629. Generate a syslog priority.
  4630. </summary>
  4631. <param name="facility">The syslog facility.</param>
  4632. <param name="severity">The syslog severity.</param>
  4633. <returns>A syslog priority.</returns>
  4634. </member>
  4635. <member name="F:log4net.Appender.LocalSyslogAppender.m_facility">
  4636. <summary>
  4637. The facility. The default facility is <see cref="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User"/>.
  4638. </summary>
  4639. </member>
  4640. <member name="F:log4net.Appender.LocalSyslogAppender.m_identity">
  4641. <summary>
  4642. The message identity
  4643. </summary>
  4644. </member>
  4645. <member name="F:log4net.Appender.LocalSyslogAppender.m_handleToIdentity">
  4646. <summary>
  4647. Marshaled handle to the identity string. We have to hold on to the
  4648. string as the <c>openlog</c> and <c>syslog</c> APIs just hold the
  4649. pointer to the ident and dereference it for each log message.
  4650. </summary>
  4651. </member>
  4652. <member name="F:log4net.Appender.LocalSyslogAppender.m_levelMapping">
  4653. <summary>
  4654. Mapping from level object to syslog severity
  4655. </summary>
  4656. </member>
  4657. <member name="M:log4net.Appender.LocalSyslogAppender.openlog(System.IntPtr,System.Int32,log4net.Appender.LocalSyslogAppender.SyslogFacility)">
  4658. <summary>
  4659. Open connection to system logger.
  4660. </summary>
  4661. </member>
  4662. <member name="M:log4net.Appender.LocalSyslogAppender.syslog(System.Int32,System.String,System.String)">
  4663. <summary>
  4664. Generate a log message.
  4665. </summary>
  4666. <remarks>
  4667. <para>
  4668. The libc syslog method takes a format string and a variable argument list similar
  4669. to the classic printf function. As this type of vararg list is not supported
  4670. by C# we need to specify the arguments explicitly. Here we have specified the
  4671. format string with a single message argument. The caller must set the format
  4672. string to <c>"%s"</c>.
  4673. </para>
  4674. </remarks>
  4675. </member>
  4676. <member name="M:log4net.Appender.LocalSyslogAppender.closelog">
  4677. <summary>
  4678. Close descriptor used to write to system logger.
  4679. </summary>
  4680. </member>
  4681. <member name="P:log4net.Appender.LocalSyslogAppender.Identity">
  4682. <summary>
  4683. Message identity
  4684. </summary>
  4685. <remarks>
  4686. <para>
  4687. An identifier is specified with each log message. This can be specified
  4688. by setting the <see cref="P:log4net.Appender.LocalSyslogAppender.Identity"/> property. The identity (also know
  4689. as the tag) must not contain white space. The default value for the
  4690. identity is the application name (from <see cref="P:log4net.Util.SystemInfo.ApplicationFriendlyName"/>).
  4691. </para>
  4692. </remarks>
  4693. </member>
  4694. <member name="P:log4net.Appender.LocalSyslogAppender.Facility">
  4695. <summary>
  4696. Syslog facility
  4697. </summary>
  4698. <remarks>
  4699. Set to one of the <see cref="T:log4net.Appender.LocalSyslogAppender.SyslogFacility"/> values. The list of
  4700. facilities is predefined and cannot be extended. The default value
  4701. is <see cref="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User"/>.
  4702. </remarks>
  4703. </member>
  4704. <member name="P:log4net.Appender.LocalSyslogAppender.RequiresLayout">
  4705. <summary>
  4706. This appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.
  4707. </summary>
  4708. <value><c>true</c></value>
  4709. <remarks>
  4710. <para>
  4711. This appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.
  4712. </para>
  4713. </remarks>
  4714. </member>
  4715. <member name="T:log4net.Appender.LocalSyslogAppender.SyslogSeverity">
  4716. <summary>
  4717. syslog severities
  4718. </summary>
  4719. <remarks>
  4720. <para>
  4721. The log4net Level maps to a syslog severity using the
  4722. <see cref="M:log4net.Appender.LocalSyslogAppender.AddMapping(log4net.Appender.LocalSyslogAppender.LevelSeverity)"/> method and the <see cref="T:log4net.Appender.LocalSyslogAppender.LevelSeverity"/>
  4723. class. The severity is set on <see cref="P:log4net.Appender.LocalSyslogAppender.LevelSeverity.Severity"/>.
  4724. </para>
  4725. </remarks>
  4726. </member>
  4727. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Emergency">
  4728. <summary>
  4729. system is unusable
  4730. </summary>
  4731. </member>
  4732. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Alert">
  4733. <summary>
  4734. action must be taken immediately
  4735. </summary>
  4736. </member>
  4737. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Critical">
  4738. <summary>
  4739. critical conditions
  4740. </summary>
  4741. </member>
  4742. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Error">
  4743. <summary>
  4744. error conditions
  4745. </summary>
  4746. </member>
  4747. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Warning">
  4748. <summary>
  4749. warning conditions
  4750. </summary>
  4751. </member>
  4752. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Notice">
  4753. <summary>
  4754. normal but significant condition
  4755. </summary>
  4756. </member>
  4757. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Informational">
  4758. <summary>
  4759. informational
  4760. </summary>
  4761. </member>
  4762. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Debug">
  4763. <summary>
  4764. debug-level messages
  4765. </summary>
  4766. </member>
  4767. <member name="T:log4net.Appender.LocalSyslogAppender.SyslogFacility">
  4768. <summary>
  4769. syslog facilities
  4770. </summary>
  4771. <remarks>
  4772. <para>
  4773. The syslog facility defines which subsystem the logging comes from.
  4774. This is set on the <see cref="P:log4net.Appender.LocalSyslogAppender.Facility"/> property.
  4775. </para>
  4776. </remarks>
  4777. </member>
  4778. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Kernel">
  4779. <summary>
  4780. kernel messages
  4781. </summary>
  4782. </member>
  4783. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User">
  4784. <summary>
  4785. random user-level messages
  4786. </summary>
  4787. </member>
  4788. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Mail">
  4789. <summary>
  4790. mail system
  4791. </summary>
  4792. </member>
  4793. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Daemons">
  4794. <summary>
  4795. system daemons
  4796. </summary>
  4797. </member>
  4798. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Authorization">
  4799. <summary>
  4800. security/authorization messages
  4801. </summary>
  4802. </member>
  4803. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Syslog">
  4804. <summary>
  4805. messages generated internally by syslogd
  4806. </summary>
  4807. </member>
  4808. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Printer">
  4809. <summary>
  4810. line printer subsystem
  4811. </summary>
  4812. </member>
  4813. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.News">
  4814. <summary>
  4815. network news subsystem
  4816. </summary>
  4817. </member>
  4818. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Uucp">
  4819. <summary>
  4820. UUCP subsystem
  4821. </summary>
  4822. </member>
  4823. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Clock">
  4824. <summary>
  4825. clock (cron/at) daemon
  4826. </summary>
  4827. </member>
  4828. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Authorization2">
  4829. <summary>
  4830. security/authorization messages (private)
  4831. </summary>
  4832. </member>
  4833. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Ftp">
  4834. <summary>
  4835. ftp daemon
  4836. </summary>
  4837. </member>
  4838. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Ntp">
  4839. <summary>
  4840. NTP subsystem
  4841. </summary>
  4842. </member>
  4843. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Audit">
  4844. <summary>
  4845. log audit
  4846. </summary>
  4847. </member>
  4848. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Alert">
  4849. <summary>
  4850. log alert
  4851. </summary>
  4852. </member>
  4853. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Clock2">
  4854. <summary>
  4855. clock daemon
  4856. </summary>
  4857. </member>
  4858. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local0">
  4859. <summary>
  4860. reserved for local use
  4861. </summary>
  4862. </member>
  4863. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local1">
  4864. <summary>
  4865. reserved for local use
  4866. </summary>
  4867. </member>
  4868. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local2">
  4869. <summary>
  4870. reserved for local use
  4871. </summary>
  4872. </member>
  4873. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local3">
  4874. <summary>
  4875. reserved for local use
  4876. </summary>
  4877. </member>
  4878. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local4">
  4879. <summary>
  4880. reserved for local use
  4881. </summary>
  4882. </member>
  4883. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local5">
  4884. <summary>
  4885. reserved for local use
  4886. </summary>
  4887. </member>
  4888. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local6">
  4889. <summary>
  4890. reserved for local use
  4891. </summary>
  4892. </member>
  4893. <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local7">
  4894. <summary>
  4895. reserved for local use
  4896. </summary>
  4897. </member>
  4898. <member name="T:log4net.Appender.LocalSyslogAppender.LevelSeverity">
  4899. <summary>
  4900. A class to act as a mapping between the level that a logging call is made at and
  4901. the syslog severity that is should be logged at.
  4902. </summary>
  4903. <remarks>
  4904. <para>
  4905. A class to act as a mapping between the level that a logging call is made at and
  4906. the syslog severity that is should be logged at.
  4907. </para>
  4908. </remarks>
  4909. </member>
  4910. <member name="P:log4net.Appender.LocalSyslogAppender.LevelSeverity.Severity">
  4911. <summary>
  4912. The mapped syslog severity for the specified level
  4913. </summary>
  4914. <remarks>
  4915. <para>
  4916. Required property.
  4917. The mapped syslog severity for the specified level
  4918. </para>
  4919. </remarks>
  4920. </member>
  4921. <member name="T:log4net.Appender.MemoryAppender">
  4922. <summary>
  4923. Stores logging events in an array.
  4924. </summary>
  4925. <remarks>
  4926. <para>
  4927. The memory appender stores all the logging events
  4928. that are appended in an in-memory array.
  4929. </para>
  4930. <para>
  4931. Use the <see cref="M:log4net.Appender.MemoryAppender.GetEvents"/> method to get
  4932. the current list of events that have been appended.
  4933. </para>
  4934. <para>
  4935. Use the <see cref="M:log4net.Appender.MemoryAppender.Clear"/> method to clear the
  4936. current list of events.
  4937. </para>
  4938. </remarks>
  4939. <author>Julian Biddle</author>
  4940. <author>Nicko Cadell</author>
  4941. <author>Gert Driesen</author>
  4942. </member>
  4943. <member name="M:log4net.Appender.MemoryAppender.#ctor">
  4944. <summary>
  4945. Initializes a new instance of the <see cref="T:log4net.Appender.MemoryAppender"/> class.
  4946. </summary>
  4947. <remarks>
  4948. <para>
  4949. Default constructor.
  4950. </para>
  4951. </remarks>
  4952. </member>
  4953. <member name="M:log4net.Appender.MemoryAppender.GetEvents">
  4954. <summary>
  4955. Gets the events that have been logged.
  4956. </summary>
  4957. <returns>The events that have been logged</returns>
  4958. <remarks>
  4959. <para>
  4960. Gets the events that have been logged.
  4961. </para>
  4962. </remarks>
  4963. </member>
  4964. <member name="M:log4net.Appender.MemoryAppender.Append(log4net.Core.LoggingEvent)">
  4965. <summary>
  4966. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  4967. </summary>
  4968. <param name="loggingEvent">the event to log</param>
  4969. <remarks>
  4970. <para>Stores the <paramref name="loggingEvent"/> in the events list.</para>
  4971. </remarks>
  4972. </member>
  4973. <member name="M:log4net.Appender.MemoryAppender.Clear">
  4974. <summary>
  4975. Clear the list of events
  4976. </summary>
  4977. <remarks>
  4978. Clear the list of events
  4979. </remarks>
  4980. </member>
  4981. <member name="F:log4net.Appender.MemoryAppender.m_eventsList">
  4982. <summary>
  4983. The list of events that have been appended.
  4984. </summary>
  4985. </member>
  4986. <member name="F:log4net.Appender.MemoryAppender.m_fixFlags">
  4987. <summary>
  4988. Value indicating which fields in the event should be fixed
  4989. </summary>
  4990. <remarks>
  4991. By default all fields are fixed
  4992. </remarks>
  4993. </member>
  4994. <member name="P:log4net.Appender.MemoryAppender.OnlyFixPartialEventData">
  4995. <summary>
  4996. Gets or sets a value indicating whether only part of the logging event
  4997. data should be fixed.
  4998. </summary>
  4999. <value>
  5000. <c>true</c> if the appender should only fix part of the logging event
  5001. data, otherwise <c>false</c>. The default is <c>false</c>.
  5002. </value>
  5003. <remarks>
  5004. <para>
  5005. Setting this property to <c>true</c> will cause only part of the event
  5006. data to be fixed and stored in the appender, hereby improving performance.
  5007. </para>
  5008. <para>
  5009. See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> for more information.
  5010. </para>
  5011. </remarks>
  5012. </member>
  5013. <member name="P:log4net.Appender.MemoryAppender.Fix">
  5014. <summary>
  5015. Gets or sets the fields that will be fixed in the event
  5016. </summary>
  5017. <remarks>
  5018. <para>
  5019. The logging event needs to have certain thread specific values
  5020. captured before it can be buffered. See <see cref="P:log4net.Core.LoggingEvent.Fix"/>
  5021. for details.
  5022. </para>
  5023. </remarks>
  5024. </member>
  5025. <member name="T:log4net.Appender.NetSendAppender">
  5026. <summary>
  5027. Logs entries by sending network messages using the
  5028. <see cref="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)"/> native function.
  5029. </summary>
  5030. <remarks>
  5031. <para>
  5032. You can send messages only to names that are active
  5033. on the network. If you send the message to a user name,
  5034. that user must be logged on and running the Messenger
  5035. service to receive the message.
  5036. </para>
  5037. <para>
  5038. The receiver will get a top most window displaying the
  5039. messages one at a time, therefore this appender should
  5040. not be used to deliver a high volume of messages.
  5041. </para>
  5042. <para>
  5043. The following table lists some possible uses for this appender :
  5044. </para>
  5045. <para>
  5046. <list type="table">
  5047. <listheader>
  5048. <term>Action</term>
  5049. <description>Property Value(s)</description>
  5050. </listheader>
  5051. <item>
  5052. <term>Send a message to a user account on the local machine</term>
  5053. <description>
  5054. <para>
  5055. <paramref name="Server"/> = &lt;name of the local machine&gt;
  5056. </para>
  5057. <para>
  5058. <paramref name="Recipient"/> = &lt;user name&gt;
  5059. </para>
  5060. </description>
  5061. </item>
  5062. <item>
  5063. <term>Send a message to a user account on a remote machine</term>
  5064. <description>
  5065. <para>
  5066. <paramref name="Server"/> = &lt;name of the remote machine&gt;
  5067. </para>
  5068. <para>
  5069. <paramref name="Recipient"/> = &lt;user name&gt;
  5070. </para>
  5071. </description>
  5072. </item>
  5073. <item>
  5074. <term>Send a message to a domain user account</term>
  5075. <description>
  5076. <para>
  5077. <paramref name="Server"/> = &lt;name of a domain controller | uninitialized&gt;
  5078. </para>
  5079. <para>
  5080. <paramref name="Recipient"/> = &lt;user name&gt;
  5081. </para>
  5082. </description>
  5083. </item>
  5084. <item>
  5085. <term>Send a message to all the names in a workgroup or domain</term>
  5086. <description>
  5087. <para>
  5088. <paramref name="Recipient"/> = &lt;workgroup name | domain name&gt;*
  5089. </para>
  5090. </description>
  5091. </item>
  5092. <item>
  5093. <term>Send a message from the local machine to a remote machine</term>
  5094. <description>
  5095. <para>
  5096. <paramref name="Server"/> = &lt;name of the local machine | uninitialized&gt;
  5097. </para>
  5098. <para>
  5099. <paramref name="Recipient"/> = &lt;name of the remote machine&gt;
  5100. </para>
  5101. </description>
  5102. </item>
  5103. </list>
  5104. </para>
  5105. <para>
  5106. <b>Note :</b> security restrictions apply for sending
  5107. network messages, see <see cref="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)"/>
  5108. for more information.
  5109. </para>
  5110. </remarks>
  5111. <example>
  5112. <para>
  5113. An example configuration section to log information
  5114. using this appender from the local machine, named
  5115. LOCAL_PC, to machine OPERATOR_PC :
  5116. </para>
  5117. <code lang="XML" escaped="true">
  5118. <appender name="NetSendAppender_Operator" type="log4net.Appender.NetSendAppender">
  5119. <server value="LOCAL_PC"/>
  5120. <recipient value="OPERATOR_PC"/>
  5121. <layout type="log4net.Layout.PatternLayout" value="%-5p %c [%x] - %m%n"/>
  5122. </appender>
  5123. </code>
  5124. </example>
  5125. <author>Nicko Cadell</author>
  5126. <author>Gert Driesen</author>
  5127. </member>
  5128. <member name="F:log4net.Appender.NetSendAppender.m_server">
  5129. <summary>
  5130. The DNS or NetBIOS name of the server on which the function is to execute.
  5131. </summary>
  5132. </member>
  5133. <member name="F:log4net.Appender.NetSendAppender.m_sender">
  5134. <summary>
  5135. The sender of the network message.
  5136. </summary>
  5137. </member>
  5138. <member name="F:log4net.Appender.NetSendAppender.m_recipient">
  5139. <summary>
  5140. The message alias to which the message should be sent.
  5141. </summary>
  5142. </member>
  5143. <member name="F:log4net.Appender.NetSendAppender.m_securityContext">
  5144. <summary>
  5145. The security context to use for privileged calls
  5146. </summary>
  5147. </member>
  5148. <member name="M:log4net.Appender.NetSendAppender.#ctor">
  5149. <summary>
  5150. Initializes the appender.
  5151. </summary>
  5152. <remarks>
  5153. The default constructor initializes all fields to their default values.
  5154. </remarks>
  5155. </member>
  5156. <member name="M:log4net.Appender.NetSendAppender.ActivateOptions">
  5157. <summary>
  5158. Initialize the appender based on the options set.
  5159. </summary>
  5160. <remarks>
  5161. <para>
  5162. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  5163. activation scheme. The <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> method must
  5164. be called on this object after the configuration properties have
  5165. been set. Until <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> is called this
  5166. object is in an undefined state and must not be used.
  5167. </para>
  5168. <para>
  5169. If any of the configuration properties are modified then
  5170. <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> must be called again.
  5171. </para>
  5172. <para>
  5173. The appender will be ignored if no <see cref="P:log4net.Appender.NetSendAppender.Recipient"/> was specified.
  5174. </para>
  5175. </remarks>
  5176. <exception cref="T:System.ArgumentNullException">The required property <see cref="P:log4net.Appender.NetSendAppender.Recipient"/> was not specified.</exception>
  5177. </member>
  5178. <member name="M:log4net.Appender.NetSendAppender.Append(log4net.Core.LoggingEvent)">
  5179. <summary>
  5180. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  5181. </summary>
  5182. <param name="loggingEvent">The event to log.</param>
  5183. <remarks>
  5184. <para>
  5185. Sends the event using a network message.
  5186. </para>
  5187. </remarks>
  5188. </member>
  5189. <member name="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)">
  5190. <summary>
  5191. Sends a buffer of information to a registered message alias.
  5192. </summary>
  5193. <param name="serverName">The DNS or NetBIOS name of the server on which the function is to execute.</param>
  5194. <param name="msgName">The message alias to which the message buffer should be sent</param>
  5195. <param name="fromName">The originator of the message.</param>
  5196. <param name="buffer">The message text.</param>
  5197. <param name="bufferSize">The length, in bytes, of the message text.</param>
  5198. <remarks>
  5199. <para>
  5200. The following restrictions apply for sending network messages:
  5201. </para>
  5202. <para>
  5203. <list type="table">
  5204. <listheader>
  5205. <term>Platform</term>
  5206. <description>Requirements</description>
  5207. </listheader>
  5208. <item>
  5209. <term>Windows NT</term>
  5210. <description>
  5211. <para>
  5212. No special group membership is required to send a network message.
  5213. </para>
  5214. <para>
  5215. Admin, Accounts, Print, or Server Operator group membership is required to
  5216. successfully send a network message on a remote server.
  5217. </para>
  5218. </description>
  5219. </item>
  5220. <item>
  5221. <term>Windows 2000 or later</term>
  5222. <description>
  5223. <para>
  5224. If you send a message on a domain controller that is running Active Directory,
  5225. access is allowed or denied based on the access control list (ACL) for the securable
  5226. object. The default ACL permits only Domain Admins and Account Operators to send a network message.
  5227. </para>
  5228. <para>
  5229. On a member server or workstation, only Administrators and Server Operators can send a network message.
  5230. </para>
  5231. </description>
  5232. </item>
  5233. </list>
  5234. </para>
  5235. <para>
  5236. For more information see <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netmgmt/netmgmt/security_requirements_for_the_network_management_functions.asp">Security Requirements for the Network Management Functions</a>.
  5237. </para>
  5238. </remarks>
  5239. <returns>
  5240. <para>
  5241. If the function succeeds, the return value is zero.
  5242. </para>
  5243. </returns>
  5244. </member>
  5245. <member name="P:log4net.Appender.NetSendAppender.Sender">
  5246. <summary>
  5247. Gets or sets the sender of the message.
  5248. </summary>
  5249. <value>
  5250. The sender of the message.
  5251. </value>
  5252. <remarks>
  5253. If this property is not specified, the message is sent from the local computer.
  5254. </remarks>
  5255. </member>
  5256. <member name="P:log4net.Appender.NetSendAppender.Recipient">
  5257. <summary>
  5258. Gets or sets the message alias to which the message should be sent.
  5259. </summary>
  5260. <value>
  5261. The recipient of the message.
  5262. </value>
  5263. <remarks>
  5264. This property should always be specified in order to send a message.
  5265. </remarks>
  5266. </member>
  5267. <member name="P:log4net.Appender.NetSendAppender.Server">
  5268. <summary>
  5269. Gets or sets the DNS or NetBIOS name of the remote server on which the function is to execute.
  5270. </summary>
  5271. <value>
  5272. DNS or NetBIOS name of the remote server on which the function is to execute.
  5273. </value>
  5274. <remarks>
  5275. <para>
  5276. For Windows NT 4.0 and earlier, the string should begin with \\.
  5277. </para>
  5278. <para>
  5279. If this property is not specified, the local computer is used.
  5280. </para>
  5281. </remarks>
  5282. </member>
  5283. <member name="P:log4net.Appender.NetSendAppender.SecurityContext">
  5284. <summary>
  5285. Gets or sets the <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> used to call the NetSend method.
  5286. </summary>
  5287. <value>
  5288. The <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> used to call the NetSend method.
  5289. </value>
  5290. <remarks>
  5291. <para>
  5292. Unless a <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> specified here for this appender
  5293. the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the
  5294. security context to use. The default behavior is to use the security context
  5295. of the current thread.
  5296. </para>
  5297. </remarks>
  5298. </member>
  5299. <member name="P:log4net.Appender.NetSendAppender.RequiresLayout">
  5300. <summary>
  5301. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5302. </summary>
  5303. <value><c>true</c></value>
  5304. <remarks>
  5305. <para>
  5306. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5307. </para>
  5308. </remarks>
  5309. </member>
  5310. <member name="T:log4net.Appender.OutputDebugStringAppender">
  5311. <summary>
  5312. Appends log events to the OutputDebugString system.
  5313. </summary>
  5314. <remarks>
  5315. <para>
  5316. OutputDebugStringAppender appends log events to the
  5317. OutputDebugString system.
  5318. </para>
  5319. <para>
  5320. The string is passed to the native <c>OutputDebugString</c>
  5321. function.
  5322. </para>
  5323. </remarks>
  5324. <author>Nicko Cadell</author>
  5325. <author>Gert Driesen</author>
  5326. </member>
  5327. <member name="M:log4net.Appender.OutputDebugStringAppender.#ctor">
  5328. <summary>
  5329. Initializes a new instance of the <see cref="T:log4net.Appender.OutputDebugStringAppender"/> class.
  5330. </summary>
  5331. <remarks>
  5332. <para>
  5333. Default constructor.
  5334. </para>
  5335. </remarks>
  5336. </member>
  5337. <member name="M:log4net.Appender.OutputDebugStringAppender.Append(log4net.Core.LoggingEvent)">
  5338. <summary>
  5339. Write the logging event to the output debug string API
  5340. </summary>
  5341. <param name="loggingEvent">the event to log</param>
  5342. <remarks>
  5343. <para>
  5344. Write the logging event to the output debug string API
  5345. </para>
  5346. </remarks>
  5347. </member>
  5348. <member name="M:log4net.Appender.OutputDebugStringAppender.OutputDebugString(System.String)">
  5349. <summary>
  5350. Stub for OutputDebugString native method
  5351. </summary>
  5352. <param name="message">the string to output</param>
  5353. <remarks>
  5354. <para>
  5355. Stub for OutputDebugString native method
  5356. </para>
  5357. </remarks>
  5358. </member>
  5359. <member name="P:log4net.Appender.OutputDebugStringAppender.RequiresLayout">
  5360. <summary>
  5361. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5362. </summary>
  5363. <value><c>true</c></value>
  5364. <remarks>
  5365. <para>
  5366. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5367. </para>
  5368. </remarks>
  5369. </member>
  5370. <member name="T:log4net.Appender.RemoteSyslogAppender">
  5371. <summary>
  5372. Logs events to a remote syslog daemon.
  5373. </summary>
  5374. <remarks>
  5375. <para>
  5376. The BSD syslog protocol is used to remotely log to
  5377. a syslog daemon. The syslogd listens for for messages
  5378. on UDP port 514.
  5379. </para>
  5380. <para>
  5381. The syslog UDP protocol is not authenticated. Most syslog daemons
  5382. do not accept remote log messages because of the security implications.
  5383. You may be able to use the LocalSyslogAppender to talk to a local
  5384. syslog service.
  5385. </para>
  5386. <para>
  5387. There is an RFC 3164 that claims to document the BSD Syslog Protocol.
  5388. This RFC can be seen here: http://www.faqs.org/rfcs/rfc3164.html.
  5389. This appender generates what the RFC calls an "Original Device Message",
  5390. i.e. does not include the TIMESTAMP or HOSTNAME fields. By observation
  5391. this format of message will be accepted by all current syslog daemon
  5392. implementations. The daemon will attach the current time and the source
  5393. hostname or IP address to any messages received.
  5394. </para>
  5395. <para>
  5396. Syslog messages must have a facility and and a severity. The severity
  5397. is derived from the Level of the logging event.
  5398. The facility must be chosen from the set of defined syslog
  5399. <see cref="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility"/> values. The facilities list is predefined
  5400. and cannot be extended.
  5401. </para>
  5402. <para>
  5403. An identifier is specified with each log message. This can be specified
  5404. by setting the <see cref="P:log4net.Appender.RemoteSyslogAppender.Identity"/> property. The identity (also know
  5405. as the tag) must not contain white space. The default value for the
  5406. identity is the application name (from <see cref="P:log4net.Core.LoggingEvent.Domain"/>).
  5407. </para>
  5408. </remarks>
  5409. <author>Rob Lyon</author>
  5410. <author>Nicko Cadell</author>
  5411. </member>
  5412. <member name="T:log4net.Appender.UdpAppender">
  5413. <summary>
  5414. Sends logging events as connectionless UDP datagrams to a remote host or a
  5415. multicast group using an <see cref="T:System.Net.Sockets.UdpClient"/>.
  5416. </summary>
  5417. <remarks>
  5418. <para>
  5419. UDP guarantees neither that messages arrive, nor that they arrive in the correct order.
  5420. </para>
  5421. <para>
  5422. To view the logging results, a custom application can be developed that listens for logging
  5423. events.
  5424. </para>
  5425. <para>
  5426. When decoding events send via this appender remember to use the same encoding
  5427. to decode the events as was used to send the events. See the <see cref="P:log4net.Appender.UdpAppender.Encoding"/>
  5428. property to specify the encoding to use.
  5429. </para>
  5430. </remarks>
  5431. <example>
  5432. This example shows how to log receive logging events that are sent
  5433. on IP address 244.0.0.1 and port 8080 to the console. The event is
  5434. encoded in the packet as a unicode string and it is decoded as such.
  5435. <code lang="C#">
  5436. IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0);
  5437. UdpClient udpClient;
  5438. byte[] buffer;
  5439. string loggingEvent;
  5440. try
  5441. {
  5442. udpClient = new UdpClient(8080);
  5443. while(true)
  5444. {
  5445. buffer = udpClient.Receive(ref remoteEndPoint);
  5446. loggingEvent = System.Text.Encoding.Unicode.GetString(buffer);
  5447. Console.WriteLine(loggingEvent);
  5448. }
  5449. }
  5450. catch(Exception e)
  5451. {
  5452. Console.WriteLine(e.ToString());
  5453. }
  5454. </code>
  5455. <code lang="Visual Basic">
  5456. Dim remoteEndPoint as IPEndPoint
  5457. Dim udpClient as UdpClient
  5458. Dim buffer as Byte()
  5459. Dim loggingEvent as String
  5460. Try
  5461. remoteEndPoint = new IPEndPoint(IPAddress.Any, 0)
  5462. udpClient = new UdpClient(8080)
  5463. While True
  5464. buffer = udpClient.Receive(ByRef remoteEndPoint)
  5465. loggingEvent = System.Text.Encoding.Unicode.GetString(buffer)
  5466. Console.WriteLine(loggingEvent)
  5467. Wend
  5468. Catch e As Exception
  5469. Console.WriteLine(e.ToString())
  5470. End Try
  5471. </code>
  5472. <para>
  5473. An example configuration section to log information using this appender to the
  5474. IP 224.0.0.1 on port 8080:
  5475. </para>
  5476. <code lang="XML" escaped="true">
  5477. <appender name="UdpAppender" type="log4net.Appender.UdpAppender">
  5478. <remoteAddress value="224.0.0.1"/>
  5479. <remotePort value="8080"/>
  5480. <layout type="log4net.Layout.PatternLayout" value="%-5level %logger [%ndc] - %message%newline"/>
  5481. </appender>
  5482. </code>
  5483. </example>
  5484. <author>Gert Driesen</author>
  5485. <author>Nicko Cadell</author>
  5486. </member>
  5487. <member name="M:log4net.Appender.UdpAppender.#ctor">
  5488. <summary>
  5489. Initializes a new instance of the <see cref="T:log4net.Appender.UdpAppender"/> class.
  5490. </summary>
  5491. <remarks>
  5492. The default constructor initializes all fields to their default values.
  5493. </remarks>
  5494. </member>
  5495. <member name="M:log4net.Appender.UdpAppender.ActivateOptions">
  5496. <summary>
  5497. Initialize the appender based on the options set.
  5498. </summary>
  5499. <remarks>
  5500. <para>
  5501. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  5502. activation scheme. The <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> method must
  5503. be called on this object after the configuration properties have
  5504. been set. Until <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> is called this
  5505. object is in an undefined state and must not be used.
  5506. </para>
  5507. <para>
  5508. If any of the configuration properties are modified then
  5509. <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> must be called again.
  5510. </para>
  5511. <para>
  5512. The appender will be ignored if no <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> was specified or
  5513. an invalid remote or local TCP port number was specified.
  5514. </para>
  5515. </remarks>
  5516. <exception cref="T:System.ArgumentNullException">The required property <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> was not specified.</exception>
  5517. <exception cref="T:System.ArgumentOutOfRangeException">The TCP port number assigned to <see cref="P:log4net.Appender.UdpAppender.LocalPort"/> or <see cref="P:log4net.Appender.UdpAppender.RemotePort"/> is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>
  5518. </member>
  5519. <member name="M:log4net.Appender.UdpAppender.Append(log4net.Core.LoggingEvent)">
  5520. <summary>
  5521. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  5522. </summary>
  5523. <param name="loggingEvent">The event to log.</param>
  5524. <remarks>
  5525. <para>
  5526. Sends the event using an UDP datagram.
  5527. </para>
  5528. <para>
  5529. Exceptions are passed to the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/>.
  5530. </para>
  5531. </remarks>
  5532. </member>
  5533. <member name="M:log4net.Appender.UdpAppender.OnClose">
  5534. <summary>
  5535. Closes the UDP connection and releases all resources associated with
  5536. this <see cref="T:log4net.Appender.UdpAppender"/> instance.
  5537. </summary>
  5538. <remarks>
  5539. <para>
  5540. Disables the underlying <see cref="T:System.Net.Sockets.UdpClient"/> and releases all managed
  5541. and unmanaged resources associated with the <see cref="T:log4net.Appender.UdpAppender"/>.
  5542. </para>
  5543. </remarks>
  5544. </member>
  5545. <member name="M:log4net.Appender.UdpAppender.InitializeClientConnection">
  5546. <summary>
  5547. Initializes the underlying <see cref="T:System.Net.Sockets.UdpClient"/> connection.
  5548. </summary>
  5549. <remarks>
  5550. <para>
  5551. The underlying <see cref="T:System.Net.Sockets.UdpClient"/> is initialized and binds to the
  5552. port number from which you intend to communicate.
  5553. </para>
  5554. <para>
  5555. Exceptions are passed to the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/>.
  5556. </para>
  5557. </remarks>
  5558. </member>
  5559. <member name="F:log4net.Appender.UdpAppender.m_remoteAddress">
  5560. <summary>
  5561. The IP address of the remote host or multicast group to which
  5562. the logging event will be sent.
  5563. </summary>
  5564. </member>
  5565. <member name="F:log4net.Appender.UdpAppender.m_remotePort">
  5566. <summary>
  5567. The TCP port number of the remote host or multicast group to
  5568. which the logging event will be sent.
  5569. </summary>
  5570. </member>
  5571. <member name="F:log4net.Appender.UdpAppender.m_remoteEndPoint">
  5572. <summary>
  5573. The cached remote endpoint to which the logging events will be sent.
  5574. </summary>
  5575. </member>
  5576. <member name="F:log4net.Appender.UdpAppender.m_localPort">
  5577. <summary>
  5578. The TCP port number from which the <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.
  5579. </summary>
  5580. </member>
  5581. <member name="F:log4net.Appender.UdpAppender.m_client">
  5582. <summary>
  5583. The <see cref="T:System.Net.Sockets.UdpClient"/> instance that will be used for sending the
  5584. logging events.
  5585. </summary>
  5586. </member>
  5587. <member name="F:log4net.Appender.UdpAppender.m_encoding">
  5588. <summary>
  5589. The encoding to use for the packet.
  5590. </summary>
  5591. </member>
  5592. <member name="P:log4net.Appender.UdpAppender.RemoteAddress">
  5593. <summary>
  5594. Gets or sets the IP address of the remote host or multicast group to which
  5595. the underlying <see cref="T:System.Net.Sockets.UdpClient"/> should sent the logging event.
  5596. </summary>
  5597. <value>
  5598. The IP address of the remote host or multicast group to which the logging event
  5599. will be sent.
  5600. </value>
  5601. <remarks>
  5602. <para>
  5603. Multicast addresses are identified by IP class <b>D</b> addresses (in the range 224.0.0.0 to
  5604. 239.255.255.255). Multicast packets can pass across different networks through routers, so
  5605. it is possible to use multicasts in an Internet scenario as long as your network provider
  5606. supports multicasting.
  5607. </para>
  5608. <para>
  5609. Hosts that want to receive particular multicast messages must register their interest by joining
  5610. the multicast group. Multicast messages are not sent to networks where no host has joined
  5611. the multicast group. Class <b>D</b> IP addresses are used for multicast groups, to differentiate
  5612. them from normal host addresses, allowing nodes to easily detect if a message is of interest.
  5613. </para>
  5614. <para>
  5615. Static multicast addresses that are needed globally are assigned by IANA. A few examples are listed in the table below:
  5616. </para>
  5617. <para>
  5618. <list type="table">
  5619. <listheader>
  5620. <term>IP Address</term>
  5621. <description>Description</description>
  5622. </listheader>
  5623. <item>
  5624. <term>224.0.0.1</term>
  5625. <description>
  5626. <para>
  5627. Sends a message to all system on the subnet.
  5628. </para>
  5629. </description>
  5630. </item>
  5631. <item>
  5632. <term>224.0.0.2</term>
  5633. <description>
  5634. <para>
  5635. Sends a message to all routers on the subnet.
  5636. </para>
  5637. </description>
  5638. </item>
  5639. <item>
  5640. <term>224.0.0.12</term>
  5641. <description>
  5642. <para>
  5643. The DHCP server answers messages on the IP address 224.0.0.12, but only on a subnet.
  5644. </para>
  5645. </description>
  5646. </item>
  5647. </list>
  5648. </para>
  5649. <para>
  5650. A complete list of actually reserved multicast addresses and their owners in the ranges
  5651. defined by RFC 3171 can be found at the <A href="http://www.iana.org/assignments/multicast-addresses">IANA web site</A>.
  5652. </para>
  5653. <para>
  5654. The address range 239.0.0.0 to 239.255.255.255 is reserved for administrative scope-relative
  5655. addresses. These addresses can be reused with other local groups. Routers are typically
  5656. configured with filters to prevent multicast traffic in this range from flowing outside
  5657. of the local network.
  5658. </para>
  5659. </remarks>
  5660. </member>
  5661. <member name="P:log4net.Appender.UdpAppender.RemotePort">
  5662. <summary>
  5663. Gets or sets the TCP port number of the remote host or multicast group to which
  5664. the underlying <see cref="T:System.Net.Sockets.UdpClient"/> should sent the logging event.
  5665. </summary>
  5666. <value>
  5667. An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/>
  5668. indicating the TCP port number of the remote host or multicast group to which the logging event
  5669. will be sent.
  5670. </value>
  5671. <remarks>
  5672. The underlying <see cref="T:System.Net.Sockets.UdpClient"/> will send messages to this TCP port number
  5673. on the remote host or multicast group.
  5674. </remarks>
  5675. <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>
  5676. </member>
  5677. <member name="P:log4net.Appender.UdpAppender.LocalPort">
  5678. <summary>
  5679. Gets or sets the TCP port number from which the underlying <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.
  5680. </summary>
  5681. <value>
  5682. An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/>
  5683. indicating the TCP port number from which the underlying <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.
  5684. </value>
  5685. <remarks>
  5686. <para>
  5687. The underlying <see cref="T:System.Net.Sockets.UdpClient"/> will bind to this port for sending messages.
  5688. </para>
  5689. <para>
  5690. Setting the value to 0 (the default) will cause the udp client not to bind to
  5691. a local port.
  5692. </para>
  5693. </remarks>
  5694. <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>
  5695. </member>
  5696. <member name="P:log4net.Appender.UdpAppender.Encoding">
  5697. <summary>
  5698. Gets or sets <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.
  5699. </summary>
  5700. <value>
  5701. The <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.
  5702. </value>
  5703. <remarks>
  5704. <para>
  5705. The <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.
  5706. </para>
  5707. </remarks>
  5708. </member>
  5709. <member name="P:log4net.Appender.UdpAppender.Client">
  5710. <summary>
  5711. Gets or sets the underlying <see cref="T:System.Net.Sockets.UdpClient"/>.
  5712. </summary>
  5713. <value>
  5714. The underlying <see cref="T:System.Net.Sockets.UdpClient"/>.
  5715. </value>
  5716. <remarks>
  5717. <see cref="T:log4net.Appender.UdpAppender"/> creates a <see cref="T:System.Net.Sockets.UdpClient"/> to send logging events
  5718. over a network. Classes deriving from <see cref="T:log4net.Appender.UdpAppender"/> can use this
  5719. property to get or set this <see cref="T:System.Net.Sockets.UdpClient"/>. Use the underlying <see cref="T:System.Net.Sockets.UdpClient"/>
  5720. returned from <see cref="P:log4net.Appender.UdpAppender.Client"/> if you require access beyond that which
  5721. <see cref="T:log4net.Appender.UdpAppender"/> provides.
  5722. </remarks>
  5723. </member>
  5724. <member name="P:log4net.Appender.UdpAppender.RemoteEndPoint">
  5725. <summary>
  5726. Gets or sets the cached remote endpoint to which the logging events should be sent.
  5727. </summary>
  5728. <value>
  5729. The cached remote endpoint to which the logging events will be sent.
  5730. </value>
  5731. <remarks>
  5732. The <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> method will initialize the remote endpoint
  5733. with the values of the <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> and <see cref="P:log4net.Appender.UdpAppender.RemotePort"/>
  5734. properties.
  5735. </remarks>
  5736. </member>
  5737. <member name="P:log4net.Appender.UdpAppender.RequiresLayout">
  5738. <summary>
  5739. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5740. </summary>
  5741. <value><c>true</c></value>
  5742. <remarks>
  5743. <para>
  5744. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  5745. </para>
  5746. </remarks>
  5747. </member>
  5748. <member name="F:log4net.Appender.RemoteSyslogAppender.DefaultSyslogPort">
  5749. <summary>
  5750. Syslog port 514
  5751. </summary>
  5752. </member>
  5753. <member name="M:log4net.Appender.RemoteSyslogAppender.#ctor">
  5754. <summary>
  5755. Initializes a new instance of the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> class.
  5756. </summary>
  5757. <remarks>
  5758. This instance of the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> class is set up to write
  5759. to a remote syslog daemon.
  5760. </remarks>
  5761. </member>
  5762. <member name="M:log4net.Appender.RemoteSyslogAppender.AddMapping(log4net.Appender.RemoteSyslogAppender.LevelSeverity)">
  5763. <summary>
  5764. Add a mapping of level to severity
  5765. </summary>
  5766. <param name="mapping">The mapping to add</param>
  5767. <remarks>
  5768. <para>
  5769. Add a <see cref="T:log4net.Appender.RemoteSyslogAppender.LevelSeverity"/> mapping to this appender.
  5770. </para>
  5771. </remarks>
  5772. </member>
  5773. <member name="M:log4net.Appender.RemoteSyslogAppender.Append(log4net.Core.LoggingEvent)">
  5774. <summary>
  5775. This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.
  5776. </summary>
  5777. <param name="loggingEvent">The event to log.</param>
  5778. <remarks>
  5779. <para>
  5780. Writes the event to a remote syslog daemon.
  5781. </para>
  5782. <para>
  5783. The format of the output will depend on the appender's layout.
  5784. </para>
  5785. </remarks>
  5786. </member>
  5787. <member name="M:log4net.Appender.RemoteSyslogAppender.ActivateOptions">
  5788. <summary>
  5789. Initialize the options for this appender
  5790. </summary>
  5791. <remarks>
  5792. <para>
  5793. Initialize the level to syslog severity mappings set on this appender.
  5794. </para>
  5795. </remarks>
  5796. </member>
  5797. <member name="M:log4net.Appender.RemoteSyslogAppender.GetSeverity(log4net.Core.Level)">
  5798. <summary>
  5799. Translates a log4net level to a syslog severity.
  5800. </summary>
  5801. <param name="level">A log4net level.</param>
  5802. <returns>A syslog severity.</returns>
  5803. <remarks>
  5804. <para>
  5805. Translates a log4net level to a syslog severity.
  5806. </para>
  5807. </remarks>
  5808. </member>
  5809. <member name="M:log4net.Appender.RemoteSyslogAppender.GeneratePriority(log4net.Appender.RemoteSyslogAppender.SyslogFacility,log4net.Appender.RemoteSyslogAppender.SyslogSeverity)">
  5810. <summary>
  5811. Generate a syslog priority.
  5812. </summary>
  5813. <param name="facility">The syslog facility.</param>
  5814. <param name="severity">The syslog severity.</param>
  5815. <returns>A syslog priority.</returns>
  5816. <remarks>
  5817. <para>
  5818. Generate a syslog priority.
  5819. </para>
  5820. </remarks>
  5821. </member>
  5822. <member name="F:log4net.Appender.RemoteSyslogAppender.m_facility">
  5823. <summary>
  5824. The facility. The default facility is <see cref="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User"/>.
  5825. </summary>
  5826. </member>
  5827. <member name="F:log4net.Appender.RemoteSyslogAppender.m_identity">
  5828. <summary>
  5829. The message identity
  5830. </summary>
  5831. </member>
  5832. <member name="F:log4net.Appender.RemoteSyslogAppender.m_levelMapping">
  5833. <summary>
  5834. Mapping from level object to syslog severity
  5835. </summary>
  5836. </member>
  5837. <member name="P:log4net.Appender.RemoteSyslogAppender.Identity">
  5838. <summary>
  5839. Message identity
  5840. </summary>
  5841. <remarks>
  5842. <para>
  5843. An identifier is specified with each log message. This can be specified
  5844. by setting the <see cref="P:log4net.Appender.RemoteSyslogAppender.Identity"/> property. The identity (also know
  5845. as the tag) must not contain white space. The default value for the
  5846. identity is the application name (from <see cref="P:log4net.Core.LoggingEvent.Domain"/>).
  5847. </para>
  5848. </remarks>
  5849. </member>
  5850. <member name="P:log4net.Appender.RemoteSyslogAppender.Facility">
  5851. <summary>
  5852. Syslog facility
  5853. </summary>
  5854. <remarks>
  5855. Set to one of the <see cref="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility"/> values. The list of
  5856. facilities is predefined and cannot be extended. The default value
  5857. is <see cref="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User"/>.
  5858. </remarks>
  5859. </member>
  5860. <member name="T:log4net.Appender.RemoteSyslogAppender.SyslogSeverity">
  5861. <summary>
  5862. syslog severities
  5863. </summary>
  5864. <remarks>
  5865. <para>
  5866. The syslog severities.
  5867. </para>
  5868. </remarks>
  5869. </member>
  5870. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Emergency">
  5871. <summary>
  5872. system is unusable
  5873. </summary>
  5874. </member>
  5875. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Alert">
  5876. <summary>
  5877. action must be taken immediately
  5878. </summary>
  5879. </member>
  5880. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Critical">
  5881. <summary>
  5882. critical conditions
  5883. </summary>
  5884. </member>
  5885. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Error">
  5886. <summary>
  5887. error conditions
  5888. </summary>
  5889. </member>
  5890. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Warning">
  5891. <summary>
  5892. warning conditions
  5893. </summary>
  5894. </member>
  5895. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Notice">
  5896. <summary>
  5897. normal but significant condition
  5898. </summary>
  5899. </member>
  5900. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Informational">
  5901. <summary>
  5902. informational
  5903. </summary>
  5904. </member>
  5905. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Debug">
  5906. <summary>
  5907. debug-level messages
  5908. </summary>
  5909. </member>
  5910. <member name="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility">
  5911. <summary>
  5912. syslog facilities
  5913. </summary>
  5914. <remarks>
  5915. <para>
  5916. The syslog facilities
  5917. </para>
  5918. </remarks>
  5919. </member>
  5920. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Kernel">
  5921. <summary>
  5922. kernel messages
  5923. </summary>
  5924. </member>
  5925. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User">
  5926. <summary>
  5927. random user-level messages
  5928. </summary>
  5929. </member>
  5930. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Mail">
  5931. <summary>
  5932. mail system
  5933. </summary>
  5934. </member>
  5935. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Daemons">
  5936. <summary>
  5937. system daemons
  5938. </summary>
  5939. </member>
  5940. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Authorization">
  5941. <summary>
  5942. security/authorization messages
  5943. </summary>
  5944. </member>
  5945. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Syslog">
  5946. <summary>
  5947. messages generated internally by syslogd
  5948. </summary>
  5949. </member>
  5950. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Printer">
  5951. <summary>
  5952. line printer subsystem
  5953. </summary>
  5954. </member>
  5955. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.News">
  5956. <summary>
  5957. network news subsystem
  5958. </summary>
  5959. </member>
  5960. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Uucp">
  5961. <summary>
  5962. UUCP subsystem
  5963. </summary>
  5964. </member>
  5965. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Clock">
  5966. <summary>
  5967. clock (cron/at) daemon
  5968. </summary>
  5969. </member>
  5970. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Authorization2">
  5971. <summary>
  5972. security/authorization messages (private)
  5973. </summary>
  5974. </member>
  5975. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Ftp">
  5976. <summary>
  5977. ftp daemon
  5978. </summary>
  5979. </member>
  5980. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Ntp">
  5981. <summary>
  5982. NTP subsystem
  5983. </summary>
  5984. </member>
  5985. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Audit">
  5986. <summary>
  5987. log audit
  5988. </summary>
  5989. </member>
  5990. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Alert">
  5991. <summary>
  5992. log alert
  5993. </summary>
  5994. </member>
  5995. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Clock2">
  5996. <summary>
  5997. clock daemon
  5998. </summary>
  5999. </member>
  6000. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local0">
  6001. <summary>
  6002. reserved for local use
  6003. </summary>
  6004. </member>
  6005. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local1">
  6006. <summary>
  6007. reserved for local use
  6008. </summary>
  6009. </member>
  6010. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local2">
  6011. <summary>
  6012. reserved for local use
  6013. </summary>
  6014. </member>
  6015. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local3">
  6016. <summary>
  6017. reserved for local use
  6018. </summary>
  6019. </member>
  6020. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local4">
  6021. <summary>
  6022. reserved for local use
  6023. </summary>
  6024. </member>
  6025. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local5">
  6026. <summary>
  6027. reserved for local use
  6028. </summary>
  6029. </member>
  6030. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local6">
  6031. <summary>
  6032. reserved for local use
  6033. </summary>
  6034. </member>
  6035. <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local7">
  6036. <summary>
  6037. reserved for local use
  6038. </summary>
  6039. </member>
  6040. <member name="T:log4net.Appender.RemoteSyslogAppender.LevelSeverity">
  6041. <summary>
  6042. A class to act as a mapping between the level that a logging call is made at and
  6043. the syslog severity that is should be logged at.
  6044. </summary>
  6045. <remarks>
  6046. <para>
  6047. A class to act as a mapping between the level that a logging call is made at and
  6048. the syslog severity that is should be logged at.
  6049. </para>
  6050. </remarks>
  6051. </member>
  6052. <member name="P:log4net.Appender.RemoteSyslogAppender.LevelSeverity.Severity">
  6053. <summary>
  6054. The mapped syslog severity for the specified level
  6055. </summary>
  6056. <remarks>
  6057. <para>
  6058. Required property.
  6059. The mapped syslog severity for the specified level
  6060. </para>
  6061. </remarks>
  6062. </member>
  6063. <member name="T:log4net.Appender.RemotingAppender">
  6064. <summary>
  6065. Delivers logging events to a remote logging sink.
  6066. </summary>
  6067. <remarks>
  6068. <para>
  6069. This Appender is designed to deliver events to a remote sink.
  6070. That is any object that implements the <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>
  6071. interface. It delivers the events using .NET remoting. The
  6072. object to deliver events to is specified by setting the
  6073. appenders <see cref="P:log4net.Appender.RemotingAppender.Sink"/> property.</para>
  6074. <para>
  6075. The RemotingAppender buffers events before sending them. This allows it to
  6076. make more efficient use of the remoting infrastructure.</para>
  6077. <para>
  6078. Once the buffer is full the events are still not sent immediately.
  6079. They are scheduled to be sent using a pool thread. The effect is that
  6080. the send occurs asynchronously. This is very important for a
  6081. number of non obvious reasons. The remoting infrastructure will
  6082. flow thread local variables (stored in the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>),
  6083. if they are marked as <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>, across the
  6084. remoting boundary. If the server is not contactable then
  6085. the remoting infrastructure will clear the <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>
  6086. objects from the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>. To prevent a logging failure from
  6087. having side effects on the calling application the remoting call must be made
  6088. from a separate thread to the one used by the application. A <see cref="T:System.Threading.ThreadPool"/>
  6089. thread is used for this. If no <see cref="T:System.Threading.ThreadPool"/> thread is available then
  6090. the events will block in the thread pool manager until a thread is available.</para>
  6091. <para>
  6092. Because the events are sent asynchronously using pool threads it is possible to close
  6093. this appender before all the queued events have been sent.
  6094. When closing the appender attempts to wait until all the queued events have been sent, but
  6095. this will timeout after 30 seconds regardless.</para>
  6096. <para>
  6097. If this appender is being closed because the <see cref="E:System.AppDomain.ProcessExit"/>
  6098. event has fired it may not be possible to send all the queued events. During process
  6099. exit the runtime limits the time that a <see cref="E:System.AppDomain.ProcessExit"/>
  6100. event handler is allowed to run for. If the runtime terminates the threads before
  6101. the queued events have been sent then they will be lost. To ensure that all events
  6102. are sent the appender must be closed before the application exits. See
  6103. <see cref="M:log4net.Core.LoggerManager.Shutdown"/> for details on how to shutdown
  6104. log4net programmatically.</para>
  6105. </remarks>
  6106. <seealso cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>
  6107. <author>Nicko Cadell</author>
  6108. <author>Gert Driesen</author>
  6109. <author>Daniel Cazzulino</author>
  6110. </member>
  6111. <member name="M:log4net.Appender.RemotingAppender.#ctor">
  6112. <summary>
  6113. Initializes a new instance of the <see cref="T:log4net.Appender.RemotingAppender"/> class.
  6114. </summary>
  6115. <remarks>
  6116. <para>
  6117. Default constructor.
  6118. </para>
  6119. </remarks>
  6120. </member>
  6121. <member name="M:log4net.Appender.RemotingAppender.ActivateOptions">
  6122. <summary>
  6123. Initialize the appender based on the options set
  6124. </summary>
  6125. <remarks>
  6126. <para>
  6127. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  6128. activation scheme. The <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> method must
  6129. be called on this object after the configuration properties have
  6130. been set. Until <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> is called this
  6131. object is in an undefined state and must not be used.
  6132. </para>
  6133. <para>
  6134. If any of the configuration properties are modified then
  6135. <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> must be called again.
  6136. </para>
  6137. </remarks>
  6138. </member>
  6139. <member name="M:log4net.Appender.RemotingAppender.SendBuffer(log4net.Core.LoggingEvent[])">
  6140. <summary>
  6141. Send the contents of the buffer to the remote sink.
  6142. </summary>
  6143. <remarks>
  6144. The events are not sent immediately. They are scheduled to be sent
  6145. using a pool thread. The effect is that the send occurs asynchronously.
  6146. This is very important for a number of non obvious reasons. The remoting
  6147. infrastructure will flow thread local variables (stored in the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>),
  6148. if they are marked as <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>, across the
  6149. remoting boundary. If the server is not contactable then
  6150. the remoting infrastructure will clear the <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>
  6151. objects from the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>. To prevent a logging failure from
  6152. having side effects on the calling application the remoting call must be made
  6153. from a separate thread to the one used by the application. A <see cref="T:System.Threading.ThreadPool"/>
  6154. thread is used for this. If no <see cref="T:System.Threading.ThreadPool"/> thread is available then
  6155. the events will block in the thread pool manager until a thread is available.
  6156. </remarks>
  6157. <param name="events">The events to send.</param>
  6158. </member>
  6159. <member name="M:log4net.Appender.RemotingAppender.OnClose">
  6160. <summary>
  6161. Override base class close.
  6162. </summary>
  6163. <remarks>
  6164. <para>
  6165. This method waits while there are queued work items. The events are
  6166. sent asynchronously using <see cref="T:System.Threading.ThreadPool"/> work items. These items
  6167. will be sent once a thread pool thread is available to send them, therefore
  6168. it is possible to close the appender before all the queued events have been
  6169. sent.</para>
  6170. <para>
  6171. This method attempts to wait until all the queued events have been sent, but this
  6172. method will timeout after 30 seconds regardless.</para>
  6173. <para>
  6174. If the appender is being closed because the <see cref="E:System.AppDomain.ProcessExit"/>
  6175. event has fired it may not be possible to send all the queued events. During process
  6176. exit the runtime limits the time that a <see cref="E:System.AppDomain.ProcessExit"/>
  6177. event handler is allowed to run for.</para>
  6178. </remarks>
  6179. </member>
  6180. <member name="M:log4net.Appender.RemotingAppender.BeginAsyncSend">
  6181. <summary>
  6182. A work item is being queued into the thread pool
  6183. </summary>
  6184. </member>
  6185. <member name="M:log4net.Appender.RemotingAppender.EndAsyncSend">
  6186. <summary>
  6187. A work item from the thread pool has completed
  6188. </summary>
  6189. </member>
  6190. <member name="M:log4net.Appender.RemotingAppender.SendBufferCallback(System.Object)">
  6191. <summary>
  6192. Send the contents of the buffer to the remote sink.
  6193. </summary>
  6194. <remarks>
  6195. This method is designed to be used with the <see cref="T:System.Threading.ThreadPool"/>.
  6196. This method expects to be passed an array of <see cref="T:log4net.Core.LoggingEvent"/>
  6197. objects in the state param.
  6198. </remarks>
  6199. <param name="state">the logging events to send</param>
  6200. </member>
  6201. <member name="F:log4net.Appender.RemotingAppender.m_sinkUrl">
  6202. <summary>
  6203. The URL of the remote sink.
  6204. </summary>
  6205. </member>
  6206. <member name="F:log4net.Appender.RemotingAppender.m_sinkObj">
  6207. <summary>
  6208. The local proxy (.NET remoting) for the remote logging sink.
  6209. </summary>
  6210. </member>
  6211. <member name="F:log4net.Appender.RemotingAppender.m_queuedCallbackCount">
  6212. <summary>
  6213. The number of queued callbacks currently waiting or executing
  6214. </summary>
  6215. </member>
  6216. <member name="F:log4net.Appender.RemotingAppender.m_workQueueEmptyEvent">
  6217. <summary>
  6218. Event used to signal when there are no queued work items
  6219. </summary>
  6220. <remarks>
  6221. This event is set when there are no queued work items. In this
  6222. state it is safe to close the appender.
  6223. </remarks>
  6224. </member>
  6225. <member name="P:log4net.Appender.RemotingAppender.Sink">
  6226. <summary>
  6227. Gets or sets the URL of the well-known object that will accept
  6228. the logging events.
  6229. </summary>
  6230. <value>
  6231. The well-known URL of the remote sink.
  6232. </value>
  6233. <remarks>
  6234. <para>
  6235. The URL of the remoting sink that will accept logging events.
  6236. The sink must implement the <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>
  6237. interface.
  6238. </para>
  6239. </remarks>
  6240. </member>
  6241. <member name="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink">
  6242. <summary>
  6243. Interface used to deliver <see cref="T:log4net.Core.LoggingEvent"/> objects to a remote sink.
  6244. </summary>
  6245. <remarks>
  6246. This interface must be implemented by a remoting sink
  6247. if the <see cref="T:log4net.Appender.RemotingAppender"/> is to be used
  6248. to deliver logging events to the sink.
  6249. </remarks>
  6250. </member>
  6251. <member name="M:log4net.Appender.RemotingAppender.IRemoteLoggingSink.LogEvents(log4net.Core.LoggingEvent[])">
  6252. <summary>
  6253. Delivers logging events to the remote sink
  6254. </summary>
  6255. <param name="events">Array of events to log.</param>
  6256. <remarks>
  6257. <para>
  6258. Delivers logging events to the remote sink
  6259. </para>
  6260. </remarks>
  6261. </member>
  6262. <member name="T:log4net.Appender.RollingFileAppender">
  6263. <summary>
  6264. Appender that rolls log files based on size or date or both.
  6265. </summary>
  6266. <remarks>
  6267. <para>
  6268. RollingFileAppender can roll log files based on size or date or both
  6269. depending on the setting of the <see cref="P:log4net.Appender.RollingFileAppender.RollingStyle"/> property.
  6270. When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Size"/> the log file will be rolled
  6271. once its size exceeds the <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/>.
  6272. When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Date"/> the log file will be rolled
  6273. once the date boundary specified in the <see cref="P:log4net.Appender.RollingFileAppender.DatePattern"/> property
  6274. is crossed.
  6275. When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Composite"/> the log file will be
  6276. rolled once the date boundary specified in the <see cref="P:log4net.Appender.RollingFileAppender.DatePattern"/> property
  6277. is crossed, but within a date boundary the file will also be rolled
  6278. once its size exceeds the <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/>.
  6279. When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Once"/> the log file will be rolled when
  6280. the appender is configured. This effectively means that the log file can be
  6281. rolled once per program execution.
  6282. </para>
  6283. <para>
  6284. A of few additional optional features have been added:
  6285. <list type="bullet">
  6286. <item>Attach date pattern for current log file <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/></item>
  6287. <item>Backup number increments for newer files <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/></item>
  6288. <item>Infinite number of backups by file size <see cref="P:log4net.Appender.RollingFileAppender.MaxSizeRollBackups"/></item>
  6289. </list>
  6290. </para>
  6291. <note>
  6292. <para>
  6293. For large or infinite numbers of backup files a <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/>
  6294. greater than zero is highly recommended, otherwise all the backup files need
  6295. to be renamed each time a new backup is created.
  6296. </para>
  6297. <para>
  6298. When Date/Time based rolling is used setting <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/>
  6299. to <see langword="true"/> will reduce the number of file renamings to few or none.
  6300. </para>
  6301. </note>
  6302. <note type="caution">
  6303. <para>
  6304. Changing <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/> or <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> without clearing
  6305. the log file directory of backup files will cause unexpected and unwanted side effects.
  6306. </para>
  6307. </note>
  6308. <para>
  6309. If Date/Time based rolling is enabled this appender will attempt to roll existing files
  6310. in the directory without a Date/Time tag based on the last write date of the base log file.
  6311. The appender only rolls the log file when a message is logged. If Date/Time based rolling
  6312. is enabled then the appender will not roll the log file at the Date/Time boundary but
  6313. at the point when the next message is logged after the boundary has been crossed.
  6314. </para>
  6315. <para>
  6316. The <see cref="T:log4net.Appender.RollingFileAppender"/> extends the <see cref="T:log4net.Appender.FileAppender"/> and
  6317. has the same behavior when opening the log file.
  6318. The appender will first try to open the file for writing when <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>
  6319. is called. This will typically be during configuration.
  6320. If the file cannot be opened for writing the appender will attempt
  6321. to open the file again each time a message is logged to the appender.
  6322. If the file cannot be opened for writing when a message is logged then
  6323. the message will be discarded by this appender.
  6324. </para>
  6325. <para>
  6326. When rolling a backup file necessitates deleting an older backup file the
  6327. file to be deleted is moved to a temporary name before being deleted.
  6328. </para>
  6329. <note type="caution">
  6330. <para>
  6331. A maximum number of backup files when rolling on date/time boundaries is not supported.
  6332. </para>
  6333. </note>
  6334. </remarks>
  6335. <author>Nicko Cadell</author>
  6336. <author>Gert Driesen</author>
  6337. <author>Aspi Havewala</author>
  6338. <author>Douglas de la Torre</author>
  6339. <author>Edward Smit</author>
  6340. </member>
  6341. <member name="M:log4net.Appender.RollingFileAppender.#ctor">
  6342. <summary>
  6343. Initializes a new instance of the <see cref="T:log4net.Appender.RollingFileAppender"/> class.
  6344. </summary>
  6345. <remarks>
  6346. <para>
  6347. Default constructor.
  6348. </para>
  6349. </remarks>
  6350. </member>
  6351. <member name="M:log4net.Appender.RollingFileAppender.SetQWForFiles(System.IO.TextWriter)">
  6352. <summary>
  6353. Sets the quiet writer being used.
  6354. </summary>
  6355. <remarks>
  6356. This method can be overridden by sub classes.
  6357. </remarks>
  6358. <param name="writer">the writer to set</param>
  6359. </member>
  6360. <member name="M:log4net.Appender.RollingFileAppender.Append(log4net.Core.LoggingEvent)">
  6361. <summary>
  6362. Write out a logging event.
  6363. </summary>
  6364. <param name="loggingEvent">the event to write to file.</param>
  6365. <remarks>
  6366. <para>
  6367. Handles append time behavior for RollingFileAppender. This checks
  6368. if a roll over either by date (checked first) or time (checked second)
  6369. is need and then appends to the file last.
  6370. </para>
  6371. </remarks>
  6372. </member>
  6373. <member name="M:log4net.Appender.RollingFileAppender.Append(log4net.Core.LoggingEvent[])">
  6374. <summary>
  6375. Write out an array of logging events.
  6376. </summary>
  6377. <param name="loggingEvents">the events to write to file.</param>
  6378. <remarks>
  6379. <para>
  6380. Handles append time behavior for RollingFileAppender. This checks
  6381. if a roll over either by date (checked first) or time (checked second)
  6382. is need and then appends to the file last.
  6383. </para>
  6384. </remarks>
  6385. </member>
  6386. <member name="M:log4net.Appender.RollingFileAppender.AdjustFileBeforeAppend">
  6387. <summary>
  6388. Performs any required rolling before outputting the next event
  6389. </summary>
  6390. <remarks>
  6391. <para>
  6392. Handles append time behavior for RollingFileAppender. This checks
  6393. if a roll over either by date (checked first) or time (checked second)
  6394. is need and then appends to the file last.
  6395. </para>
  6396. </remarks>
  6397. </member>
  6398. <member name="M:log4net.Appender.RollingFileAppender.OpenFile(System.String,System.Boolean)">
  6399. <summary>
  6400. Creates and opens the file for logging. If <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/>
  6401. is false then the fully qualified name is determined and used.
  6402. </summary>
  6403. <param name="fileName">the name of the file to open</param>
  6404. <param name="append">true to append to existing file</param>
  6405. <remarks>
  6406. <para>This method will ensure that the directory structure
  6407. for the <paramref name="fileName"/> specified exists.</para>
  6408. </remarks>
  6409. </member>
  6410. <member name="M:log4net.Appender.RollingFileAppender.GetNextOutputFileName(System.String)">
  6411. <summary>
  6412. Get the current output file name
  6413. </summary>
  6414. <param name="fileName">the base file name</param>
  6415. <returns>the output file name</returns>
  6416. <remarks>
  6417. The output file name is based on the base fileName specified.
  6418. If <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/> is set then the output
  6419. file name is the same as the base file passed in. Otherwise
  6420. the output file depends on the date pattern, on the count
  6421. direction or both.
  6422. </remarks>
  6423. </member>
  6424. <member name="M:log4net.Appender.RollingFileAppender.DetermineCurSizeRollBackups">
  6425. <summary>
  6426. Determines curSizeRollBackups (only within the current roll point)
  6427. </summary>
  6428. </member>
  6429. <member name="M:log4net.Appender.RollingFileAppender.GetWildcardPatternForFile(System.String)">
  6430. <summary>
  6431. Generates a wildcard pattern that can be used to find all files
  6432. that are similar to the base file name.
  6433. </summary>
  6434. <param name="baseFileName"></param>
  6435. <returns></returns>
  6436. </member>
  6437. <member name="M:log4net.Appender.RollingFileAppender.GetExistingFiles(System.String)">
  6438. <summary>
  6439. Builds a list of filenames for all files matching the base filename plus a file
  6440. pattern.
  6441. </summary>
  6442. <param name="baseFilePath"></param>
  6443. <returns></returns>
  6444. </member>
  6445. <member name="M:log4net.Appender.RollingFileAppender.RollOverIfDateBoundaryCrossing">
  6446. <summary>
  6447. Initiates a roll over if needed for crossing a date boundary since the last run.
  6448. </summary>
  6449. </member>
  6450. <member name="M:log4net.Appender.RollingFileAppender.ExistingInit">
  6451. <summary>
  6452. Initializes based on existing conditions at time of <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>.
  6453. </summary>
  6454. <remarks>
  6455. <para>
  6456. Initializes based on existing conditions at time of <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>.
  6457. The following is done
  6458. <list type="bullet">
  6459. <item>determine curSizeRollBackups (only within the current roll point)</item>
  6460. <item>initiates a roll over if needed for crossing a date boundary since the last run.</item>
  6461. </list>
  6462. </para>
  6463. </remarks>
  6464. </member>
  6465. <member name="M:log4net.Appender.RollingFileAppender.InitializeFromOneFile(System.String,System.String)">
  6466. <summary>
  6467. Does the work of bumping the 'current' file counter higher
  6468. to the highest count when an incremental file name is seen.
  6469. The highest count is either the first file (when count direction
  6470. is greater than 0) or the last file (when count direction less than 0).
  6471. In either case, we want to know the highest count that is present.
  6472. </summary>
  6473. <param name="baseFile"></param>
  6474. <param name="curFileName"></param>
  6475. </member>
  6476. <member name="M:log4net.Appender.RollingFileAppender.InitializeRollBackups(System.String,System.Collections.ArrayList)">
  6477. <summary>
  6478. Takes a list of files and a base file name, and looks for
  6479. 'incremented' versions of the base file. Bumps the max
  6480. count up to the highest count seen.
  6481. </summary>
  6482. <param name="baseFile"></param>
  6483. <param name="arrayFiles"></param>
  6484. </member>
  6485. <member name="M:log4net.Appender.RollingFileAppender.ComputeCheckPeriod(System.String)">
  6486. <summary>
  6487. Calculates the RollPoint for the datePattern supplied.
  6488. </summary>
  6489. <param name="datePattern">the date pattern to calculate the check period for</param>
  6490. <returns>The RollPoint that is most accurate for the date pattern supplied</returns>
  6491. <remarks>
  6492. Essentially the date pattern is examined to determine what the
  6493. most suitable roll point is. The roll point chosen is the roll point
  6494. with the smallest period that can be detected using the date pattern
  6495. supplied. i.e. if the date pattern only outputs the year, month, day
  6496. and hour then the smallest roll point that can be detected would be
  6497. and hourly roll point as minutes could not be detected.
  6498. </remarks>
  6499. </member>
  6500. <member name="M:log4net.Appender.RollingFileAppender.ActivateOptions">
  6501. <summary>
  6502. Initialize the appender based on the options set
  6503. </summary>
  6504. <remarks>
  6505. <para>
  6506. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  6507. activation scheme. The <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> method must
  6508. be called on this object after the configuration properties have
  6509. been set. Until <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> is called this
  6510. object is in an undefined state and must not be used.
  6511. </para>
  6512. <para>
  6513. If any of the configuration properties are modified then
  6514. <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> must be called again.
  6515. </para>
  6516. <para>
  6517. Sets initial conditions including date/time roll over information, first check,
  6518. scheduledFilename, and calls <see cref="M:log4net.Appender.RollingFileAppender.ExistingInit"/> to initialize
  6519. the current number of backups.
  6520. </para>
  6521. </remarks>
  6522. </member>
  6523. <member name="M:log4net.Appender.RollingFileAppender.RollOverTime(System.Boolean)">
  6524. <summary>
  6525. Rollover the file(s) to date/time tagged file(s).
  6526. </summary>
  6527. <param name="fileIsOpen">set to true if the file to be rolled is currently open</param>
  6528. <remarks>
  6529. <para>
  6530. Rollover the file(s) to date/time tagged file(s).
  6531. Resets curSizeRollBackups.
  6532. If fileIsOpen is set then the new file is opened (through SafeOpenFile).
  6533. </para>
  6534. </remarks>
  6535. </member>
  6536. <member name="M:log4net.Appender.RollingFileAppender.RollFile(System.String,System.String)">
  6537. <summary>
  6538. Renames file <paramref name="fromFile"/> to file <paramref name="toFile"/>.
  6539. </summary>
  6540. <param name="fromFile">Name of existing file to roll.</param>
  6541. <param name="toFile">New name for file.</param>
  6542. <remarks>
  6543. <para>
  6544. Renames file <paramref name="fromFile"/> to file <paramref name="toFile"/>. It
  6545. also checks for existence of target file and deletes if it does.
  6546. </para>
  6547. </remarks>
  6548. </member>
  6549. <member name="M:log4net.Appender.RollingFileAppender.FileExists(System.String)">
  6550. <summary>
  6551. Test if a file exists at a specified path
  6552. </summary>
  6553. <param name="path">the path to the file</param>
  6554. <returns>true if the file exists</returns>
  6555. <remarks>
  6556. <para>
  6557. Test if a file exists at a specified path
  6558. </para>
  6559. </remarks>
  6560. </member>
  6561. <member name="M:log4net.Appender.RollingFileAppender.DeleteFile(System.String)">
  6562. <summary>
  6563. Deletes the specified file if it exists.
  6564. </summary>
  6565. <param name="fileName">The file to delete.</param>
  6566. <remarks>
  6567. <para>
  6568. Delete a file if is exists.
  6569. The file is first moved to a new filename then deleted.
  6570. This allows the file to be removed even when it cannot
  6571. be deleted, but it still can be moved.
  6572. </para>
  6573. </remarks>
  6574. </member>
  6575. <member name="M:log4net.Appender.RollingFileAppender.RollOverSize">
  6576. <summary>
  6577. Implements file roll base on file size.
  6578. </summary>
  6579. <remarks>
  6580. <para>
  6581. If the maximum number of size based backups is reached
  6582. (<c>curSizeRollBackups == maxSizeRollBackups</c>) then the oldest
  6583. file is deleted -- its index determined by the sign of countDirection.
  6584. If <c>countDirection</c> &lt; 0, then files
  6585. {<c>File.1</c>, ..., <c>File.curSizeRollBackups -1</c>}
  6586. are renamed to {<c>File.2</c>, ...,
  6587. <c>File.curSizeRollBackups</c>}. Moreover, <c>File</c> is
  6588. renamed <c>File.1</c> and closed.
  6589. </para>
  6590. <para>
  6591. A new file is created to receive further log output.
  6592. </para>
  6593. <para>
  6594. If <c>maxSizeRollBackups</c> is equal to zero, then the
  6595. <c>File</c> is truncated with no backup files created.
  6596. </para>
  6597. <para>
  6598. If <c>maxSizeRollBackups</c> &lt; 0, then <c>File</c> is
  6599. renamed if needed and no files are deleted.
  6600. </para>
  6601. </remarks>
  6602. </member>
  6603. <member name="M:log4net.Appender.RollingFileAppender.RollOverRenameFiles(System.String)">
  6604. <summary>
  6605. Implements file roll.
  6606. </summary>
  6607. <param name="baseFileName">the base name to rename</param>
  6608. <remarks>
  6609. <para>
  6610. If the maximum number of size based backups is reached
  6611. (<c>curSizeRollBackups == maxSizeRollBackups</c>) then the oldest
  6612. file is deleted -- its index determined by the sign of countDirection.
  6613. If <c>countDirection</c> &lt; 0, then files
  6614. {<c>File.1</c>, ..., <c>File.curSizeRollBackups -1</c>}
  6615. are renamed to {<c>File.2</c>, ...,
  6616. <c>File.curSizeRollBackups</c>}.
  6617. </para>
  6618. <para>
  6619. If <c>maxSizeRollBackups</c> is equal to zero, then the
  6620. <c>File</c> is truncated with no backup files created.
  6621. </para>
  6622. <para>
  6623. If <c>maxSizeRollBackups</c> &lt; 0, then <c>File</c> is
  6624. renamed if needed and no files are deleted.
  6625. </para>
  6626. <para>
  6627. This is called by <see cref="M:log4net.Appender.RollingFileAppender.RollOverSize"/> to rename the files.
  6628. </para>
  6629. </remarks>
  6630. </member>
  6631. <member name="M:log4net.Appender.RollingFileAppender.NextCheckDate(System.DateTime,log4net.Appender.RollingFileAppender.RollPoint)">
  6632. <summary>
  6633. Get the start time of the next window for the current rollpoint
  6634. </summary>
  6635. <param name="currentDateTime">the current date</param>
  6636. <param name="rollPoint">the type of roll point we are working with</param>
  6637. <returns>the start time for the next roll point an interval after the currentDateTime date</returns>
  6638. <remarks>
  6639. <para>
  6640. Returns the date of the next roll point after the currentDateTime date passed to the method.
  6641. </para>
  6642. <para>
  6643. The basic strategy is to subtract the time parts that are less significant
  6644. than the rollpoint from the current time. This should roll the time back to
  6645. the start of the time window for the current rollpoint. Then we add 1 window
  6646. worth of time and get the start time of the next window for the rollpoint.
  6647. </para>
  6648. </remarks>
  6649. </member>
  6650. <member name="F:log4net.Appender.RollingFileAppender.m_dateTime">
  6651. <summary>
  6652. This object supplies the current date/time. Allows test code to plug in
  6653. a method to control this class when testing date/time based rolling.
  6654. </summary>
  6655. </member>
  6656. <member name="F:log4net.Appender.RollingFileAppender.m_datePattern">
  6657. <summary>
  6658. The date pattern. By default, the pattern is set to <c>".yyyy-MM-dd"</c>
  6659. meaning daily rollover.
  6660. </summary>
  6661. </member>
  6662. <member name="F:log4net.Appender.RollingFileAppender.m_scheduledFilename">
  6663. <summary>
  6664. The actual formatted filename that is currently being written to
  6665. or will be the file transferred to on roll over
  6666. (based on staticLogFileName).
  6667. </summary>
  6668. </member>
  6669. <member name="F:log4net.Appender.RollingFileAppender.m_nextCheck">
  6670. <summary>
  6671. The timestamp when we shall next recompute the filename.
  6672. </summary>
  6673. </member>
  6674. <member name="F:log4net.Appender.RollingFileAppender.m_now">
  6675. <summary>
  6676. Holds date of last roll over
  6677. </summary>
  6678. </member>
  6679. <member name="F:log4net.Appender.RollingFileAppender.m_rollPoint">
  6680. <summary>
  6681. The type of rolling done
  6682. </summary>
  6683. </member>
  6684. <member name="F:log4net.Appender.RollingFileAppender.m_maxFileSize">
  6685. <summary>
  6686. The default maximum file size is 10MB
  6687. </summary>
  6688. </member>
  6689. <member name="F:log4net.Appender.RollingFileAppender.m_maxSizeRollBackups">
  6690. <summary>
  6691. There is zero backup files by default
  6692. </summary>
  6693. </member>
  6694. <member name="F:log4net.Appender.RollingFileAppender.m_curSizeRollBackups">
  6695. <summary>
  6696. How many sized based backups have been made so far
  6697. </summary>
  6698. </member>
  6699. <member name="F:log4net.Appender.RollingFileAppender.m_countDirection">
  6700. <summary>
  6701. The rolling file count direction.
  6702. </summary>
  6703. </member>
  6704. <member name="F:log4net.Appender.RollingFileAppender.m_rollingStyle">
  6705. <summary>
  6706. The rolling mode used in this appender.
  6707. </summary>
  6708. </member>
  6709. <member name="F:log4net.Appender.RollingFileAppender.m_rollDate">
  6710. <summary>
  6711. Cache flag set if we are rolling by date.
  6712. </summary>
  6713. </member>
  6714. <member name="F:log4net.Appender.RollingFileAppender.m_rollSize">
  6715. <summary>
  6716. Cache flag set if we are rolling by size.
  6717. </summary>
  6718. </member>
  6719. <member name="F:log4net.Appender.RollingFileAppender.m_staticLogFileName">
  6720. <summary>
  6721. Value indicating whether to always log to the same file.
  6722. </summary>
  6723. </member>
  6724. <member name="F:log4net.Appender.RollingFileAppender.m_baseFileName">
  6725. <summary>
  6726. FileName provided in configuration. Used for rolling properly
  6727. </summary>
  6728. </member>
  6729. <member name="F:log4net.Appender.RollingFileAppender.s_date1970">
  6730. <summary>
  6731. The 1st of January 1970 in UTC
  6732. </summary>
  6733. </member>
  6734. <member name="P:log4net.Appender.RollingFileAppender.DatePattern">
  6735. <summary>
  6736. Gets or sets the date pattern to be used for generating file names
  6737. when rolling over on date.
  6738. </summary>
  6739. <value>
  6740. The date pattern to be used for generating file names when rolling
  6741. over on date.
  6742. </value>
  6743. <remarks>
  6744. <para>
  6745. Takes a string in the same format as expected by
  6746. <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/>.
  6747. </para>
  6748. <para>
  6749. This property determines the rollover schedule when rolling over
  6750. on date.
  6751. </para>
  6752. </remarks>
  6753. </member>
  6754. <member name="P:log4net.Appender.RollingFileAppender.MaxSizeRollBackups">
  6755. <summary>
  6756. Gets or sets the maximum number of backup files that are kept before
  6757. the oldest is erased.
  6758. </summary>
  6759. <value>
  6760. The maximum number of backup files that are kept before the oldest is
  6761. erased.
  6762. </value>
  6763. <remarks>
  6764. <para>
  6765. If set to zero, then there will be no backup files and the log file
  6766. will be truncated when it reaches <see cref="P:log4net.Appender.RollingFileAppender.MaxFileSize"/>.
  6767. </para>
  6768. <para>
  6769. If a negative number is supplied then no deletions will be made. Note
  6770. that this could result in very slow performance as a large number of
  6771. files are rolled over unless <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> is used.
  6772. </para>
  6773. <para>
  6774. The maximum applies to <b>each</b> time based group of files and
  6775. <b>not</b> the total.
  6776. </para>
  6777. </remarks>
  6778. </member>
  6779. <member name="P:log4net.Appender.RollingFileAppender.MaxFileSize">
  6780. <summary>
  6781. Gets or sets the maximum size that the output file is allowed to reach
  6782. before being rolled over to backup files.
  6783. </summary>
  6784. <value>
  6785. The maximum size in bytes that the output file is allowed to reach before being
  6786. rolled over to backup files.
  6787. </value>
  6788. <remarks>
  6789. <para>
  6790. This property is equivalent to <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/> except
  6791. that it is required for differentiating the setter taking a
  6792. <see cref="T:System.Int64"/> argument from the setter taking a <see cref="T:System.String"/>
  6793. argument.
  6794. </para>
  6795. <para>
  6796. The default maximum file size is 10MB (10*1024*1024).
  6797. </para>
  6798. </remarks>
  6799. </member>
  6800. <member name="P:log4net.Appender.RollingFileAppender.MaximumFileSize">
  6801. <summary>
  6802. Gets or sets the maximum size that the output file is allowed to reach
  6803. before being rolled over to backup files.
  6804. </summary>
  6805. <value>
  6806. The maximum size that the output file is allowed to reach before being
  6807. rolled over to backup files.
  6808. </value>
  6809. <remarks>
  6810. <para>
  6811. This property allows you to specify the maximum size with the
  6812. suffixes "KB", "MB" or "GB" so that the size is interpreted being
  6813. expressed respectively in kilobytes, megabytes or gigabytes.
  6814. </para>
  6815. <para>
  6816. For example, the value "10KB" will be interpreted as 10240 bytes.
  6817. </para>
  6818. <para>
  6819. The default maximum file size is 10MB.
  6820. </para>
  6821. <para>
  6822. If you have the option to set the maximum file size programmatically
  6823. consider using the <see cref="P:log4net.Appender.RollingFileAppender.MaxFileSize"/> property instead as this
  6824. allows you to set the size in bytes as a <see cref="T:System.Int64"/>.
  6825. </para>
  6826. </remarks>
  6827. </member>
  6828. <member name="P:log4net.Appender.RollingFileAppender.CountDirection">
  6829. <summary>
  6830. Gets or sets the rolling file count direction.
  6831. </summary>
  6832. <value>
  6833. The rolling file count direction.
  6834. </value>
  6835. <remarks>
  6836. <para>
  6837. Indicates if the current file is the lowest numbered file or the
  6838. highest numbered file.
  6839. </para>
  6840. <para>
  6841. By default newer files have lower numbers (<see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &lt; 0),
  6842. i.e. log.1 is most recent, log.5 is the 5th backup, etc...
  6843. </para>
  6844. <para>
  6845. <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &gt;= 0 does the opposite i.e.
  6846. log.1 is the first backup made, log.5 is the 5th backup made, etc.
  6847. For infinite backups use <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &gt;= 0 to reduce
  6848. rollover costs.
  6849. </para>
  6850. <para>The default file count direction is -1.</para>
  6851. </remarks>
  6852. </member>
  6853. <member name="P:log4net.Appender.RollingFileAppender.RollingStyle">
  6854. <summary>
  6855. Gets or sets the rolling style.
  6856. </summary>
  6857. <value>The rolling style.</value>
  6858. <remarks>
  6859. <para>
  6860. The default rolling style is <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Composite"/>.
  6861. </para>
  6862. <para>
  6863. When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Once"/> this appender's
  6864. <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property is set to <c>false</c>, otherwise
  6865. the appender would append to a single file rather than rolling
  6866. the file each time it is opened.
  6867. </para>
  6868. </remarks>
  6869. </member>
  6870. <member name="P:log4net.Appender.RollingFileAppender.StaticLogFileName">
  6871. <summary>
  6872. Gets or sets a value indicating whether to always log to
  6873. the same file.
  6874. </summary>
  6875. <value>
  6876. <c>true</c> if always should be logged to the same file, otherwise <c>false</c>.
  6877. </value>
  6878. <remarks>
  6879. <para>
  6880. By default file.log is always the current file. Optionally
  6881. file.log.yyyy-mm-dd for current formatted datePattern can by the currently
  6882. logging file (or file.log.curSizeRollBackup or even
  6883. file.log.yyyy-mm-dd.curSizeRollBackup).
  6884. </para>
  6885. <para>
  6886. This will make time based rollovers with a large number of backups
  6887. much faster as the appender it won't have to rename all the backups!
  6888. </para>
  6889. </remarks>
  6890. </member>
  6891. <member name="T:log4net.Appender.RollingFileAppender.RollingMode">
  6892. <summary>
  6893. Style of rolling to use
  6894. </summary>
  6895. <remarks>
  6896. <para>
  6897. Style of rolling to use
  6898. </para>
  6899. </remarks>
  6900. </member>
  6901. <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Once">
  6902. <summary>
  6903. Roll files once per program execution
  6904. </summary>
  6905. <remarks>
  6906. <para>
  6907. Roll files once per program execution.
  6908. Well really once each time this appender is
  6909. configured.
  6910. </para>
  6911. <para>
  6912. Setting this option also sets <c>AppendToFile</c> to
  6913. <c>false</c> on the <c>RollingFileAppender</c>, otherwise
  6914. this appender would just be a normal file appender.
  6915. </para>
  6916. </remarks>
  6917. </member>
  6918. <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Size">
  6919. <summary>
  6920. Roll files based only on the size of the file
  6921. </summary>
  6922. </member>
  6923. <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Date">
  6924. <summary>
  6925. Roll files based only on the date
  6926. </summary>
  6927. </member>
  6928. <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Composite">
  6929. <summary>
  6930. Roll files based on both the size and date of the file
  6931. </summary>
  6932. </member>
  6933. <member name="T:log4net.Appender.RollingFileAppender.RollPoint">
  6934. <summary>
  6935. The code assumes that the following 'time' constants are in a increasing sequence.
  6936. </summary>
  6937. <remarks>
  6938. <para>
  6939. The code assumes that the following 'time' constants are in a increasing sequence.
  6940. </para>
  6941. </remarks>
  6942. </member>
  6943. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.InvalidRollPoint">
  6944. <summary>
  6945. Roll the log not based on the date
  6946. </summary>
  6947. </member>
  6948. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfMinute">
  6949. <summary>
  6950. Roll the log for each minute
  6951. </summary>
  6952. </member>
  6953. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfHour">
  6954. <summary>
  6955. Roll the log for each hour
  6956. </summary>
  6957. </member>
  6958. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.HalfDay">
  6959. <summary>
  6960. Roll the log twice a day (midday and midnight)
  6961. </summary>
  6962. </member>
  6963. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfDay">
  6964. <summary>
  6965. Roll the log each day (midnight)
  6966. </summary>
  6967. </member>
  6968. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfWeek">
  6969. <summary>
  6970. Roll the log each week
  6971. </summary>
  6972. </member>
  6973. <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfMonth">
  6974. <summary>
  6975. Roll the log each month
  6976. </summary>
  6977. </member>
  6978. <member name="T:log4net.Appender.RollingFileAppender.IDateTime">
  6979. <summary>
  6980. This interface is used to supply Date/Time information to the <see cref="T:log4net.Appender.RollingFileAppender"/>.
  6981. </summary>
  6982. <remarks>
  6983. This interface is used to supply Date/Time information to the <see cref="T:log4net.Appender.RollingFileAppender"/>.
  6984. Used primarily to allow test classes to plug themselves in so they can
  6985. supply test date/times.
  6986. </remarks>
  6987. </member>
  6988. <member name="P:log4net.Appender.RollingFileAppender.IDateTime.Now">
  6989. <summary>
  6990. Gets the <i>current</i> time.
  6991. </summary>
  6992. <value>The <i>current</i> time.</value>
  6993. <remarks>
  6994. <para>
  6995. Gets the <i>current</i> time.
  6996. </para>
  6997. </remarks>
  6998. </member>
  6999. <member name="T:log4net.Appender.RollingFileAppender.DefaultDateTime">
  7000. <summary>
  7001. Default implementation of <see cref="T:log4net.Appender.RollingFileAppender.IDateTime"/> that returns the current time.
  7002. </summary>
  7003. </member>
  7004. <member name="P:log4net.Appender.RollingFileAppender.DefaultDateTime.Now">
  7005. <summary>
  7006. Gets the <b>current</b> time.
  7007. </summary>
  7008. <value>The <b>current</b> time.</value>
  7009. <remarks>
  7010. <para>
  7011. Gets the <b>current</b> time.
  7012. </para>
  7013. </remarks>
  7014. </member>
  7015. <member name="T:log4net.Appender.SmtpAppender">
  7016. <summary>
  7017. Send an e-mail when a specific logging event occurs, typically on errors
  7018. or fatal errors.
  7019. </summary>
  7020. <remarks>
  7021. <para>
  7022. The number of logging events delivered in this e-mail depend on
  7023. the value of <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option. The
  7024. <see cref="T:log4net.Appender.SmtpAppender"/> keeps only the last
  7025. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> logging events in its
  7026. cyclic buffer. This keeps memory requirements at a reasonable level while
  7027. still delivering useful application context.
  7028. </para>
  7029. <note type="caution">
  7030. Authentication and setting the server Port are only available on the MS .NET 1.1 runtime.
  7031. For these features to be enabled you need to ensure that you are using a version of
  7032. the log4net assembly that is built against the MS .NET 1.1 framework and that you are
  7033. running the your application on the MS .NET 1.1 runtime. On all other platforms only sending
  7034. unauthenticated messages to a server listening on port 25 (the default) is supported.
  7035. </note>
  7036. <para>
  7037. Authentication is supported by setting the <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> property to
  7038. either <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> or <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/>.
  7039. If using <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> authentication then the <see cref="P:log4net.Appender.SmtpAppender.Username"/>
  7040. and <see cref="P:log4net.Appender.SmtpAppender.Password"/> properties must also be set.
  7041. </para>
  7042. <para>
  7043. To set the SMTP server port use the <see cref="P:log4net.Appender.SmtpAppender.Port"/> property. The default port is 25.
  7044. </para>
  7045. </remarks>
  7046. <author>Nicko Cadell</author>
  7047. <author>Gert Driesen</author>
  7048. </member>
  7049. <member name="M:log4net.Appender.SmtpAppender.#ctor">
  7050. <summary>
  7051. Default constructor
  7052. </summary>
  7053. <remarks>
  7054. <para>
  7055. Default constructor
  7056. </para>
  7057. </remarks>
  7058. </member>
  7059. <member name="M:log4net.Appender.SmtpAppender.SendBuffer(log4net.Core.LoggingEvent[])">
  7060. <summary>
  7061. Sends the contents of the cyclic buffer as an e-mail message.
  7062. </summary>
  7063. <param name="events">The logging events to send.</param>
  7064. </member>
  7065. <member name="M:log4net.Appender.SmtpAppender.SendEmail(System.String)">
  7066. <summary>
  7067. Send the email message
  7068. </summary>
  7069. <param name="messageBody">the body text to include in the mail</param>
  7070. </member>
  7071. <member name="P:log4net.Appender.SmtpAppender.To">
  7072. <summary>
  7073. Gets or sets a semicolon-delimited list of recipient e-mail addresses.
  7074. </summary>
  7075. <value>
  7076. A semicolon-delimited list of e-mail addresses.
  7077. </value>
  7078. <remarks>
  7079. <para>
  7080. A semicolon-delimited list of recipient e-mail addresses.
  7081. </para>
  7082. </remarks>
  7083. </member>
  7084. <member name="P:log4net.Appender.SmtpAppender.From">
  7085. <summary>
  7086. Gets or sets the e-mail address of the sender.
  7087. </summary>
  7088. <value>
  7089. The e-mail address of the sender.
  7090. </value>
  7091. <remarks>
  7092. <para>
  7093. The e-mail address of the sender.
  7094. </para>
  7095. </remarks>
  7096. </member>
  7097. <member name="P:log4net.Appender.SmtpAppender.Subject">
  7098. <summary>
  7099. Gets or sets the subject line of the e-mail message.
  7100. </summary>
  7101. <value>
  7102. The subject line of the e-mail message.
  7103. </value>
  7104. <remarks>
  7105. <para>
  7106. The subject line of the e-mail message.
  7107. </para>
  7108. </remarks>
  7109. </member>
  7110. <member name="P:log4net.Appender.SmtpAppender.SmtpHost">
  7111. <summary>
  7112. Gets or sets the name of the SMTP relay mail server to use to send
  7113. the e-mail messages.
  7114. </summary>
  7115. <value>
  7116. The name of the e-mail relay server. If SmtpServer is not set, the
  7117. name of the local SMTP server is used.
  7118. </value>
  7119. <remarks>
  7120. <para>
  7121. The name of the e-mail relay server. If SmtpServer is not set, the
  7122. name of the local SMTP server is used.
  7123. </para>
  7124. </remarks>
  7125. </member>
  7126. <member name="P:log4net.Appender.SmtpAppender.LocationInfo">
  7127. <summary>
  7128. Obsolete
  7129. </summary>
  7130. <remarks>
  7131. Use the BufferingAppenderSkeleton Fix methods instead
  7132. </remarks>
  7133. <remarks>
  7134. <para>
  7135. Obsolete property.
  7136. </para>
  7137. </remarks>
  7138. </member>
  7139. <member name="P:log4net.Appender.SmtpAppender.Authentication">
  7140. <summary>
  7141. The mode to use to authentication with the SMTP server
  7142. </summary>
  7143. <remarks>
  7144. <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>
  7145. <para>
  7146. Valid Authentication mode values are: <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None"/>,
  7147. <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>, and <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/>.
  7148. The default value is <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None"/>. When using
  7149. <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> you must specify the <see cref="P:log4net.Appender.SmtpAppender.Username"/>
  7150. and <see cref="P:log4net.Appender.SmtpAppender.Password"/> to use to authenticate.
  7151. When using <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/> the Windows credentials for the current
  7152. thread, if impersonating, or the process will be used to authenticate.
  7153. </para>
  7154. </remarks>
  7155. </member>
  7156. <member name="P:log4net.Appender.SmtpAppender.Username">
  7157. <summary>
  7158. The username to use to authenticate with the SMTP server
  7159. </summary>
  7160. <remarks>
  7161. <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>
  7162. <para>
  7163. A <see cref="P:log4net.Appender.SmtpAppender.Username"/> and <see cref="P:log4net.Appender.SmtpAppender.Password"/> must be specified when
  7164. <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> is set to <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>,
  7165. otherwise the username will be ignored.
  7166. </para>
  7167. </remarks>
  7168. </member>
  7169. <member name="P:log4net.Appender.SmtpAppender.Password">
  7170. <summary>
  7171. The password to use to authenticate with the SMTP server
  7172. </summary>
  7173. <remarks>
  7174. <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>
  7175. <para>
  7176. A <see cref="P:log4net.Appender.SmtpAppender.Username"/> and <see cref="P:log4net.Appender.SmtpAppender.Password"/> must be specified when
  7177. <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> is set to <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>,
  7178. otherwise the password will be ignored.
  7179. </para>
  7180. </remarks>
  7181. </member>
  7182. <member name="P:log4net.Appender.SmtpAppender.Port">
  7183. <summary>
  7184. The port on which the SMTP server is listening
  7185. </summary>
  7186. <remarks>
  7187. <note type="caution">Server Port is only available on the MS .NET 1.1 runtime.</note>
  7188. <para>
  7189. The port on which the SMTP server is listening. The default
  7190. port is <c>25</c>. The Port can only be changed when running on
  7191. the MS .NET 1.1 runtime.
  7192. </para>
  7193. </remarks>
  7194. </member>
  7195. <member name="P:log4net.Appender.SmtpAppender.Priority">
  7196. <summary>
  7197. Gets or sets the priority of the e-mail message
  7198. </summary>
  7199. <value>
  7200. One of the <see cref="T:System.Net.Mail.MailPriority"/> values.
  7201. </value>
  7202. <remarks>
  7203. <para>
  7204. Sets the priority of the e-mails generated by this
  7205. appender. The default priority is <see cref="F:System.Net.Mail.MailPriority.Normal"/>.
  7206. </para>
  7207. <para>
  7208. If you are using this appender to report errors then
  7209. you may want to set the priority to <see cref="F:System.Net.Mail.MailPriority.High"/>.
  7210. </para>
  7211. </remarks>
  7212. </member>
  7213. <member name="P:log4net.Appender.SmtpAppender.RequiresLayout">
  7214. <summary>
  7215. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7216. </summary>
  7217. <value><c>true</c></value>
  7218. <remarks>
  7219. <para>
  7220. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7221. </para>
  7222. </remarks>
  7223. </member>
  7224. <member name="T:log4net.Appender.SmtpAppender.SmtpAuthentication">
  7225. <summary>
  7226. Values for the <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> property.
  7227. </summary>
  7228. <remarks>
  7229. <para>
  7230. SMTP authentication modes.
  7231. </para>
  7232. </remarks>
  7233. </member>
  7234. <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None">
  7235. <summary>
  7236. No authentication
  7237. </summary>
  7238. </member>
  7239. <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic">
  7240. <summary>
  7241. Basic authentication.
  7242. </summary>
  7243. <remarks>
  7244. Requires a username and password to be supplied
  7245. </remarks>
  7246. </member>
  7247. <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm">
  7248. <summary>
  7249. Integrated authentication
  7250. </summary>
  7251. <remarks>
  7252. Uses the Windows credentials from the current thread or process to authenticate.
  7253. </remarks>
  7254. </member>
  7255. <member name="T:log4net.Appender.SmtpPickupDirAppender">
  7256. <summary>
  7257. Send an email when a specific logging event occurs, typically on errors
  7258. or fatal errors. Rather than sending via smtp it writes a file into the
  7259. directory specified by <see cref="P:log4net.Appender.SmtpPickupDirAppender.PickupDir"/>. This allows services such
  7260. as the IIS SMTP agent to manage sending the messages.
  7261. </summary>
  7262. <remarks>
  7263. <para>
  7264. The configuration for this appender is identical to that of the <c>SMTPAppender</c>,
  7265. except that instead of specifying the <c>SMTPAppender.SMTPHost</c> you specify
  7266. <see cref="P:log4net.Appender.SmtpPickupDirAppender.PickupDir"/>.
  7267. </para>
  7268. <para>
  7269. The number of logging events delivered in this e-mail depend on
  7270. the value of <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option. The
  7271. <see cref="T:log4net.Appender.SmtpPickupDirAppender"/> keeps only the last
  7272. <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> logging events in its
  7273. cyclic buffer. This keeps memory requirements at a reasonable level while
  7274. still delivering useful application context.
  7275. </para>
  7276. </remarks>
  7277. <author>Niall Daley</author>
  7278. <author>Nicko Cadell</author>
  7279. </member>
  7280. <member name="M:log4net.Appender.SmtpPickupDirAppender.#ctor">
  7281. <summary>
  7282. Default constructor
  7283. </summary>
  7284. <remarks>
  7285. <para>
  7286. Default constructor
  7287. </para>
  7288. </remarks>
  7289. </member>
  7290. <member name="M:log4net.Appender.SmtpPickupDirAppender.SendBuffer(log4net.Core.LoggingEvent[])">
  7291. <summary>
  7292. Sends the contents of the cyclic buffer as an e-mail message.
  7293. </summary>
  7294. <param name="events">The logging events to send.</param>
  7295. <remarks>
  7296. <para>
  7297. Sends the contents of the cyclic buffer as an e-mail message.
  7298. </para>
  7299. </remarks>
  7300. </member>
  7301. <member name="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions">
  7302. <summary>
  7303. Activate the options on this appender.
  7304. </summary>
  7305. <remarks>
  7306. <para>
  7307. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  7308. activation scheme. The <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> method must
  7309. be called on this object after the configuration properties have
  7310. been set. Until <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> is called this
  7311. object is in an undefined state and must not be used.
  7312. </para>
  7313. <para>
  7314. If any of the configuration properties are modified then
  7315. <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> must be called again.
  7316. </para>
  7317. </remarks>
  7318. </member>
  7319. <member name="M:log4net.Appender.SmtpPickupDirAppender.ConvertToFullPath(System.String)">
  7320. <summary>
  7321. Convert a path into a fully qualified path.
  7322. </summary>
  7323. <param name="path">The path to convert.</param>
  7324. <returns>The fully qualified path.</returns>
  7325. <remarks>
  7326. <para>
  7327. Converts the path specified to a fully
  7328. qualified path. If the path is relative it is
  7329. taken as relative from the application base
  7330. directory.
  7331. </para>
  7332. </remarks>
  7333. </member>
  7334. <member name="F:log4net.Appender.SmtpPickupDirAppender.m_securityContext">
  7335. <summary>
  7336. The security context to use for privileged calls
  7337. </summary>
  7338. </member>
  7339. <member name="P:log4net.Appender.SmtpPickupDirAppender.To">
  7340. <summary>
  7341. Gets or sets a semicolon-delimited list of recipient e-mail addresses.
  7342. </summary>
  7343. <value>
  7344. A semicolon-delimited list of e-mail addresses.
  7345. </value>
  7346. <remarks>
  7347. <para>
  7348. A semicolon-delimited list of e-mail addresses.
  7349. </para>
  7350. </remarks>
  7351. </member>
  7352. <member name="P:log4net.Appender.SmtpPickupDirAppender.From">
  7353. <summary>
  7354. Gets or sets the e-mail address of the sender.
  7355. </summary>
  7356. <value>
  7357. The e-mail address of the sender.
  7358. </value>
  7359. <remarks>
  7360. <para>
  7361. The e-mail address of the sender.
  7362. </para>
  7363. </remarks>
  7364. </member>
  7365. <member name="P:log4net.Appender.SmtpPickupDirAppender.Subject">
  7366. <summary>
  7367. Gets or sets the subject line of the e-mail message.
  7368. </summary>
  7369. <value>
  7370. The subject line of the e-mail message.
  7371. </value>
  7372. <remarks>
  7373. <para>
  7374. The subject line of the e-mail message.
  7375. </para>
  7376. </remarks>
  7377. </member>
  7378. <member name="P:log4net.Appender.SmtpPickupDirAppender.PickupDir">
  7379. <summary>
  7380. Gets or sets the path to write the messages to.
  7381. </summary>
  7382. <remarks>
  7383. <para>
  7384. Gets or sets the path to write the messages to. This should be the same
  7385. as that used by the agent sending the messages.
  7386. </para>
  7387. </remarks>
  7388. </member>
  7389. <member name="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext">
  7390. <summary>
  7391. Gets or sets the <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> used to write to the pickup directory.
  7392. </summary>
  7393. <value>
  7394. The <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> used to write to the pickup directory.
  7395. </value>
  7396. <remarks>
  7397. <para>
  7398. Unless a <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> specified here for this appender
  7399. the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the
  7400. security context to use. The default behavior is to use the security context
  7401. of the current thread.
  7402. </para>
  7403. </remarks>
  7404. </member>
  7405. <member name="P:log4net.Appender.SmtpPickupDirAppender.RequiresLayout">
  7406. <summary>
  7407. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7408. </summary>
  7409. <value><c>true</c></value>
  7410. <remarks>
  7411. <para>
  7412. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7413. </para>
  7414. </remarks>
  7415. </member>
  7416. <member name="T:log4net.Appender.TelnetAppender">
  7417. <summary>
  7418. Appender that allows clients to connect via Telnet to receive log messages
  7419. </summary>
  7420. <remarks>
  7421. <para>
  7422. The TelnetAppender accepts socket connections and streams logging messages
  7423. back to the client.
  7424. The output is provided in a telnet-friendly way so that a log can be monitored
  7425. over a TCP/IP socket.
  7426. This allows simple remote monitoring of application logging.
  7427. </para>
  7428. <para>
  7429. The default <see cref="P:log4net.Appender.TelnetAppender.Port"/> is 23 (the telnet port).
  7430. </para>
  7431. </remarks>
  7432. <author>Keith Long</author>
  7433. <author>Nicko Cadell</author>
  7434. </member>
  7435. <member name="M:log4net.Appender.TelnetAppender.#ctor">
  7436. <summary>
  7437. Default constructor
  7438. </summary>
  7439. <remarks>
  7440. <para>
  7441. Default constructor
  7442. </para>
  7443. </remarks>
  7444. </member>
  7445. <member name="M:log4net.Appender.TelnetAppender.OnClose">
  7446. <summary>
  7447. Overrides the parent method to close the socket handler
  7448. </summary>
  7449. <remarks>
  7450. <para>
  7451. Closes all the outstanding connections.
  7452. </para>
  7453. </remarks>
  7454. </member>
  7455. <member name="M:log4net.Appender.TelnetAppender.ActivateOptions">
  7456. <summary>
  7457. Initialize the appender based on the options set.
  7458. </summary>
  7459. <remarks>
  7460. <para>
  7461. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  7462. activation scheme. The <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> method must
  7463. be called on this object after the configuration properties have
  7464. been set. Until <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> is called this
  7465. object is in an undefined state and must not be used.
  7466. </para>
  7467. <para>
  7468. If any of the configuration properties are modified then
  7469. <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> must be called again.
  7470. </para>
  7471. <para>
  7472. Create the socket handler and wait for connections
  7473. </para>
  7474. </remarks>
  7475. </member>
  7476. <member name="M:log4net.Appender.TelnetAppender.Append(log4net.Core.LoggingEvent)">
  7477. <summary>
  7478. Writes the logging event to each connected client.
  7479. </summary>
  7480. <param name="loggingEvent">The event to log.</param>
  7481. <remarks>
  7482. <para>
  7483. Writes the logging event to each connected client.
  7484. </para>
  7485. </remarks>
  7486. </member>
  7487. <member name="P:log4net.Appender.TelnetAppender.Port">
  7488. <summary>
  7489. Gets or sets the TCP port number on which this <see cref="T:log4net.Appender.TelnetAppender"/> will listen for connections.
  7490. </summary>
  7491. <value>
  7492. An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/>
  7493. indicating the TCP port number on which this <see cref="T:log4net.Appender.TelnetAppender"/> will listen for connections.
  7494. </value>
  7495. <remarks>
  7496. <para>
  7497. The default value is 23 (the telnet port).
  7498. </para>
  7499. </remarks>
  7500. <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/>
  7501. or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>
  7502. </member>
  7503. <member name="P:log4net.Appender.TelnetAppender.RequiresLayout">
  7504. <summary>
  7505. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7506. </summary>
  7507. <value><c>true</c></value>
  7508. <remarks>
  7509. <para>
  7510. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7511. </para>
  7512. </remarks>
  7513. </member>
  7514. <member name="T:log4net.Appender.TelnetAppender.SocketHandler">
  7515. <summary>
  7516. Helper class to manage connected clients
  7517. </summary>
  7518. <remarks>
  7519. <para>
  7520. The SocketHandler class is used to accept connections from
  7521. clients. It is threaded so that clients can connect/disconnect
  7522. asynchronously.
  7523. </para>
  7524. </remarks>
  7525. </member>
  7526. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.#ctor(System.Int32)">
  7527. <summary>
  7528. Opens a new server port on <paramref ref="port"/>
  7529. </summary>
  7530. <param name="port">the local port to listen on for connections</param>
  7531. <remarks>
  7532. <para>
  7533. Creates a socket handler on the specified local server port.
  7534. </para>
  7535. </remarks>
  7536. </member>
  7537. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.Send(System.String)">
  7538. <summary>
  7539. Sends a string message to each of the connected clients
  7540. </summary>
  7541. <param name="message">the text to send</param>
  7542. <remarks>
  7543. <para>
  7544. Sends a string message to each of the connected clients
  7545. </para>
  7546. </remarks>
  7547. </member>
  7548. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.AddClient(log4net.Appender.TelnetAppender.SocketHandler.SocketClient)">
  7549. <summary>
  7550. Add a client to the internal clients list
  7551. </summary>
  7552. <param name="client">client to add</param>
  7553. </member>
  7554. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.RemoveClient(log4net.Appender.TelnetAppender.SocketHandler.SocketClient)">
  7555. <summary>
  7556. Remove a client from the internal clients list
  7557. </summary>
  7558. <param name="client">client to remove</param>
  7559. </member>
  7560. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.OnConnect(System.IAsyncResult)">
  7561. <summary>
  7562. Callback used to accept a connection on the server socket
  7563. </summary>
  7564. <param name="asyncResult">The result of the asynchronous operation</param>
  7565. <remarks>
  7566. <para>
  7567. On connection adds to the list of connections
  7568. if there are two many open connections you will be disconnected
  7569. </para>
  7570. </remarks>
  7571. </member>
  7572. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.Dispose">
  7573. <summary>
  7574. Close all network connections
  7575. </summary>
  7576. <remarks>
  7577. <para>
  7578. Make sure we close all network connections
  7579. </para>
  7580. </remarks>
  7581. </member>
  7582. <member name="P:log4net.Appender.TelnetAppender.SocketHandler.HasConnections">
  7583. <summary>
  7584. Test if this handler has active connections
  7585. </summary>
  7586. <value>
  7587. <c>true</c> if this handler has active connections
  7588. </value>
  7589. <remarks>
  7590. <para>
  7591. This property will be <c>true</c> while this handler has
  7592. active connections, that is at least one connection that
  7593. the handler will attempt to send a message to.
  7594. </para>
  7595. </remarks>
  7596. </member>
  7597. <member name="T:log4net.Appender.TelnetAppender.SocketHandler.SocketClient">
  7598. <summary>
  7599. Class that represents a client connected to this handler
  7600. </summary>
  7601. <remarks>
  7602. <para>
  7603. Class that represents a client connected to this handler
  7604. </para>
  7605. </remarks>
  7606. </member>
  7607. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.#ctor(System.Net.Sockets.Socket)">
  7608. <summary>
  7609. Create this <see cref="T:log4net.Appender.TelnetAppender.SocketHandler.SocketClient"/> for the specified <see cref="T:System.Net.Sockets.Socket"/>
  7610. </summary>
  7611. <param name="socket">the client's socket</param>
  7612. <remarks>
  7613. <para>
  7614. Opens a stream writer on the socket.
  7615. </para>
  7616. </remarks>
  7617. </member>
  7618. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.Send(System.String)">
  7619. <summary>
  7620. Write a string to the client
  7621. </summary>
  7622. <param name="message">string to send</param>
  7623. <remarks>
  7624. <para>
  7625. Write a string to the client
  7626. </para>
  7627. </remarks>
  7628. </member>
  7629. <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.Dispose">
  7630. <summary>
  7631. Cleanup the clients connection
  7632. </summary>
  7633. <remarks>
  7634. <para>
  7635. Close the socket connection.
  7636. </para>
  7637. </remarks>
  7638. </member>
  7639. <member name="T:log4net.Appender.TraceAppender">
  7640. <summary>
  7641. Appends log events to the <see cref="T:System.Diagnostics.Trace"/> system.
  7642. </summary>
  7643. <remarks>
  7644. <para>
  7645. The application configuration file can be used to control what listeners
  7646. are actually used. See the MSDN documentation for the
  7647. <see cref="T:System.Diagnostics.Trace"/> class for details on configuring the
  7648. trace system.
  7649. </para>
  7650. <para>
  7651. Events are written using the <c>System.Diagnostics.Trace.Write(string,string)</c>
  7652. method. The event's logger name is passed as the value for the category name to the Write method.
  7653. </para>
  7654. <para>
  7655. <b>Compact Framework</b><br/>
  7656. The Compact Framework does not support the <see cref="T:System.Diagnostics.Trace"/>
  7657. class for any operation except <c>Assert</c>. When using the Compact Framework this
  7658. appender will write to the <see cref="T:System.Diagnostics.Debug"/> system rather than
  7659. the Trace system. This appender will therefore behave like the <see cref="T:log4net.Appender.DebugAppender"/>.
  7660. </para>
  7661. </remarks>
  7662. <author>Douglas de la Torre</author>
  7663. <author>Nicko Cadell</author>
  7664. <author>Gert Driesen</author>
  7665. </member>
  7666. <member name="M:log4net.Appender.TraceAppender.#ctor">
  7667. <summary>
  7668. Initializes a new instance of the <see cref="T:log4net.Appender.TraceAppender"/>.
  7669. </summary>
  7670. <remarks>
  7671. <para>
  7672. Default constructor.
  7673. </para>
  7674. </remarks>
  7675. </member>
  7676. <member name="M:log4net.Appender.TraceAppender.#ctor(log4net.Layout.ILayout)">
  7677. <summary>
  7678. Initializes a new instance of the <see cref="T:log4net.Appender.TraceAppender"/>
  7679. with a specified layout.
  7680. </summary>
  7681. <param name="layout">The layout to use with this appender.</param>
  7682. <remarks>
  7683. <para>
  7684. Obsolete constructor.
  7685. </para>
  7686. </remarks>
  7687. </member>
  7688. <member name="M:log4net.Appender.TraceAppender.Append(log4net.Core.LoggingEvent)">
  7689. <summary>
  7690. Writes the logging event to the <see cref="T:System.Diagnostics.Trace"/> system.
  7691. </summary>
  7692. <param name="loggingEvent">The event to log.</param>
  7693. <remarks>
  7694. <para>
  7695. Writes the logging event to the <see cref="T:System.Diagnostics.Trace"/> system.
  7696. </para>
  7697. </remarks>
  7698. </member>
  7699. <member name="F:log4net.Appender.TraceAppender.m_immediateFlush">
  7700. <summary>
  7701. Immediate flush means that the underlying writer or output stream
  7702. will be flushed at the end of each append operation.
  7703. </summary>
  7704. <remarks>
  7705. <para>
  7706. Immediate flush is slower but ensures that each append request is
  7707. actually written. If <see cref="P:log4net.Appender.TraceAppender.ImmediateFlush"/> is set to
  7708. <c>false</c>, then there is a good chance that the last few
  7709. logs events are not actually written to persistent media if and
  7710. when the application crashes.
  7711. </para>
  7712. <para>
  7713. The default value is <c>true</c>.</para>
  7714. </remarks>
  7715. </member>
  7716. <member name="P:log4net.Appender.TraceAppender.ImmediateFlush">
  7717. <summary>
  7718. Gets or sets a value that indicates whether the appender will
  7719. flush at the end of each write.
  7720. </summary>
  7721. <remarks>
  7722. <para>The default behavior is to flush at the end of each
  7723. write. If the option is set to<c>false</c>, then the underlying
  7724. stream can defer writing to physical medium to a later time.
  7725. </para>
  7726. <para>
  7727. Avoiding the flush operation at the end of each append results
  7728. in a performance gain of 10 to 20 percent. However, there is safety
  7729. trade-off involved in skipping flushing. Indeed, when flushing is
  7730. skipped, then it is likely that the last few log events will not
  7731. be recorded on disk when the application exits. This is a high
  7732. price to pay even for a 20% performance gain.
  7733. </para>
  7734. </remarks>
  7735. </member>
  7736. <member name="P:log4net.Appender.TraceAppender.RequiresLayout">
  7737. <summary>
  7738. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7739. </summary>
  7740. <value><c>true</c></value>
  7741. <remarks>
  7742. <para>
  7743. This appender requires a <see cref="N:log4net.Layout"/> to be set.
  7744. </para>
  7745. </remarks>
  7746. </member>
  7747. <member name="T:log4net.Config.AliasDomainAttribute">
  7748. <summary>
  7749. Assembly level attribute that specifies a domain to alias to this assembly's repository.
  7750. </summary>
  7751. <remarks>
  7752. <para>
  7753. <b>AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute.</b>
  7754. </para>
  7755. <para>
  7756. An assembly's logger repository is defined by its <see cref="T:log4net.Config.DomainAttribute"/>,
  7757. however this can be overridden by an assembly loaded before the target assembly.
  7758. </para>
  7759. <para>
  7760. An assembly can alias another assembly's domain to its repository by
  7761. specifying this attribute with the name of the target domain.
  7762. </para>
  7763. <para>
  7764. This attribute can only be specified on the assembly and may be used
  7765. as many times as necessary to alias all the required domains.
  7766. </para>
  7767. </remarks>
  7768. <author>Nicko Cadell</author>
  7769. <author>Gert Driesen</author>
  7770. </member>
  7771. <member name="T:log4net.Config.AliasRepositoryAttribute">
  7772. <summary>
  7773. Assembly level attribute that specifies a repository to alias to this assembly's repository.
  7774. </summary>
  7775. <remarks>
  7776. <para>
  7777. An assembly's logger repository is defined by its <see cref="T:log4net.Config.RepositoryAttribute"/>,
  7778. however this can be overridden by an assembly loaded before the target assembly.
  7779. </para>
  7780. <para>
  7781. An assembly can alias another assembly's repository to its repository by
  7782. specifying this attribute with the name of the target repository.
  7783. </para>
  7784. <para>
  7785. This attribute can only be specified on the assembly and may be used
  7786. as many times as necessary to alias all the required repositories.
  7787. </para>
  7788. </remarks>
  7789. <author>Nicko Cadell</author>
  7790. <author>Gert Driesen</author>
  7791. </member>
  7792. <member name="M:log4net.Config.AliasRepositoryAttribute.#ctor(System.String)">
  7793. <summary>
  7794. Initializes a new instance of the <see cref="T:log4net.Config.AliasRepositoryAttribute"/> class with
  7795. the specified repository to alias to this assembly's repository.
  7796. </summary>
  7797. <param name="name">The repository to alias to this assemby's repository.</param>
  7798. <remarks>
  7799. <para>
  7800. Initializes a new instance of the <see cref="T:log4net.Config.AliasRepositoryAttribute"/> class with
  7801. the specified repository to alias to this assembly's repository.
  7802. </para>
  7803. </remarks>
  7804. </member>
  7805. <member name="P:log4net.Config.AliasRepositoryAttribute.Name">
  7806. <summary>
  7807. Gets or sets the repository to alias to this assemby's repository.
  7808. </summary>
  7809. <value>
  7810. The repository to alias to this assemby's repository.
  7811. </value>
  7812. <remarks>
  7813. <para>
  7814. The name of the repository to alias to this assemby's repository.
  7815. </para>
  7816. </remarks>
  7817. </member>
  7818. <member name="M:log4net.Config.AliasDomainAttribute.#ctor(System.String)">
  7819. <summary>
  7820. Initializes a new instance of the <see cref="T:log4net.Config.AliasDomainAttribute"/> class with
  7821. the specified domain to alias to this assembly's repository.
  7822. </summary>
  7823. <param name="name">The domain to alias to this assemby's repository.</param>
  7824. <remarks>
  7825. <para>
  7826. Obsolete. Use <see cref="T:log4net.Config.AliasRepositoryAttribute"/> instead of <see cref="T:log4net.Config.AliasDomainAttribute"/>.
  7827. </para>
  7828. </remarks>
  7829. </member>
  7830. <member name="T:log4net.Config.BasicConfigurator">
  7831. <summary>
  7832. Use this class to quickly configure a <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.
  7833. </summary>
  7834. <remarks>
  7835. <para>
  7836. Allows very simple programmatic configuration of log4net.
  7837. </para>
  7838. <para>
  7839. Only one appender can be configured using this configurator.
  7840. The appender is set at the root of the hierarchy and all logging
  7841. events will be delivered to that appender.
  7842. </para>
  7843. <para>
  7844. Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore
  7845. they would require that the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method
  7846. be called after the appenders properties have been configured.
  7847. </para>
  7848. </remarks>
  7849. <author>Nicko Cadell</author>
  7850. <author>Gert Driesen</author>
  7851. </member>
  7852. <member name="M:log4net.Config.BasicConfigurator.#ctor">
  7853. <summary>
  7854. Initializes a new instance of the <see cref="T:log4net.Config.BasicConfigurator"/> class.
  7855. </summary>
  7856. <remarks>
  7857. <para>
  7858. Uses a private access modifier to prevent instantiation of this class.
  7859. </para>
  7860. </remarks>
  7861. </member>
  7862. <member name="M:log4net.Config.BasicConfigurator.Configure">
  7863. <summary>
  7864. Initializes the log4net system with a default configuration.
  7865. </summary>
  7866. <remarks>
  7867. <para>
  7868. Initializes the log4net logging system using a <see cref="T:log4net.Appender.ConsoleAppender"/>
  7869. that will write to <c>Console.Out</c>. The log messages are
  7870. formatted using the <see cref="T:log4net.Layout.PatternLayout"/> layout object
  7871. with the <see cref="F:log4net.Layout.PatternLayout.DetailConversionPattern"/>
  7872. layout style.
  7873. </para>
  7874. </remarks>
  7875. </member>
  7876. <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Appender.IAppender)">
  7877. <summary>
  7878. Initializes the log4net system using the specified appender.
  7879. </summary>
  7880. <param name="appender">The appender to use to log all logging events.</param>
  7881. <remarks>
  7882. <para>
  7883. Initializes the log4net system using the specified appender.
  7884. </para>
  7885. </remarks>
  7886. </member>
  7887. <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Repository.ILoggerRepository)">
  7888. <summary>
  7889. Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> with a default configuration.
  7890. </summary>
  7891. <param name="repository">The repository to configure.</param>
  7892. <remarks>
  7893. <para>
  7894. Initializes the specified repository using a <see cref="T:log4net.Appender.ConsoleAppender"/>
  7895. that will write to <c>Console.Out</c>. The log messages are
  7896. formatted using the <see cref="T:log4net.Layout.PatternLayout"/> layout object
  7897. with the <see cref="F:log4net.Layout.PatternLayout.DetailConversionPattern"/>
  7898. layout style.
  7899. </para>
  7900. </remarks>
  7901. </member>
  7902. <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Repository.ILoggerRepository,log4net.Appender.IAppender)">
  7903. <summary>
  7904. Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified appender.
  7905. </summary>
  7906. <param name="repository">The repository to configure.</param>
  7907. <param name="appender">The appender to use to log all logging events.</param>
  7908. <remarks>
  7909. <para>
  7910. Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified appender.
  7911. </para>
  7912. </remarks>
  7913. </member>
  7914. <member name="T:log4net.Config.ConfiguratorAttribute">
  7915. <summary>
  7916. Base class for all log4net configuration attributes.
  7917. </summary>
  7918. <remarks>
  7919. This is an abstract class that must be extended by
  7920. specific configurators. This attribute allows the
  7921. configurator to be parameterized by an assembly level
  7922. attribute.
  7923. </remarks>
  7924. <author>Nicko Cadell</author>
  7925. <author>Gert Driesen</author>
  7926. </member>
  7927. <member name="M:log4net.Config.ConfiguratorAttribute.#ctor(System.Int32)">
  7928. <summary>
  7929. Constructor used by subclasses.
  7930. </summary>
  7931. <param name="priority">the ordering priority for this configurator</param>
  7932. <remarks>
  7933. <para>
  7934. The <paramref name="priority"/> is used to order the configurator
  7935. attributes before they are invoked. Higher priority configurators are executed
  7936. before lower priority ones.
  7937. </para>
  7938. </remarks>
  7939. </member>
  7940. <member name="M:log4net.Config.ConfiguratorAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  7941. <summary>
  7942. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.
  7943. </summary>
  7944. <param name="sourceAssembly">The assembly that this attribute was defined on.</param>
  7945. <param name="targetRepository">The repository to configure.</param>
  7946. <remarks>
  7947. <para>
  7948. Abstract method implemented by a subclass. When this method is called
  7949. the subclass should configure the <paramref name="targetRepository"/>.
  7950. </para>
  7951. </remarks>
  7952. </member>
  7953. <member name="M:log4net.Config.ConfiguratorAttribute.CompareTo(System.Object)">
  7954. <summary>
  7955. Compare this instance to another ConfiguratorAttribute
  7956. </summary>
  7957. <param name="obj">the object to compare to</param>
  7958. <returns>see <see cref="M:System.IComparable.CompareTo(System.Object)"/></returns>
  7959. <remarks>
  7960. <para>
  7961. Compares the priorities of the two <see cref="T:log4net.Config.ConfiguratorAttribute"/> instances.
  7962. Sorts by priority in descending order. Objects with the same priority are
  7963. randomly ordered.
  7964. </para>
  7965. </remarks>
  7966. </member>
  7967. <member name="T:log4net.Config.DomainAttribute">
  7968. <summary>
  7969. Assembly level attribute that specifies the logging domain for the assembly.
  7970. </summary>
  7971. <remarks>
  7972. <para>
  7973. <b>DomainAttribute is obsolete. Use RepositoryAttribute instead of DomainAttribute.</b>
  7974. </para>
  7975. <para>
  7976. Assemblies are mapped to logging domains. Each domain has its own
  7977. logging repository. This attribute specified on the assembly controls
  7978. the configuration of the domain. The <see cref="P:log4net.Config.RepositoryAttribute.Name"/> property specifies the name
  7979. of the domain that this assembly is a part of. The <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/>
  7980. specifies the type of the repository objects to create for the domain. If
  7981. this attribute is not specified and a <see cref="P:log4net.Config.RepositoryAttribute.Name"/> is not specified
  7982. then the assembly will be part of the default shared logging domain.
  7983. </para>
  7984. <para>
  7985. This attribute can only be specified on the assembly and may only be used
  7986. once per assembly.
  7987. </para>
  7988. </remarks>
  7989. <author>Nicko Cadell</author>
  7990. <author>Gert Driesen</author>
  7991. </member>
  7992. <member name="T:log4net.Config.RepositoryAttribute">
  7993. <summary>
  7994. Assembly level attribute that specifies the logging repository for the assembly.
  7995. </summary>
  7996. <remarks>
  7997. <para>
  7998. Assemblies are mapped to logging repository. This attribute specified
  7999. on the assembly controls
  8000. the configuration of the repository. The <see cref="P:log4net.Config.RepositoryAttribute.Name"/> property specifies the name
  8001. of the repository that this assembly is a part of. The <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/>
  8002. specifies the type of the <see cref="T:log4net.Repository.ILoggerRepository"/> object
  8003. to create for the assembly. If this attribute is not specified or a <see cref="P:log4net.Config.RepositoryAttribute.Name"/>
  8004. is not specified then the assembly will be part of the default shared logging repository.
  8005. </para>
  8006. <para>
  8007. This attribute can only be specified on the assembly and may only be used
  8008. once per assembly.
  8009. </para>
  8010. </remarks>
  8011. <author>Nicko Cadell</author>
  8012. <author>Gert Driesen</author>
  8013. </member>
  8014. <member name="M:log4net.Config.RepositoryAttribute.#ctor">
  8015. <summary>
  8016. Initializes a new instance of the <see cref="T:log4net.Config.RepositoryAttribute"/> class.
  8017. </summary>
  8018. <remarks>
  8019. <para>
  8020. Default constructor.
  8021. </para>
  8022. </remarks>
  8023. </member>
  8024. <member name="M:log4net.Config.RepositoryAttribute.#ctor(System.String)">
  8025. <summary>
  8026. Initialize a new instance of the <see cref="T:log4net.Config.RepositoryAttribute"/> class
  8027. with the name of the repository.
  8028. </summary>
  8029. <param name="name">The name of the repository.</param>
  8030. <remarks>
  8031. <para>
  8032. Initialize the attribute with the name for the assembly's repository.
  8033. </para>
  8034. </remarks>
  8035. </member>
  8036. <member name="P:log4net.Config.RepositoryAttribute.Name">
  8037. <summary>
  8038. Gets or sets the name of the logging repository.
  8039. </summary>
  8040. <value>
  8041. The string name to use as the name of the repository associated with this
  8042. assembly.
  8043. </value>
  8044. <remarks>
  8045. <para>
  8046. This value does not have to be unique. Several assemblies can share the
  8047. same repository. They will share the logging configuration of the repository.
  8048. </para>
  8049. </remarks>
  8050. </member>
  8051. <member name="P:log4net.Config.RepositoryAttribute.RepositoryType">
  8052. <summary>
  8053. Gets or sets the type of repository to create for this assembly.
  8054. </summary>
  8055. <value>
  8056. The type of repository to create for this assembly.
  8057. </value>
  8058. <remarks>
  8059. <para>
  8060. The type of the repository to create for the assembly.
  8061. The type must implement the <see cref="T:log4net.Repository.ILoggerRepository"/>
  8062. interface.
  8063. </para>
  8064. <para>
  8065. This will be the type of repository created when
  8066. the repository is created. If multiple assemblies reference the
  8067. same repository then the repository is only created once using the
  8068. <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/> of the first assembly to call into the
  8069. repository.
  8070. </para>
  8071. </remarks>
  8072. </member>
  8073. <member name="M:log4net.Config.DomainAttribute.#ctor">
  8074. <summary>
  8075. Initializes a new instance of the <see cref="T:log4net.Config.DomainAttribute"/> class.
  8076. </summary>
  8077. <remarks>
  8078. <para>
  8079. Obsolete. Use RepositoryAttribute instead of DomainAttribute.
  8080. </para>
  8081. </remarks>
  8082. </member>
  8083. <member name="M:log4net.Config.DomainAttribute.#ctor(System.String)">
  8084. <summary>
  8085. Initialize a new instance of the <see cref="T:log4net.Config.DomainAttribute"/> class
  8086. with the name of the domain.
  8087. </summary>
  8088. <param name="name">The name of the domain.</param>
  8089. <remarks>
  8090. <para>
  8091. Obsolete. Use RepositoryAttribute instead of DomainAttribute.
  8092. </para>
  8093. </remarks>
  8094. </member>
  8095. <member name="T:log4net.Config.DOMConfigurator">
  8096. <summary>
  8097. Use this class to initialize the log4net environment using an Xml tree.
  8098. </summary>
  8099. <remarks>
  8100. <para>
  8101. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8102. </para>
  8103. <para>
  8104. Configures a <see cref="T:log4net.Repository.ILoggerRepository"/> using an Xml tree.
  8105. </para>
  8106. </remarks>
  8107. <author>Nicko Cadell</author>
  8108. <author>Gert Driesen</author>
  8109. </member>
  8110. <member name="M:log4net.Config.DOMConfigurator.#ctor">
  8111. <summary>
  8112. Private constructor
  8113. </summary>
  8114. </member>
  8115. <member name="M:log4net.Config.DOMConfigurator.Configure">
  8116. <summary>
  8117. Automatically configures the log4net system based on the
  8118. application's configuration settings.
  8119. </summary>
  8120. <remarks>
  8121. <para>
  8122. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8123. </para>
  8124. Each application has a configuration file. This has the
  8125. same name as the application with '.config' appended.
  8126. This file is XML and calling this function prompts the
  8127. configurator to look in that file for a section called
  8128. <c>log4net</c> that contains the configuration data.
  8129. </remarks>
  8130. </member>
  8131. <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository)">
  8132. <summary>
  8133. Automatically configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using settings
  8134. stored in the application's configuration file.
  8135. </summary>
  8136. <remarks>
  8137. <para>
  8138. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8139. </para>
  8140. Each application has a configuration file. This has the
  8141. same name as the application with '.config' appended.
  8142. This file is XML and calling this function prompts the
  8143. configurator to look in that file for a section called
  8144. <c>log4net</c> that contains the configuration data.
  8145. </remarks>
  8146. <param name="repository">The repository to configure.</param>
  8147. </member>
  8148. <member name="M:log4net.Config.DOMConfigurator.Configure(System.Xml.XmlElement)">
  8149. <summary>
  8150. Configures log4net using a <c>log4net</c> element
  8151. </summary>
  8152. <remarks>
  8153. <para>
  8154. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8155. </para>
  8156. Loads the log4net configuration from the XML element
  8157. supplied as <paramref name="element"/>.
  8158. </remarks>
  8159. <param name="element">The element to parse.</param>
  8160. </member>
  8161. <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">
  8162. <summary>
  8163. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified XML
  8164. element.
  8165. </summary>
  8166. <remarks>
  8167. <para>
  8168. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8169. </para>
  8170. Loads the log4net configuration from the XML element
  8171. supplied as <paramref name="element"/>.
  8172. </remarks>
  8173. <param name="repository">The repository to configure.</param>
  8174. <param name="element">The element to parse.</param>
  8175. </member>
  8176. <member name="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)">
  8177. <summary>
  8178. Configures log4net using the specified configuration file.
  8179. </summary>
  8180. <param name="configFile">The XML file to load the configuration from.</param>
  8181. <remarks>
  8182. <para>
  8183. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8184. </para>
  8185. <para>
  8186. The configuration file must be valid XML. It must contain
  8187. at least one element called <c>log4net</c> that holds
  8188. the log4net configuration data.
  8189. </para>
  8190. <para>
  8191. The log4net configuration file can possible be specified in the application's
  8192. configuration file (either <c>MyAppName.exe.config</c> for a
  8193. normal application on <c>Web.config</c> for an ASP.NET application).
  8194. </para>
  8195. <example>
  8196. The following example configures log4net using a configuration file, of which the
  8197. location is stored in the application's configuration file :
  8198. </example>
  8199. <code lang="C#">
  8200. using log4net.Config;
  8201. using System.IO;
  8202. using System.Configuration;
  8203. ...
  8204. DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));
  8205. </code>
  8206. <para>
  8207. In the <c>.config</c> file, the path to the log4net can be specified like this :
  8208. </para>
  8209. <code lang="XML" escaped="true">
  8210. <configuration>
  8211. <appSettings>
  8212. <add key="log4net-config-file" value="log.config"/>
  8213. </appSettings>
  8214. </configuration>
  8215. </code>
  8216. </remarks>
  8217. </member>
  8218. <member name="M:log4net.Config.DOMConfigurator.Configure(System.IO.Stream)">
  8219. <summary>
  8220. Configures log4net using the specified configuration file.
  8221. </summary>
  8222. <param name="configStream">A stream to load the XML configuration from.</param>
  8223. <remarks>
  8224. <para>
  8225. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8226. </para>
  8227. <para>
  8228. The configuration data must be valid XML. It must contain
  8229. at least one element called <c>log4net</c> that holds
  8230. the log4net configuration data.
  8231. </para>
  8232. <para>
  8233. Note that this method will NOT close the stream parameter.
  8234. </para>
  8235. </remarks>
  8236. </member>
  8237. <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  8238. <summary>
  8239. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration
  8240. file.
  8241. </summary>
  8242. <param name="repository">The repository to configure.</param>
  8243. <param name="configFile">The XML file to load the configuration from.</param>
  8244. <remarks>
  8245. <para>
  8246. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8247. </para>
  8248. <para>
  8249. The configuration file must be valid XML. It must contain
  8250. at least one element called <c>log4net</c> that holds
  8251. the configuration data.
  8252. </para>
  8253. <para>
  8254. The log4net configuration file can possible be specified in the application's
  8255. configuration file (either <c>MyAppName.exe.config</c> for a
  8256. normal application on <c>Web.config</c> for an ASP.NET application).
  8257. </para>
  8258. <example>
  8259. The following example configures log4net using a configuration file, of which the
  8260. location is stored in the application's configuration file :
  8261. </example>
  8262. <code lang="C#">
  8263. using log4net.Config;
  8264. using System.IO;
  8265. using System.Configuration;
  8266. ...
  8267. DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));
  8268. </code>
  8269. <para>
  8270. In the <c>.config</c> file, the path to the log4net can be specified like this :
  8271. </para>
  8272. <code lang="XML" escaped="true">
  8273. <configuration>
  8274. <appSettings>
  8275. <add key="log4net-config-file" value="log.config"/>
  8276. </appSettings>
  8277. </configuration>
  8278. </code>
  8279. </remarks>
  8280. </member>
  8281. <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.Stream)">
  8282. <summary>
  8283. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration
  8284. file.
  8285. </summary>
  8286. <param name="repository">The repository to configure.</param>
  8287. <param name="configStream">The stream to load the XML configuration from.</param>
  8288. <remarks>
  8289. <para>
  8290. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8291. </para>
  8292. <para>
  8293. The configuration data must be valid XML. It must contain
  8294. at least one element called <c>log4net</c> that holds
  8295. the configuration data.
  8296. </para>
  8297. <para>
  8298. Note that this method will NOT close the stream parameter.
  8299. </para>
  8300. </remarks>
  8301. </member>
  8302. <member name="M:log4net.Config.DOMConfigurator.ConfigureAndWatch(System.IO.FileInfo)">
  8303. <summary>
  8304. Configures log4net using the file specified, monitors the file for changes
  8305. and reloads the configuration if a change is detected.
  8306. </summary>
  8307. <param name="configFile">The XML file to load the configuration from.</param>
  8308. <remarks>
  8309. <para>
  8310. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8311. </para>
  8312. <para>
  8313. The configuration file must be valid XML. It must contain
  8314. at least one element called <c>log4net</c> that holds
  8315. the configuration data.
  8316. </para>
  8317. <para>
  8318. The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>
  8319. and depends on the behavior of that class.
  8320. </para>
  8321. <para>
  8322. For more information on how to configure log4net using
  8323. a separate configuration file, see <see cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>.
  8324. </para>
  8325. </remarks>
  8326. <seealso cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>
  8327. </member>
  8328. <member name="M:log4net.Config.DOMConfigurator.ConfigureAndWatch(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  8329. <summary>
  8330. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the file specified,
  8331. monitors the file for changes and reloads the configuration if a change
  8332. is detected.
  8333. </summary>
  8334. <param name="repository">The repository to configure.</param>
  8335. <param name="configFile">The XML file to load the configuration from.</param>
  8336. <remarks>
  8337. <para>
  8338. <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>
  8339. </para>
  8340. <para>
  8341. The configuration file must be valid XML. It must contain
  8342. at least one element called <c>log4net</c> that holds
  8343. the configuration data.
  8344. </para>
  8345. <para>
  8346. The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>
  8347. and depends on the behavior of that class.
  8348. </para>
  8349. <para>
  8350. For more information on how to configure log4net using
  8351. a separate configuration file, see <see cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>.
  8352. </para>
  8353. </remarks>
  8354. <seealso cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>
  8355. </member>
  8356. <member name="T:log4net.Config.DOMConfiguratorAttribute">
  8357. <summary>
  8358. Assembly level attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>.
  8359. </summary>
  8360. <remarks>
  8361. <para>
  8362. <b>AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute.</b>
  8363. </para>
  8364. <para>
  8365. This attribute may only be used at the assembly scope and can only
  8366. be used once per assembly.
  8367. </para>
  8368. <para>
  8369. Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>
  8370. without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>
  8371. methods.
  8372. </para>
  8373. </remarks>
  8374. <author>Nicko Cadell</author>
  8375. <author>Gert Driesen</author>
  8376. </member>
  8377. <member name="T:log4net.Config.XmlConfiguratorAttribute">
  8378. <summary>
  8379. Assembly level attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>.
  8380. </summary>
  8381. <remarks>
  8382. <para>
  8383. This attribute may only be used at the assembly scope and can only
  8384. be used once per assembly.
  8385. </para>
  8386. <para>
  8387. Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>
  8388. without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>
  8389. methods.
  8390. </para>
  8391. <para>
  8392. If neither of the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> or <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>
  8393. properties are set the configuration is loaded from the application's .config file.
  8394. If set the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> property takes priority over the
  8395. <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> property. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> property
  8396. specifies a path to a file to load the config from. The path is relative to the
  8397. application's base directory; <see cref="P:System.AppDomain.BaseDirectory"/>.
  8398. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> property is used as a postfix to the assembly file name.
  8399. The config file must be located in the application's base directory; <see cref="P:System.AppDomain.BaseDirectory"/>.
  8400. For example in a console application setting the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> to
  8401. <c>config</c> has the same effect as not specifying the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> or
  8402. <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> properties.
  8403. </para>
  8404. <para>
  8405. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.Watch"/> property can be set to cause the <see cref="T:log4net.Config.XmlConfigurator"/>
  8406. to watch the configuration file for changes.
  8407. </para>
  8408. <note>
  8409. <para>
  8410. Log4net will only look for assembly level configuration attributes once.
  8411. When using the log4net assembly level attributes to control the configuration
  8412. of log4net you must ensure that the first call to any of the
  8413. <see cref="T:log4net.Core.LoggerManager"/> methods is made from the assembly with the configuration
  8414. attributes.
  8415. </para>
  8416. <para>
  8417. If you cannot guarantee the order in which log4net calls will be made from
  8418. different assemblies you must use programmatic configuration instead, i.e.
  8419. call the <see cref="M:log4net.Config.XmlConfigurator.Configure"/> method directly.
  8420. </para>
  8421. </note>
  8422. </remarks>
  8423. <author>Nicko Cadell</author>
  8424. <author>Gert Driesen</author>
  8425. </member>
  8426. <member name="M:log4net.Config.XmlConfiguratorAttribute.#ctor">
  8427. <summary>
  8428. Default constructor
  8429. </summary>
  8430. <remarks>
  8431. <para>
  8432. Default constructor
  8433. </para>
  8434. </remarks>
  8435. </member>
  8436. <member name="M:log4net.Config.XmlConfiguratorAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  8437. <summary>
  8438. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.
  8439. </summary>
  8440. <param name="sourceAssembly">The assembly that this attribute was defined on.</param>
  8441. <param name="targetRepository">The repository to configure.</param>
  8442. <remarks>
  8443. <para>
  8444. Configure the repository using the <see cref="T:log4net.Config.XmlConfigurator"/>.
  8445. The <paramref name="targetRepository"/> specified must extend the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>
  8446. class otherwise the <see cref="T:log4net.Config.XmlConfigurator"/> will not be able to
  8447. configure it.
  8448. </para>
  8449. </remarks>
  8450. <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="repository"/> does not extend <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.</exception>
  8451. </member>
  8452. <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromFile(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  8453. <summary>
  8454. Attempt to load configuration from the local file system
  8455. </summary>
  8456. <param name="sourceAssembly">The assembly that this attribute was defined on.</param>
  8457. <param name="targetRepository">The repository to configure.</param>
  8458. </member>
  8459. <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromFile(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  8460. <summary>
  8461. Configure the specified repository using a <see cref="T:System.IO.FileInfo"/>
  8462. </summary>
  8463. <param name="targetRepository">The repository to configure.</param>
  8464. <param name="configFile">the FileInfo pointing to the config file</param>
  8465. </member>
  8466. <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromUri(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  8467. <summary>
  8468. Attempt to load configuration from a URI
  8469. </summary>
  8470. <param name="sourceAssembly">The assembly that this attribute was defined on.</param>
  8471. <param name="targetRepository">The repository to configure.</param>
  8472. </member>
  8473. <member name="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile">
  8474. <summary>
  8475. Gets or sets the filename of the configuration file.
  8476. </summary>
  8477. <value>
  8478. The filename of the configuration file.
  8479. </value>
  8480. <remarks>
  8481. <para>
  8482. If specified, this is the name of the configuration file to use with
  8483. the <see cref="T:log4net.Config.XmlConfigurator"/>. This file path is relative to the
  8484. <b>application base</b> directory (<see cref="P:System.AppDomain.BaseDirectory"/>).
  8485. </para>
  8486. <para>
  8487. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> takes priority over the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>.
  8488. </para>
  8489. </remarks>
  8490. </member>
  8491. <member name="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension">
  8492. <summary>
  8493. Gets or sets the extension of the configuration file.
  8494. </summary>
  8495. <value>
  8496. The extension of the configuration file.
  8497. </value>
  8498. <remarks>
  8499. <para>
  8500. If specified this is the extension for the configuration file.
  8501. The path to the config file is built by using the <b>application
  8502. base</b> directory (<see cref="P:System.AppDomain.BaseDirectory"/>),
  8503. the <b>assembly file name</b> and the config file extension.
  8504. </para>
  8505. <para>
  8506. If the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> is set to <c>MyExt</c> then
  8507. possible config file names would be: <c>MyConsoleApp.exe.MyExt</c> or
  8508. <c>MyClassLibrary.dll.MyExt</c>.
  8509. </para>
  8510. <para>
  8511. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> takes priority over the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>.
  8512. </para>
  8513. </remarks>
  8514. </member>
  8515. <member name="P:log4net.Config.XmlConfiguratorAttribute.Watch">
  8516. <summary>
  8517. Gets or sets a value indicating whether to watch the configuration file.
  8518. </summary>
  8519. <value>
  8520. <c>true</c> if the configuration should be watched, <c>false</c> otherwise.
  8521. </value>
  8522. <remarks>
  8523. <para>
  8524. If this flag is specified and set to <c>true</c> then the framework
  8525. will watch the configuration file and will reload the config each time
  8526. the file is modified.
  8527. </para>
  8528. <para>
  8529. The config file can only be watched if it is loaded from local disk.
  8530. In a No-Touch (Smart Client) deployment where the application is downloaded
  8531. from a web server the config file may not reside on the local disk
  8532. and therefore it may not be able to watch it.
  8533. </para>
  8534. <note>
  8535. Watching configuration is not supported on the SSCLI.
  8536. </note>
  8537. </remarks>
  8538. </member>
  8539. <member name="T:log4net.Config.Log4NetConfigurationSectionHandler">
  8540. <summary>
  8541. Class to register for the log4net section of the configuration file
  8542. </summary>
  8543. <remarks>
  8544. The log4net section of the configuration file needs to have a section
  8545. handler registered. This is the section handler used. It simply returns
  8546. the XML element that is the root of the section.
  8547. </remarks>
  8548. <example>
  8549. Example of registering the log4net section handler :
  8550. <code lang="XML" escaped="true">
  8551. <configuration>
  8552. <configSections>
  8553. <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  8554. </configSections>
  8555. <log4net>
  8556. log4net configuration XML goes here
  8557. </log4net>
  8558. </configuration>
  8559. </code>
  8560. </example>
  8561. <author>Nicko Cadell</author>
  8562. <author>Gert Driesen</author>
  8563. </member>
  8564. <member name="M:log4net.Config.Log4NetConfigurationSectionHandler.#ctor">
  8565. <summary>
  8566. Initializes a new instance of the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> class.
  8567. </summary>
  8568. <remarks>
  8569. <para>
  8570. Default constructor.
  8571. </para>
  8572. </remarks>
  8573. </member>
  8574. <member name="M:log4net.Config.Log4NetConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)">
  8575. <summary>
  8576. Parses the configuration section.
  8577. </summary>
  8578. <param name="parent">The configuration settings in a corresponding parent configuration section.</param>
  8579. <param name="configContext">The configuration context when called from the ASP.NET configuration system. Otherwise, this parameter is reserved and is a null reference.</param>
  8580. <param name="section">The <see cref="T:System.Xml.XmlNode"/> for the log4net section.</param>
  8581. <returns>The <see cref="T:System.Xml.XmlNode"/> for the log4net section.</returns>
  8582. <remarks>
  8583. <para>
  8584. Returns the <see cref="T:System.Xml.XmlNode"/> containing the configuration data,
  8585. </para>
  8586. </remarks>
  8587. </member>
  8588. <member name="T:log4net.Config.PluginAttribute">
  8589. <summary>
  8590. Assembly level attribute that specifies a plugin to attach to
  8591. the repository.
  8592. </summary>
  8593. <remarks>
  8594. <para>
  8595. Specifies the type of a plugin to create and attach to the
  8596. assembly's repository. The plugin type must implement the
  8597. <see cref="T:log4net.Plugin.IPlugin"/> interface.
  8598. </para>
  8599. </remarks>
  8600. <author>Nicko Cadell</author>
  8601. <author>Gert Driesen</author>
  8602. </member>
  8603. <member name="T:log4net.Plugin.IPluginFactory">
  8604. <summary>
  8605. Interface used to create plugins.
  8606. </summary>
  8607. <remarks>
  8608. <para>
  8609. Interface used to create a plugin.
  8610. </para>
  8611. </remarks>
  8612. <author>Nicko Cadell</author>
  8613. <author>Gert Driesen</author>
  8614. </member>
  8615. <member name="M:log4net.Plugin.IPluginFactory.CreatePlugin">
  8616. <summary>
  8617. Creates the plugin object.
  8618. </summary>
  8619. <returns>the new plugin instance</returns>
  8620. <remarks>
  8621. <para>
  8622. Create and return a new plugin instance.
  8623. </para>
  8624. </remarks>
  8625. </member>
  8626. <member name="M:log4net.Config.PluginAttribute.#ctor(System.String)">
  8627. <summary>
  8628. Initializes a new instance of the <see cref="T:log4net.Config.PluginAttribute"/> class
  8629. with the specified type.
  8630. </summary>
  8631. <param name="typeName">The type name of plugin to create.</param>
  8632. <remarks>
  8633. <para>
  8634. Create the attribute with the plugin type specified.
  8635. </para>
  8636. <para>
  8637. Where possible use the constructor that takes a <see cref="T:System.Type"/>.
  8638. </para>
  8639. </remarks>
  8640. </member>
  8641. <member name="M:log4net.Config.PluginAttribute.#ctor(System.Type)">
  8642. <summary>
  8643. Initializes a new instance of the <see cref="T:log4net.Config.PluginAttribute"/> class
  8644. with the specified type.
  8645. </summary>
  8646. <param name="type">The type of plugin to create.</param>
  8647. <remarks>
  8648. <para>
  8649. Create the attribute with the plugin type specified.
  8650. </para>
  8651. </remarks>
  8652. </member>
  8653. <member name="M:log4net.Config.PluginAttribute.CreatePlugin">
  8654. <summary>
  8655. Creates the plugin object defined by this attribute.
  8656. </summary>
  8657. <remarks>
  8658. <para>
  8659. Creates the instance of the <see cref="T:log4net.Plugin.IPlugin"/> object as
  8660. specified by this attribute.
  8661. </para>
  8662. </remarks>
  8663. <returns>The plugin object.</returns>
  8664. </member>
  8665. <member name="M:log4net.Config.PluginAttribute.ToString">
  8666. <summary>
  8667. Returns a representation of the properties of this object.
  8668. </summary>
  8669. <remarks>
  8670. <para>
  8671. Overrides base class <see cref="M:System.Object.ToString"/> method to
  8672. return a representation of the properties of this object.
  8673. </para>
  8674. </remarks>
  8675. <returns>A representation of the properties of this object</returns>
  8676. </member>
  8677. <member name="P:log4net.Config.PluginAttribute.Type">
  8678. <summary>
  8679. Gets or sets the type for the plugin.
  8680. </summary>
  8681. <value>
  8682. The type for the plugin.
  8683. </value>
  8684. <remarks>
  8685. <para>
  8686. The type for the plugin.
  8687. </para>
  8688. </remarks>
  8689. </member>
  8690. <member name="P:log4net.Config.PluginAttribute.TypeName">
  8691. <summary>
  8692. Gets or sets the type name for the plugin.
  8693. </summary>
  8694. <value>
  8695. The type name for the plugin.
  8696. </value>
  8697. <remarks>
  8698. <para>
  8699. The type name for the plugin.
  8700. </para>
  8701. <para>
  8702. Where possible use the <see cref="P:log4net.Config.PluginAttribute.Type"/> property instead.
  8703. </para>
  8704. </remarks>
  8705. </member>
  8706. <member name="T:log4net.Config.SecurityContextProviderAttribute">
  8707. <summary>
  8708. Assembly level attribute to configure the <see cref="T:log4net.Core.SecurityContextProvider"/>.
  8709. </summary>
  8710. <remarks>
  8711. <para>
  8712. This attribute may only be used at the assembly scope and can only
  8713. be used once per assembly.
  8714. </para>
  8715. <para>
  8716. Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>
  8717. without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>
  8718. methods.
  8719. </para>
  8720. </remarks>
  8721. <author>Nicko Cadell</author>
  8722. </member>
  8723. <member name="M:log4net.Config.SecurityContextProviderAttribute.#ctor(System.Type)">
  8724. <summary>
  8725. Construct provider attribute with type specified
  8726. </summary>
  8727. <param name="providerType">the type of the provider to use</param>
  8728. <remarks>
  8729. <para>
  8730. The provider specified must subclass the <see cref="T:log4net.Core.SecurityContextProvider"/>
  8731. class.
  8732. </para>
  8733. </remarks>
  8734. </member>
  8735. <member name="M:log4net.Config.SecurityContextProviderAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  8736. <summary>
  8737. Configures the SecurityContextProvider
  8738. </summary>
  8739. <param name="sourceAssembly">The assembly that this attribute was defined on.</param>
  8740. <param name="targetRepository">The repository to configure.</param>
  8741. <remarks>
  8742. <para>
  8743. Creates a provider instance from the <see cref="P:log4net.Config.SecurityContextProviderAttribute.ProviderType"/> specified.
  8744. Sets this as the default security context provider <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/>.
  8745. </para>
  8746. </remarks>
  8747. </member>
  8748. <member name="P:log4net.Config.SecurityContextProviderAttribute.ProviderType">
  8749. <summary>
  8750. Gets or sets the type of the provider to use.
  8751. </summary>
  8752. <value>
  8753. the type of the provider to use.
  8754. </value>
  8755. <remarks>
  8756. <para>
  8757. The provider specified must subclass the <see cref="T:log4net.Core.SecurityContextProvider"/>
  8758. class.
  8759. </para>
  8760. </remarks>
  8761. </member>
  8762. <member name="T:log4net.Config.XmlConfigurator">
  8763. <summary>
  8764. Use this class to initialize the log4net environment using an Xml tree.
  8765. </summary>
  8766. <remarks>
  8767. <para>
  8768. Configures a <see cref="T:log4net.Repository.ILoggerRepository"/> using an Xml tree.
  8769. </para>
  8770. </remarks>
  8771. <author>Nicko Cadell</author>
  8772. <author>Gert Driesen</author>
  8773. </member>
  8774. <member name="M:log4net.Config.XmlConfigurator.#ctor">
  8775. <summary>
  8776. Private constructor
  8777. </summary>
  8778. </member>
  8779. <member name="M:log4net.Config.XmlConfigurator.Configure">
  8780. <summary>
  8781. Automatically configures the log4net system based on the
  8782. application's configuration settings.
  8783. </summary>
  8784. <remarks>
  8785. <para>
  8786. Each application has a configuration file. This has the
  8787. same name as the application with '.config' appended.
  8788. This file is XML and calling this function prompts the
  8789. configurator to look in that file for a section called
  8790. <c>log4net</c> that contains the configuration data.
  8791. </para>
  8792. <para>
  8793. To use this method to configure log4net you must specify
  8794. the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> section
  8795. handler for the <c>log4net</c> configuration section. See the
  8796. <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> for an example.
  8797. </para>
  8798. </remarks>
  8799. <seealso cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/>
  8800. </member>
  8801. <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository)">
  8802. <summary>
  8803. Automatically configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using settings
  8804. stored in the application's configuration file.
  8805. </summary>
  8806. <remarks>
  8807. <para>
  8808. Each application has a configuration file. This has the
  8809. same name as the application with '.config' appended.
  8810. This file is XML and calling this function prompts the
  8811. configurator to look in that file for a section called
  8812. <c>log4net</c> that contains the configuration data.
  8813. </para>
  8814. <para>
  8815. To use this method to configure log4net you must specify
  8816. the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> section
  8817. handler for the <c>log4net</c> configuration section. See the
  8818. <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> for an example.
  8819. </para>
  8820. </remarks>
  8821. <param name="repository">The repository to configure.</param>
  8822. </member>
  8823. <member name="M:log4net.Config.XmlConfigurator.Configure(System.Xml.XmlElement)">
  8824. <summary>
  8825. Configures log4net using a <c>log4net</c> element
  8826. </summary>
  8827. <remarks>
  8828. <para>
  8829. Loads the log4net configuration from the XML element
  8830. supplied as <paramref name="element"/>.
  8831. </para>
  8832. </remarks>
  8833. <param name="element">The element to parse.</param>
  8834. </member>
  8835. <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">
  8836. <summary>
  8837. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified XML
  8838. element.
  8839. </summary>
  8840. <remarks>
  8841. Loads the log4net configuration from the XML element
  8842. supplied as <paramref name="element"/>.
  8843. </remarks>
  8844. <param name="repository">The repository to configure.</param>
  8845. <param name="element">The element to parse.</param>
  8846. </member>
  8847. <member name="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)">
  8848. <summary>
  8849. Configures log4net using the specified configuration file.
  8850. </summary>
  8851. <param name="configFile">The XML file to load the configuration from.</param>
  8852. <remarks>
  8853. <para>
  8854. The configuration file must be valid XML. It must contain
  8855. at least one element called <c>log4net</c> that holds
  8856. the log4net configuration data.
  8857. </para>
  8858. <para>
  8859. The log4net configuration file can possible be specified in the application's
  8860. configuration file (either <c>MyAppName.exe.config</c> for a
  8861. normal application on <c>Web.config</c> for an ASP.NET application).
  8862. </para>
  8863. <para>
  8864. The first element matching <c>&lt;configuration&gt;</c> will be read as the
  8865. configuration. If this file is also a .NET .config file then you must specify
  8866. a configuration section for the <c>log4net</c> element otherwise .NET will
  8867. complain. Set the type for the section handler to <see cref="T:System.Configuration.IgnoreSectionHandler"/>, for example:
  8868. <code lang="XML" escaped="true">
  8869. <configSections>
  8870. <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  8871. </configSections>
  8872. </code>
  8873. </para>
  8874. <example>
  8875. The following example configures log4net using a configuration file, of which the
  8876. location is stored in the application's configuration file :
  8877. </example>
  8878. <code lang="C#">
  8879. using log4net.Config;
  8880. using System.IO;
  8881. using System.Configuration;
  8882. ...
  8883. XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));
  8884. </code>
  8885. <para>
  8886. In the <c>.config</c> file, the path to the log4net can be specified like this :
  8887. </para>
  8888. <code lang="XML" escaped="true">
  8889. <configuration>
  8890. <appSettings>
  8891. <add key="log4net-config-file" value="log.config"/>
  8892. </appSettings>
  8893. </configuration>
  8894. </code>
  8895. </remarks>
  8896. </member>
  8897. <member name="M:log4net.Config.XmlConfigurator.Configure(System.Uri)">
  8898. <summary>
  8899. Configures log4net using the specified configuration URI.
  8900. </summary>
  8901. <param name="configUri">A URI to load the XML configuration from.</param>
  8902. <remarks>
  8903. <para>
  8904. The configuration data must be valid XML. It must contain
  8905. at least one element called <c>log4net</c> that holds
  8906. the log4net configuration data.
  8907. </para>
  8908. <para>
  8909. The <see cref="T:System.Net.WebRequest"/> must support the URI scheme specified.
  8910. </para>
  8911. </remarks>
  8912. </member>
  8913. <member name="M:log4net.Config.XmlConfigurator.Configure(System.IO.Stream)">
  8914. <summary>
  8915. Configures log4net using the specified configuration data stream.
  8916. </summary>
  8917. <param name="configStream">A stream to load the XML configuration from.</param>
  8918. <remarks>
  8919. <para>
  8920. The configuration data must be valid XML. It must contain
  8921. at least one element called <c>log4net</c> that holds
  8922. the log4net configuration data.
  8923. </para>
  8924. <para>
  8925. Note that this method will NOT close the stream parameter.
  8926. </para>
  8927. </remarks>
  8928. </member>
  8929. <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  8930. <summary>
  8931. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration
  8932. file.
  8933. </summary>
  8934. <param name="repository">The repository to configure.</param>
  8935. <param name="configFile">The XML file to load the configuration from.</param>
  8936. <remarks>
  8937. <para>
  8938. The configuration file must be valid XML. It must contain
  8939. at least one element called <c>log4net</c> that holds
  8940. the configuration data.
  8941. </para>
  8942. <para>
  8943. The log4net configuration file can possible be specified in the application's
  8944. configuration file (either <c>MyAppName.exe.config</c> for a
  8945. normal application on <c>Web.config</c> for an ASP.NET application).
  8946. </para>
  8947. <para>
  8948. The first element matching <c>&lt;configuration&gt;</c> will be read as the
  8949. configuration. If this file is also a .NET .config file then you must specify
  8950. a configuration section for the <c>log4net</c> element otherwise .NET will
  8951. complain. Set the type for the section handler to <see cref="T:System.Configuration.IgnoreSectionHandler"/>, for example:
  8952. <code lang="XML" escaped="true">
  8953. <configSections>
  8954. <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  8955. </configSections>
  8956. </code>
  8957. </para>
  8958. <example>
  8959. The following example configures log4net using a configuration file, of which the
  8960. location is stored in the application's configuration file :
  8961. </example>
  8962. <code lang="C#">
  8963. using log4net.Config;
  8964. using System.IO;
  8965. using System.Configuration;
  8966. ...
  8967. XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));
  8968. </code>
  8969. <para>
  8970. In the <c>.config</c> file, the path to the log4net can be specified like this :
  8971. </para>
  8972. <code lang="XML" escaped="true">
  8973. <configuration>
  8974. <appSettings>
  8975. <add key="log4net-config-file" value="log.config"/>
  8976. </appSettings>
  8977. </configuration>
  8978. </code>
  8979. </remarks>
  8980. </member>
  8981. <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Uri)">
  8982. <summary>
  8983. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration
  8984. URI.
  8985. </summary>
  8986. <param name="repository">The repository to configure.</param>
  8987. <param name="configUri">A URI to load the XML configuration from.</param>
  8988. <remarks>
  8989. <para>
  8990. The configuration data must be valid XML. It must contain
  8991. at least one element called <c>log4net</c> that holds
  8992. the configuration data.
  8993. </para>
  8994. <para>
  8995. The <see cref="T:System.Net.WebRequest"/> must support the URI scheme specified.
  8996. </para>
  8997. </remarks>
  8998. </member>
  8999. <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.Stream)">
  9000. <summary>
  9001. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration
  9002. file.
  9003. </summary>
  9004. <param name="repository">The repository to configure.</param>
  9005. <param name="configStream">The stream to load the XML configuration from.</param>
  9006. <remarks>
  9007. <para>
  9008. The configuration data must be valid XML. It must contain
  9009. at least one element called <c>log4net</c> that holds
  9010. the configuration data.
  9011. </para>
  9012. <para>
  9013. Note that this method will NOT close the stream parameter.
  9014. </para>
  9015. </remarks>
  9016. </member>
  9017. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatch(System.IO.FileInfo)">
  9018. <summary>
  9019. Configures log4net using the file specified, monitors the file for changes
  9020. and reloads the configuration if a change is detected.
  9021. </summary>
  9022. <param name="configFile">The XML file to load the configuration from.</param>
  9023. <remarks>
  9024. <para>
  9025. The configuration file must be valid XML. It must contain
  9026. at least one element called <c>log4net</c> that holds
  9027. the configuration data.
  9028. </para>
  9029. <para>
  9030. The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>
  9031. and depends on the behavior of that class.
  9032. </para>
  9033. <para>
  9034. For more information on how to configure log4net using
  9035. a separate configuration file, see <see cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>.
  9036. </para>
  9037. </remarks>
  9038. <seealso cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>
  9039. </member>
  9040. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatch(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  9041. <summary>
  9042. Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the file specified,
  9043. monitors the file for changes and reloads the configuration if a change
  9044. is detected.
  9045. </summary>
  9046. <param name="repository">The repository to configure.</param>
  9047. <param name="configFile">The XML file to load the configuration from.</param>
  9048. <remarks>
  9049. <para>
  9050. The configuration file must be valid XML. It must contain
  9051. at least one element called <c>log4net</c> that holds
  9052. the configuration data.
  9053. </para>
  9054. <para>
  9055. The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>
  9056. and depends on the behavior of that class.
  9057. </para>
  9058. <para>
  9059. For more information on how to configure log4net using
  9060. a separate configuration file, see <see cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>.
  9061. </para>
  9062. </remarks>
  9063. <seealso cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>
  9064. </member>
  9065. <member name="M:log4net.Config.XmlConfigurator.ConfigureFromXml(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">
  9066. <summary>
  9067. Configures the specified repository using a <c>log4net</c> element.
  9068. </summary>
  9069. <param name="repository">The hierarchy to configure.</param>
  9070. <param name="element">The element to parse.</param>
  9071. <remarks>
  9072. <para>
  9073. Loads the log4net configuration from the XML element
  9074. supplied as <paramref name="element"/>.
  9075. </para>
  9076. <para>
  9077. This method is ultimately called by one of the Configure methods
  9078. to load the configuration from an <see cref="T:System.Xml.XmlElement"/>.
  9079. </para>
  9080. </remarks>
  9081. </member>
  9082. <member name="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler">
  9083. <summary>
  9084. Class used to watch config files.
  9085. </summary>
  9086. <remarks>
  9087. <para>
  9088. Uses the <see cref="T:System.IO.FileSystemWatcher"/> to monitor
  9089. changes to a specified file. Because multiple change notifications
  9090. may be raised when the file is modified, a timer is used to
  9091. compress the notifications into a single event. The timer
  9092. waits for <see cref="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis"/> time before delivering
  9093. the event notification. If any further <see cref="T:System.IO.FileSystemWatcher"/>
  9094. change notifications arrive while the timer is waiting it
  9095. is reset and waits again for <see cref="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis"/> to
  9096. elapse.
  9097. </para>
  9098. </remarks>
  9099. </member>
  9100. <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis">
  9101. <summary>
  9102. The default amount of time to wait after receiving notification
  9103. before reloading the config file.
  9104. </summary>
  9105. </member>
  9106. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.StartWatching(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  9107. <summary>
  9108. Watch a specified config file used to configure a repository
  9109. </summary>
  9110. <param name="repository">The repository to configure.</param>
  9111. <param name="configFile">The configuration file to watch.</param>
  9112. <remarks>
  9113. <para>
  9114. Watch a specified config file used to configure a repository
  9115. </para>
  9116. </remarks>
  9117. </member>
  9118. <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_configFile">
  9119. <summary>
  9120. Holds the FileInfo used to configure the XmlConfigurator
  9121. </summary>
  9122. </member>
  9123. <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_repository">
  9124. <summary>
  9125. Holds the repository being configured.
  9126. </summary>
  9127. </member>
  9128. <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_timer">
  9129. <summary>
  9130. The timer used to compress the notification events.
  9131. </summary>
  9132. </member>
  9133. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.#ctor(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">
  9134. <summary>
  9135. Initializes a new instance of the <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/> class.
  9136. </summary>
  9137. <param name="repository">The repository to configure.</param>
  9138. <param name="configFile">The configuration file to watch.</param>
  9139. <remarks>
  9140. <para>
  9141. Initializes a new instance of the <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/> class.
  9142. </para>
  9143. </remarks>
  9144. </member>
  9145. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.ConfigureAndWatchHandler_OnChanged(System.Object,System.IO.FileSystemEventArgs)">
  9146. <summary>
  9147. Event handler used by <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/>.
  9148. </summary>
  9149. <param name="source">The <see cref="T:System.IO.FileSystemWatcher"/> firing the event.</param>
  9150. <param name="e">The argument indicates the file that caused the event to be fired.</param>
  9151. <remarks>
  9152. <para>
  9153. This handler reloads the configuration from the file when the event is fired.
  9154. </para>
  9155. </remarks>
  9156. </member>
  9157. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.ConfigureAndWatchHandler_OnRenamed(System.Object,System.IO.RenamedEventArgs)">
  9158. <summary>
  9159. Event handler used by <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/>.
  9160. </summary>
  9161. <param name="source">The <see cref="T:System.IO.FileSystemWatcher"/> firing the event.</param>
  9162. <param name="e">The argument indicates the file that caused the event to be fired.</param>
  9163. <remarks>
  9164. <para>
  9165. This handler reloads the configuration from the file when the event is fired.
  9166. </para>
  9167. </remarks>
  9168. </member>
  9169. <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.OnWatchedFileChange(System.Object)">
  9170. <summary>
  9171. Called by the timer when the configuration has been updated.
  9172. </summary>
  9173. <param name="state">null</param>
  9174. </member>
  9175. <member name="T:log4net.Core.CompactRepositorySelector">
  9176. <summary>
  9177. The implementation of the <see cref="T:log4net.Core.IRepositorySelector"/> interface suitable
  9178. for use with the compact framework
  9179. </summary>
  9180. <remarks>
  9181. <para>
  9182. This <see cref="T:log4net.Core.IRepositorySelector"/> implementation is a simple
  9183. mapping between repository name and <see cref="T:log4net.Repository.ILoggerRepository"/>
  9184. object.
  9185. </para>
  9186. <para>
  9187. The .NET Compact Framework 1.0 does not support retrieving assembly
  9188. level attributes therefore unlike the <c>DefaultRepositorySelector</c>
  9189. this selector does not examine the calling assembly for attributes.
  9190. </para>
  9191. </remarks>
  9192. <author>Nicko Cadell</author>
  9193. </member>
  9194. <member name="T:log4net.Core.IRepositorySelector">
  9195. <summary>
  9196. Interface used by the <see cref="T:log4net.LogManager"/> to select the <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9197. </summary>
  9198. <remarks>
  9199. <para>
  9200. The <see cref="T:log4net.LogManager"/> uses a <see cref="T:log4net.Core.IRepositorySelector"/>
  9201. to specify the policy for selecting the correct <see cref="T:log4net.Repository.ILoggerRepository"/>
  9202. to return to the caller.
  9203. </para>
  9204. </remarks>
  9205. <author>Nicko Cadell</author>
  9206. <author>Gert Driesen</author>
  9207. </member>
  9208. <member name="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)">
  9209. <summary>
  9210. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.
  9211. </summary>
  9212. <param name="assembly">The assembly to use to lookup to the <see cref="T:log4net.Repository.ILoggerRepository"/></param>
  9213. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the assembly.</returns>
  9214. <remarks>
  9215. <para>
  9216. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.
  9217. </para>
  9218. <para>
  9219. How the association between <see cref="T:System.Reflection.Assembly"/> and <see cref="T:log4net.Repository.ILoggerRepository"/>
  9220. is made is not defined. The implementation may choose any method for
  9221. this association. The results of this method must be repeatable, i.e.
  9222. when called again with the same arguments the result must be the
  9223. save value.
  9224. </para>
  9225. </remarks>
  9226. </member>
  9227. <member name="M:log4net.Core.IRepositorySelector.GetRepository(System.String)">
  9228. <summary>
  9229. Gets the named <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9230. </summary>
  9231. <param name="repositoryName">The name to use to lookup to the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9232. <returns>The named <see cref="T:log4net.Repository.ILoggerRepository"/></returns>
  9233. <remarks>
  9234. Lookup a named <see cref="T:log4net.Repository.ILoggerRepository"/>. This is the repository created by
  9235. calling <see cref="M:log4net.Core.IRepositorySelector.CreateRepository(System.String,System.Type)"/>.
  9236. </remarks>
  9237. </member>
  9238. <member name="M:log4net.Core.IRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">
  9239. <summary>
  9240. Creates a new repository for the assembly specified.
  9241. </summary>
  9242. <param name="assembly">The assembly to use to create the domain to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9243. <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9244. <returns>The repository created.</returns>
  9245. <remarks>
  9246. <para>
  9247. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the domain
  9248. specified such that a call to <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the
  9249. same assembly specified will return the same repository instance.
  9250. </para>
  9251. <para>
  9252. How the association between <see cref="T:System.Reflection.Assembly"/> and <see cref="T:log4net.Repository.ILoggerRepository"/>
  9253. is made is not defined. The implementation may choose any method for
  9254. this association.
  9255. </para>
  9256. </remarks>
  9257. </member>
  9258. <member name="M:log4net.Core.IRepositorySelector.CreateRepository(System.String,System.Type)">
  9259. <summary>
  9260. Creates a new repository with the name specified.
  9261. </summary>
  9262. <param name="repositoryName">The name to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9263. <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9264. <returns>The repository created.</returns>
  9265. <remarks>
  9266. <para>
  9267. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the name
  9268. specified such that a call to <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.String)"/> with the
  9269. same name will return the same repository instance.
  9270. </para>
  9271. </remarks>
  9272. </member>
  9273. <member name="M:log4net.Core.IRepositorySelector.ExistsRepository(System.String)">
  9274. <summary>
  9275. Test if a named repository exists
  9276. </summary>
  9277. <param name="repositoryName">the named repository to check</param>
  9278. <returns><c>true</c> if the repository exists</returns>
  9279. <remarks>
  9280. <para>
  9281. Test if a named repository exists. Use <see cref="M:log4net.Core.IRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)"/>
  9282. to create a new repository and <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)"/> to retrieve
  9283. a repository.
  9284. </para>
  9285. </remarks>
  9286. </member>
  9287. <member name="M:log4net.Core.IRepositorySelector.GetAllRepositories">
  9288. <summary>
  9289. Gets an array of all currently defined repositories.
  9290. </summary>
  9291. <returns>
  9292. An array of the <see cref="T:log4net.Repository.ILoggerRepository"/> instances created by
  9293. this <see cref="T:log4net.Core.IRepositorySelector"/>.</returns>
  9294. <remarks>
  9295. <para>
  9296. Gets an array of all of the repositories created by this selector.
  9297. </para>
  9298. </remarks>
  9299. </member>
  9300. <member name="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent">
  9301. <summary>
  9302. Event to notify that a logger repository has been created.
  9303. </summary>
  9304. <value>
  9305. Event to notify that a logger repository has been created.
  9306. </value>
  9307. <remarks>
  9308. <para>
  9309. Event raised when a new repository is created.
  9310. The event source will be this selector. The event args will
  9311. be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which
  9312. holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9313. </para>
  9314. </remarks>
  9315. </member>
  9316. <member name="M:log4net.Core.CompactRepositorySelector.#ctor(System.Type)">
  9317. <summary>
  9318. Create a new repository selector
  9319. </summary>
  9320. <param name="defaultRepositoryType">the type of the repositories to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>
  9321. <remarks>
  9322. <para>
  9323. Create an new compact repository selector.
  9324. The default type for repositories must be specified,
  9325. an appropriate value would be <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.
  9326. </para>
  9327. </remarks>
  9328. <exception cref="T:System.ArgumentNullException">throw if <paramref name="defaultRepositoryType"/> is null</exception>
  9329. <exception cref="T:System.ArgumentOutOfRangeException">throw if <paramref name="defaultRepositoryType"/> does not implement <see cref="T:log4net.Repository.ILoggerRepository"/></exception>
  9330. </member>
  9331. <member name="M:log4net.Core.CompactRepositorySelector.GetRepository(System.Reflection.Assembly)">
  9332. <summary>
  9333. Get the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly
  9334. </summary>
  9335. <param name="assembly">not used</param>
  9336. <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/></returns>
  9337. <remarks>
  9338. <para>
  9339. The <paramref name="assembly"/> argument is not used. This selector does not create a
  9340. separate repository for each assembly.
  9341. </para>
  9342. <para>
  9343. As a named repository is not specified the default repository is
  9344. returned. The default repository is named <c>log4net-default-repository</c>.
  9345. </para>
  9346. </remarks>
  9347. </member>
  9348. <member name="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)">
  9349. <summary>
  9350. Get the named <see cref="T:log4net.Repository.ILoggerRepository"/>
  9351. </summary>
  9352. <param name="repositoryName">the name of the repository to lookup</param>
  9353. <returns>The named <see cref="T:log4net.Repository.ILoggerRepository"/></returns>
  9354. <remarks>
  9355. <para>
  9356. Get the named <see cref="T:log4net.Repository.ILoggerRepository"/>. The default
  9357. repository is <c>log4net-default-repository</c>. Other repositories
  9358. must be created using the <see cref="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)"/>.
  9359. If the named repository does not exist an exception is thrown.
  9360. </para>
  9361. </remarks>
  9362. <exception cref="T:System.ArgumentNullException">throw if <paramref name="repositoryName"/> is null</exception>
  9363. <exception cref="T:log4net.Core.LogException">throw if the <paramref name="repositoryName"/> does not exist</exception>
  9364. </member>
  9365. <member name="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">
  9366. <summary>
  9367. Create a new repository for the assembly specified
  9368. </summary>
  9369. <param name="assembly">not used</param>
  9370. <param name="repositoryType">the type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>
  9371. <returns>the repository created</returns>
  9372. <remarks>
  9373. <para>
  9374. The <paramref name="assembly"/> argument is not used. This selector does not create a
  9375. separate repository for each assembly.
  9376. </para>
  9377. <para>
  9378. If the <paramref name="repositoryType"/> is <c>null</c> then the
  9379. default repository type specified to the constructor is used.
  9380. </para>
  9381. <para>
  9382. As a named repository is not specified the default repository is
  9383. returned. The default repository is named <c>log4net-default-repository</c>.
  9384. </para>
  9385. </remarks>
  9386. </member>
  9387. <member name="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)">
  9388. <summary>
  9389. Create a new repository for the repository specified
  9390. </summary>
  9391. <param name="repositoryName">the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/></param>
  9392. <param name="repositoryType">the type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9393. If this param is null then the default repository type is used.</param>
  9394. <returns>the repository created</returns>
  9395. <remarks>
  9396. <para>
  9397. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  9398. specified such that a call to <see cref="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)"/> with the
  9399. same repository specified will return the same repository instance.
  9400. </para>
  9401. <para>
  9402. If the named repository already exists an exception will be thrown.
  9403. </para>
  9404. <para>
  9405. If <paramref name="repositoryType"/> is <c>null</c> then the default
  9406. repository type specified to the constructor is used.
  9407. </para>
  9408. </remarks>
  9409. <exception cref="T:System.ArgumentNullException">throw if <paramref name="repositoryName"/> is null</exception>
  9410. <exception cref="T:log4net.Core.LogException">throw if the <paramref name="repositoryName"/> already exists</exception>
  9411. </member>
  9412. <member name="M:log4net.Core.CompactRepositorySelector.ExistsRepository(System.String)">
  9413. <summary>
  9414. Test if a named repository exists
  9415. </summary>
  9416. <param name="repositoryName">the named repository to check</param>
  9417. <returns><c>true</c> if the repository exists</returns>
  9418. <remarks>
  9419. <para>
  9420. Test if a named repository exists. Use <see cref="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)"/>
  9421. to create a new repository and <see cref="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)"/> to retrieve
  9422. a repository.
  9423. </para>
  9424. </remarks>
  9425. </member>
  9426. <member name="M:log4net.Core.CompactRepositorySelector.GetAllRepositories">
  9427. <summary>
  9428. Gets a list of <see cref="T:log4net.Repository.ILoggerRepository"/> objects
  9429. </summary>
  9430. <returns>an array of all known <see cref="T:log4net.Repository.ILoggerRepository"/> objects</returns>
  9431. <remarks>
  9432. <para>
  9433. Gets an array of all of the repositories created by this selector.
  9434. </para>
  9435. </remarks>
  9436. </member>
  9437. <member name="M:log4net.Core.CompactRepositorySelector.OnLoggerRepositoryCreatedEvent(log4net.Repository.ILoggerRepository)">
  9438. <summary>
  9439. Notify the registered listeners that the repository has been created
  9440. </summary>
  9441. <param name="repository">The repository that has been created</param>
  9442. <remarks>
  9443. <para>
  9444. Raises the <event cref="E:log4net.Core.CompactRepositorySelector.LoggerRepositoryCreatedEvent">LoggerRepositoryCreatedEvent</event>
  9445. event.
  9446. </para>
  9447. </remarks>
  9448. </member>
  9449. <member name="E:log4net.Core.CompactRepositorySelector.LoggerRepositoryCreatedEvent">
  9450. <summary>
  9451. Event to notify that a logger repository has been created.
  9452. </summary>
  9453. <value>
  9454. Event to notify that a logger repository has been created.
  9455. </value>
  9456. <remarks>
  9457. <para>
  9458. Event raised when a new repository is created.
  9459. The event source will be this selector. The event args will
  9460. be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which
  9461. holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9462. </para>
  9463. </remarks>
  9464. </member>
  9465. <member name="T:log4net.Core.DefaultRepositorySelector">
  9466. <summary>
  9467. The default implementation of the <see cref="T:log4net.Core.IRepositorySelector"/> interface.
  9468. </summary>
  9469. <remarks>
  9470. <para>
  9471. Uses attributes defined on the calling assembly to determine how to
  9472. configure the hierarchy for the repository.
  9473. </para>
  9474. </remarks>
  9475. <author>Nicko Cadell</author>
  9476. <author>Gert Driesen</author>
  9477. </member>
  9478. <member name="M:log4net.Core.DefaultRepositorySelector.#ctor(System.Type)">
  9479. <summary>
  9480. Creates a new repository selector.
  9481. </summary>
  9482. <param name="defaultRepositoryType">The type of the repositories to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>
  9483. <remarks>
  9484. <para>
  9485. Create an new repository selector.
  9486. The default type for repositories must be specified,
  9487. an appropriate value would be <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.
  9488. </para>
  9489. </remarks>
  9490. <exception cref="T:System.ArgumentNullException"><paramref name="defaultRepositoryType"/> is <see langword="null"/>.</exception>
  9491. <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="defaultRepositoryType"/> does not implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</exception>
  9492. </member>
  9493. <member name="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)">
  9494. <summary>
  9495. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.
  9496. </summary>
  9497. <param name="repositoryAssembly">The assembly use to lookup the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9498. <remarks>
  9499. <para>
  9500. The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and the repository
  9501. to create can be overridden by specifying the <see cref="T:log4net.Config.RepositoryAttribute"/>
  9502. attribute on the <paramref name="repositoryAssembly"/>.
  9503. </para>
  9504. <para>
  9505. The default values are to use the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>
  9506. implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the
  9507. <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.
  9508. </para>
  9509. <para>
  9510. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically configured using
  9511. any <see cref="T:log4net.Config.ConfiguratorAttribute"/> attributes defined on
  9512. the <paramref name="repositoryAssembly"/>.
  9513. </para>
  9514. </remarks>
  9515. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the assembly</returns>
  9516. <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>
  9517. </member>
  9518. <member name="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)">
  9519. <summary>
  9520. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified repository.
  9521. </summary>
  9522. <param name="repositoryName">The repository to use to lookup the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9523. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified repository.</returns>
  9524. <remarks>
  9525. <para>
  9526. Returns the named repository. If <paramref name="repositoryName"/> is <c>null</c>
  9527. a <see cref="T:System.ArgumentNullException"/> is thrown. If the repository
  9528. does not exist a <see cref="T:log4net.Core.LogException"/> is thrown.
  9529. </para>
  9530. <para>
  9531. Use <see cref="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)"/> to create a repository.
  9532. </para>
  9533. </remarks>
  9534. <exception cref="T:System.ArgumentNullException"><paramref name="repositoryName"/> is <see langword="null"/>.</exception>
  9535. <exception cref="T:log4net.Core.LogException"><paramref name="repositoryName"/> does not exist.</exception>
  9536. </member>
  9537. <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">
  9538. <summary>
  9539. Create a new repository for the assembly specified
  9540. </summary>
  9541. <param name="repositoryAssembly">the assembly to use to create the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9542. <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9543. <returns>The repository created.</returns>
  9544. <remarks>
  9545. <para>
  9546. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  9547. specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the
  9548. same assembly specified will return the same repository instance.
  9549. </para>
  9550. <para>
  9551. The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and
  9552. the repository to create can be overridden by specifying the
  9553. <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the
  9554. <paramref name="repositoryAssembly"/>. The default values are to use the
  9555. <paramref name="repositoryType"/> implementation of the
  9556. <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the
  9557. <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.
  9558. </para>
  9559. <para>
  9560. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically
  9561. configured using any <see cref="T:log4net.Config.ConfiguratorAttribute"/>
  9562. attributes defined on the <paramref name="repositoryAssembly"/>.
  9563. </para>
  9564. <para>
  9565. If a repository for the <paramref name="repositoryAssembly"/> already exists
  9566. that repository will be returned. An error will not be raised and that
  9567. repository may be of a different type to that specified in <paramref name="repositoryType"/>.
  9568. Also the <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the
  9569. assembly may be used to override the repository type specified in
  9570. <paramref name="repositoryType"/>.
  9571. </para>
  9572. </remarks>
  9573. <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>
  9574. </member>
  9575. <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type,System.String,System.Boolean)">
  9576. <summary>
  9577. Creates a new repository for the assembly specified.
  9578. </summary>
  9579. <param name="repositoryAssembly">the assembly to use to create the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9580. <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9581. <param name="repositoryName">The name to assign to the created repository</param>
  9582. <param name="readAssemblyAttributes">Set to <c>true</c> to read and apply the assembly attributes</param>
  9583. <returns>The repository created.</returns>
  9584. <remarks>
  9585. <para>
  9586. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  9587. specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the
  9588. same assembly specified will return the same repository instance.
  9589. </para>
  9590. <para>
  9591. The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and
  9592. the repository to create can be overridden by specifying the
  9593. <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the
  9594. <paramref name="repositoryAssembly"/>. The default values are to use the
  9595. <paramref name="repositoryType"/> implementation of the
  9596. <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the
  9597. <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.
  9598. </para>
  9599. <para>
  9600. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically
  9601. configured using any <see cref="T:log4net.Config.ConfiguratorAttribute"/>
  9602. attributes defined on the <paramref name="repositoryAssembly"/>.
  9603. </para>
  9604. <para>
  9605. If a repository for the <paramref name="repositoryAssembly"/> already exists
  9606. that repository will be returned. An error will not be raised and that
  9607. repository may be of a different type to that specified in <paramref name="repositoryType"/>.
  9608. Also the <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the
  9609. assembly may be used to override the repository type specified in
  9610. <paramref name="repositoryType"/>.
  9611. </para>
  9612. </remarks>
  9613. <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>
  9614. </member>
  9615. <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)">
  9616. <summary>
  9617. Creates a new repository for the specified repository.
  9618. </summary>
  9619. <param name="repositoryName">The repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>
  9620. <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9621. If this param is <see langword="null"/> then the default repository type is used.</param>
  9622. <returns>The new repository.</returns>
  9623. <remarks>
  9624. <para>
  9625. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  9626. specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)"/> with the
  9627. same repository specified will return the same repository instance.
  9628. </para>
  9629. </remarks>
  9630. <exception cref="T:System.ArgumentNullException"><paramref name="repositoryName"/> is <see langword="null"/>.</exception>
  9631. <exception cref="T:log4net.Core.LogException"><paramref name="repositoryName"/> already exists.</exception>
  9632. </member>
  9633. <member name="M:log4net.Core.DefaultRepositorySelector.ExistsRepository(System.String)">
  9634. <summary>
  9635. Test if a named repository exists
  9636. </summary>
  9637. <param name="repositoryName">the named repository to check</param>
  9638. <returns><c>true</c> if the repository exists</returns>
  9639. <remarks>
  9640. <para>
  9641. Test if a named repository exists. Use <see cref="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)"/>
  9642. to create a new repository and <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)"/> to retrieve
  9643. a repository.
  9644. </para>
  9645. </remarks>
  9646. </member>
  9647. <member name="M:log4net.Core.DefaultRepositorySelector.GetAllRepositories">
  9648. <summary>
  9649. Gets a list of <see cref="T:log4net.Repository.ILoggerRepository"/> objects
  9650. </summary>
  9651. <returns>an array of all known <see cref="T:log4net.Repository.ILoggerRepository"/> objects</returns>
  9652. <remarks>
  9653. <para>
  9654. Gets an array of all of the repositories created by this selector.
  9655. </para>
  9656. </remarks>
  9657. </member>
  9658. <member name="M:log4net.Core.DefaultRepositorySelector.AliasRepository(System.String,log4net.Repository.ILoggerRepository)">
  9659. <summary>
  9660. Aliases a repository to an existing repository.
  9661. </summary>
  9662. <param name="repositoryAlias">The repository to alias.</param>
  9663. <param name="repositoryTarget">The repository that the repository is aliased to.</param>
  9664. <remarks>
  9665. <para>
  9666. The repository specified will be aliased to the repository when created.
  9667. The repository must not already exist.
  9668. </para>
  9669. <para>
  9670. When the repository is created it must utilize the same repository type as
  9671. the repository it is aliased to, otherwise the aliasing will fail.
  9672. </para>
  9673. </remarks>
  9674. <exception cref="T:System.ArgumentNullException">
  9675. <para><paramref name="repositoryAlias"/> is <see langword="null"/>.</para>
  9676. <para>-or-</para>
  9677. <para><paramref name="repositoryTarget"/> is <see langword="null"/>.</para>
  9678. </exception>
  9679. </member>
  9680. <member name="M:log4net.Core.DefaultRepositorySelector.OnLoggerRepositoryCreatedEvent(log4net.Repository.ILoggerRepository)">
  9681. <summary>
  9682. Notifies the registered listeners that the repository has been created.
  9683. </summary>
  9684. <param name="repository">The repository that has been created.</param>
  9685. <remarks>
  9686. <para>
  9687. Raises the <see cref="E:log4net.Core.DefaultRepositorySelector.LoggerRepositoryCreatedEvent"/> event.
  9688. </para>
  9689. </remarks>
  9690. </member>
  9691. <member name="M:log4net.Core.DefaultRepositorySelector.GetInfoForAssembly(System.Reflection.Assembly,System.String@,System.Type@)">
  9692. <summary>
  9693. Gets the repository name and repository type for the specified assembly.
  9694. </summary>
  9695. <param name="assembly">The assembly that has a <see cref="T:log4net.Config.RepositoryAttribute"/>.</param>
  9696. <param name="repositoryName">in/out param to hold the repository name to use for the assembly, caller should set this to the default value before calling.</param>
  9697. <param name="repositoryType">in/out param to hold the type of the repository to create for the assembly, caller should set this to the default value before calling.</param>
  9698. <exception cref="T:System.ArgumentNullException"><paramref name="assembly"/> is <see langword="null"/>.</exception>
  9699. </member>
  9700. <member name="M:log4net.Core.DefaultRepositorySelector.ConfigureRepository(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  9701. <summary>
  9702. Configures the repository using information from the assembly.
  9703. </summary>
  9704. <param name="assembly">The assembly containing <see cref="T:log4net.Config.ConfiguratorAttribute"/>
  9705. attributes which define the configuration for the repository.</param>
  9706. <param name="repository">The repository to configure.</param>
  9707. <exception cref="T:System.ArgumentNullException">
  9708. <para><paramref name="assembly"/> is <see langword="null"/>.</para>
  9709. <para>-or-</para>
  9710. <para><paramref name="repository"/> is <see langword="null"/>.</para>
  9711. </exception>
  9712. </member>
  9713. <member name="M:log4net.Core.DefaultRepositorySelector.LoadPlugins(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  9714. <summary>
  9715. Loads the attribute defined plugins on the assembly.
  9716. </summary>
  9717. <param name="assembly">The assembly that contains the attributes.</param>
  9718. <param name="repository">The repository to add the plugins to.</param>
  9719. <exception cref="T:System.ArgumentNullException">
  9720. <para><paramref name="assembly"/> is <see langword="null"/>.</para>
  9721. <para>-or-</para>
  9722. <para><paramref name="repository"/> is <see langword="null"/>.</para>
  9723. </exception>
  9724. </member>
  9725. <member name="M:log4net.Core.DefaultRepositorySelector.LoadAliases(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">
  9726. <summary>
  9727. Loads the attribute defined aliases on the assembly.
  9728. </summary>
  9729. <param name="assembly">The assembly that contains the attributes.</param>
  9730. <param name="repository">The repository to alias to.</param>
  9731. <exception cref="T:System.ArgumentNullException">
  9732. <para><paramref name="assembly"/> is <see langword="null"/>.</para>
  9733. <para>-or-</para>
  9734. <para><paramref name="repository"/> is <see langword="null"/>.</para>
  9735. </exception>
  9736. </member>
  9737. <member name="E:log4net.Core.DefaultRepositorySelector.LoggerRepositoryCreatedEvent">
  9738. <summary>
  9739. Event to notify that a logger repository has been created.
  9740. </summary>
  9741. <value>
  9742. Event to notify that a logger repository has been created.
  9743. </value>
  9744. <remarks>
  9745. <para>
  9746. Event raised when a new repository is created.
  9747. The event source will be this selector. The event args will
  9748. be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which
  9749. holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.
  9750. </para>
  9751. </remarks>
  9752. </member>
  9753. <member name="T:log4net.Core.ErrorCode">
  9754. <summary>
  9755. Defined error codes that can be passed to the <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/> method.
  9756. </summary>
  9757. <remarks>
  9758. <para>
  9759. Values passed to the <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/> method.
  9760. </para>
  9761. </remarks>
  9762. <author>Nicko Cadell</author>
  9763. </member>
  9764. <member name="F:log4net.Core.ErrorCode.GenericFailure">
  9765. <summary>
  9766. A general error
  9767. </summary>
  9768. </member>
  9769. <member name="F:log4net.Core.ErrorCode.WriteFailure">
  9770. <summary>
  9771. Error while writing output
  9772. </summary>
  9773. </member>
  9774. <member name="F:log4net.Core.ErrorCode.FlushFailure">
  9775. <summary>
  9776. Failed to flush file
  9777. </summary>
  9778. </member>
  9779. <member name="F:log4net.Core.ErrorCode.CloseFailure">
  9780. <summary>
  9781. Failed to close file
  9782. </summary>
  9783. </member>
  9784. <member name="F:log4net.Core.ErrorCode.FileOpenFailure">
  9785. <summary>
  9786. Unable to open output file
  9787. </summary>
  9788. </member>
  9789. <member name="F:log4net.Core.ErrorCode.MissingLayout">
  9790. <summary>
  9791. No layout specified
  9792. </summary>
  9793. </member>
  9794. <member name="F:log4net.Core.ErrorCode.AddressParseFailure">
  9795. <summary>
  9796. Failed to parse address
  9797. </summary>
  9798. </member>
  9799. <member name="T:log4net.Core.IErrorHandler">
  9800. <summary>
  9801. Appenders may delegate their error handling to an <see cref="T:log4net.Core.IErrorHandler"/>.
  9802. </summary>
  9803. <remarks>
  9804. <para>
  9805. Error handling is a particularly tedious to get right because by
  9806. definition errors are hard to predict and to reproduce.
  9807. </para>
  9808. </remarks>
  9809. <author>Nicko Cadell</author>
  9810. <author>Gert Driesen</author>
  9811. </member>
  9812. <member name="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)">
  9813. <summary>
  9814. Handles the error and information about the error condition is passed as
  9815. a parameter.
  9816. </summary>
  9817. <param name="message">The message associated with the error.</param>
  9818. <param name="e">The <see cref="T:System.Exception"/> that was thrown when the error occurred.</param>
  9819. <param name="errorCode">The error code associated with the error.</param>
  9820. <remarks>
  9821. <para>
  9822. Handles the error and information about the error condition is passed as
  9823. a parameter.
  9824. </para>
  9825. </remarks>
  9826. </member>
  9827. <member name="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception)">
  9828. <summary>
  9829. Prints the error message passed as a parameter.
  9830. </summary>
  9831. <param name="message">The message associated with the error.</param>
  9832. <param name="e">The <see cref="T:System.Exception"/> that was thrown when the error occurred.</param>
  9833. <remarks>
  9834. <para>
  9835. See <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/>.
  9836. </para>
  9837. </remarks>
  9838. </member>
  9839. <member name="M:log4net.Core.IErrorHandler.Error(System.String)">
  9840. <summary>
  9841. Prints the error message passed as a parameter.
  9842. </summary>
  9843. <param name="message">The message associated with the error.</param>
  9844. <remarks>
  9845. <para>
  9846. See <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/>.
  9847. </para>
  9848. </remarks>
  9849. </member>
  9850. <member name="T:log4net.Core.IFixingRequired">
  9851. <summary>
  9852. Interface for objects that require fixing.
  9853. </summary>
  9854. <remarks>
  9855. <para>
  9856. Interface that indicates that the object requires fixing before it
  9857. can be taken outside the context of the appender's
  9858. <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method.
  9859. </para>
  9860. <para>
  9861. When objects that implement this interface are stored
  9862. in the context properties maps <see cref="T:log4net.GlobalContext"/>
  9863. <see cref="P:log4net.GlobalContext.Properties"/> and <see cref="T:log4net.ThreadContext"/>
  9864. <see cref="P:log4net.ThreadContext.Properties"/> are fixed
  9865. (see <see cref="P:log4net.Core.LoggingEvent.Fix"/>) the <see cref="M:log4net.Core.IFixingRequired.GetFixedObject"/>
  9866. method will be called.
  9867. </para>
  9868. </remarks>
  9869. <author>Nicko Cadell</author>
  9870. </member>
  9871. <member name="M:log4net.Core.IFixingRequired.GetFixedObject">
  9872. <summary>
  9873. Get a portable version of this object
  9874. </summary>
  9875. <returns>the portable instance of this object</returns>
  9876. <remarks>
  9877. <para>
  9878. Get a portable instance object that represents the current
  9879. state of this object. The portable object can be stored
  9880. and logged from any thread with identical results.
  9881. </para>
  9882. </remarks>
  9883. </member>
  9884. <member name="T:log4net.Core.ILogger">
  9885. <summary>
  9886. Interface that all loggers implement
  9887. </summary>
  9888. <remarks>
  9889. <para>
  9890. This interface supports logging events and testing if a level
  9891. is enabled for logging.
  9892. </para>
  9893. <para>
  9894. These methods will not throw exceptions. Note to implementor, ensure
  9895. that the implementation of these methods cannot allow an exception
  9896. to be thrown to the caller.
  9897. </para>
  9898. </remarks>
  9899. <author>Nicko Cadell</author>
  9900. <author>Gert Driesen</author>
  9901. </member>
  9902. <member name="M:log4net.Core.ILogger.Log(System.Type,log4net.Core.Level,System.Object,System.Exception)">
  9903. <summary>
  9904. This generic form is intended to be used by wrappers.
  9905. </summary>
  9906. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  9907. the stack boundary into the logging system for this call.</param>
  9908. <param name="level">The level of the message to be logged.</param>
  9909. <param name="message">The message object to log.</param>
  9910. <param name="exception">the exception to log, including its stack trace. Pass <c>null</c> to not log an exception.</param>
  9911. <remarks>
  9912. <para>
  9913. Generates a logging event for the specified <paramref name="level"/> using
  9914. the <paramref name="message"/> and <paramref name="exception"/>.
  9915. </para>
  9916. </remarks>
  9917. </member>
  9918. <member name="M:log4net.Core.ILogger.Log(log4net.Core.LoggingEvent)">
  9919. <summary>
  9920. This is the most generic printing method that is intended to be used
  9921. by wrappers.
  9922. </summary>
  9923. <param name="logEvent">The event being logged.</param>
  9924. <remarks>
  9925. <para>
  9926. Logs the specified logging event through this logger.
  9927. </para>
  9928. </remarks>
  9929. </member>
  9930. <member name="M:log4net.Core.ILogger.IsEnabledFor(log4net.Core.Level)">
  9931. <summary>
  9932. Checks if this logger is enabled for a given <see cref="T:log4net.Core.Level"/> passed as parameter.
  9933. </summary>
  9934. <param name="level">The level to check.</param>
  9935. <returns>
  9936. <c>true</c> if this logger is enabled for <c>level</c>, otherwise <c>false</c>.
  9937. </returns>
  9938. <remarks>
  9939. <para>
  9940. Test if this logger is going to log events of the specified <paramref name="level"/>.
  9941. </para>
  9942. </remarks>
  9943. </member>
  9944. <member name="P:log4net.Core.ILogger.Name">
  9945. <summary>
  9946. Gets the name of the logger.
  9947. </summary>
  9948. <value>
  9949. The name of the logger.
  9950. </value>
  9951. <remarks>
  9952. <para>
  9953. The name of this logger
  9954. </para>
  9955. </remarks>
  9956. </member>
  9957. <member name="P:log4net.Core.ILogger.Repository">
  9958. <summary>
  9959. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this
  9960. <c>Logger</c> instance is attached to.
  9961. </summary>
  9962. <value>
  9963. The <see cref="T:log4net.Repository.ILoggerRepository"/> that this logger belongs to.
  9964. </value>
  9965. <remarks>
  9966. <para>
  9967. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this
  9968. <c>Logger</c> instance is attached to.
  9969. </para>
  9970. </remarks>
  9971. </member>
  9972. <member name="T:log4net.Core.ILoggerWrapper">
  9973. <summary>
  9974. Base interface for all wrappers
  9975. </summary>
  9976. <remarks>
  9977. <para>
  9978. Base interface for all wrappers.
  9979. </para>
  9980. <para>
  9981. All wrappers must implement this interface.
  9982. </para>
  9983. </remarks>
  9984. <author>Nicko Cadell</author>
  9985. </member>
  9986. <member name="P:log4net.Core.ILoggerWrapper.Logger">
  9987. <summary>
  9988. Get the implementation behind this wrapper object.
  9989. </summary>
  9990. <value>
  9991. The <see cref="T:log4net.Core.ILogger"/> object that in implementing this object.
  9992. </value>
  9993. <remarks>
  9994. <para>
  9995. The <see cref="T:log4net.Core.ILogger"/> object that in implementing this
  9996. object. The <c>Logger</c> object may not
  9997. be the same object as this object because of logger decorators.
  9998. This gets the actual underlying objects that is used to process
  9999. the log events.
  10000. </para>
  10001. </remarks>
  10002. </member>
  10003. <member name="T:log4net.Core.LoggerRepositoryCreationEventHandler">
  10004. <summary>
  10005. Delegate used to handle logger repository creation event notifications
  10006. </summary>
  10007. <param name="sender">The <see cref="T:log4net.Core.IRepositorySelector"/> which created the repository.</param>
  10008. <param name="e">The <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> event args
  10009. that holds the <see cref="T:log4net.Repository.ILoggerRepository"/> instance that has been created.</param>
  10010. <remarks>
  10011. <para>
  10012. Delegate used to handle logger repository creation event notifications.
  10013. </para>
  10014. </remarks>
  10015. </member>
  10016. <member name="T:log4net.Core.LoggerRepositoryCreationEventArgs">
  10017. <summary>
  10018. Provides data for the <see cref="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent"/> event.
  10019. </summary>
  10020. <remarks>
  10021. <para>
  10022. A <see cref="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent"/>
  10023. event is raised every time a <see cref="T:log4net.Repository.ILoggerRepository"/> is created.
  10024. </para>
  10025. </remarks>
  10026. </member>
  10027. <member name="F:log4net.Core.LoggerRepositoryCreationEventArgs.m_repository">
  10028. <summary>
  10029. The <see cref="T:log4net.Repository.ILoggerRepository"/> created
  10030. </summary>
  10031. </member>
  10032. <member name="M:log4net.Core.LoggerRepositoryCreationEventArgs.#ctor(log4net.Repository.ILoggerRepository)">
  10033. <summary>
  10034. Construct instance using <see cref="T:log4net.Repository.ILoggerRepository"/> specified
  10035. </summary>
  10036. <param name="repository">the <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created</param>
  10037. <remarks>
  10038. <para>
  10039. Construct instance using <see cref="T:log4net.Repository.ILoggerRepository"/> specified
  10040. </para>
  10041. </remarks>
  10042. </member>
  10043. <member name="P:log4net.Core.LoggerRepositoryCreationEventArgs.LoggerRepository">
  10044. <summary>
  10045. The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created
  10046. </summary>
  10047. <value>
  10048. The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created
  10049. </value>
  10050. <remarks>
  10051. <para>
  10052. The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created
  10053. </para>
  10054. </remarks>
  10055. </member>
  10056. <member name="T:log4net.Core.ITriggeringEventEvaluator">
  10057. <summary>
  10058. Test if an <see cref="T:log4net.Core.LoggingEvent"/> triggers an action
  10059. </summary>
  10060. <remarks>
  10061. <para>
  10062. Implementations of this interface allow certain appenders to decide
  10063. when to perform an appender specific action.
  10064. </para>
  10065. <para>
  10066. The action or behavior triggered is defined by the implementation.
  10067. </para>
  10068. </remarks>
  10069. <author>Nicko Cadell</author>
  10070. </member>
  10071. <member name="M:log4net.Core.ITriggeringEventEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)">
  10072. <summary>
  10073. Test if this event triggers the action
  10074. </summary>
  10075. <param name="loggingEvent">The event to check</param>
  10076. <returns><c>true</c> if this event triggers the action, otherwise <c>false</c></returns>
  10077. <remarks>
  10078. <para>
  10079. Return <c>true</c> if this event triggers the action
  10080. </para>
  10081. </remarks>
  10082. </member>
  10083. <member name="T:log4net.Core.Level">
  10084. <summary>
  10085. Defines the default set of levels recognized by the system.
  10086. </summary>
  10087. <remarks>
  10088. <para>
  10089. Each <see cref="T:log4net.Core.LoggingEvent"/> has an associated <see cref="T:log4net.Core.Level"/>.
  10090. </para>
  10091. <para>
  10092. Levels have a numeric <see cref="P:log4net.Core.Level.Value"/> that defines the relative
  10093. ordering between levels. Two Levels with the same <see cref="P:log4net.Core.Level.Value"/>
  10094. are deemed to be equivalent.
  10095. </para>
  10096. <para>
  10097. The levels that are recognized by log4net are set for each <see cref="T:log4net.Repository.ILoggerRepository"/>
  10098. and each repository can have different levels defined. The levels are stored
  10099. in the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/> on the repository. Levels are
  10100. looked up by name from the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>.
  10101. </para>
  10102. <para>
  10103. When logging at level INFO the actual level used is not <see cref="F:log4net.Core.Level.Info"/> but
  10104. the value of <c>LoggerRepository.LevelMap["INFO"]</c>. The default value for this is
  10105. <see cref="F:log4net.Core.Level.Info"/>, but this can be changed by reconfiguring the level map.
  10106. </para>
  10107. <para>
  10108. Each level has a <see cref="P:log4net.Core.Level.DisplayName"/> in addition to its <see cref="P:log4net.Core.Level.Name"/>. The
  10109. <see cref="P:log4net.Core.Level.DisplayName"/> is the string that is written into the output log. By default
  10110. the display name is the same as the level name, but this can be used to alias levels
  10111. or to localize the log output.
  10112. </para>
  10113. <para>
  10114. Some of the predefined levels recognized by the system are:
  10115. </para>
  10116. <list type="bullet">
  10117. <item>
  10118. <description><see cref="F:log4net.Core.Level.Off"/>.</description>
  10119. </item>
  10120. <item>
  10121. <description><see cref="F:log4net.Core.Level.Fatal"/>.</description>
  10122. </item>
  10123. <item>
  10124. <description><see cref="F:log4net.Core.Level.Error"/>.</description>
  10125. </item>
  10126. <item>
  10127. <description><see cref="F:log4net.Core.Level.Warn"/>.</description>
  10128. </item>
  10129. <item>
  10130. <description><see cref="F:log4net.Core.Level.Info"/>.</description>
  10131. </item>
  10132. <item>
  10133. <description><see cref="F:log4net.Core.Level.Debug"/>.</description>
  10134. </item>
  10135. <item>
  10136. <description><see cref="F:log4net.Core.Level.All"/>.</description>
  10137. </item>
  10138. </list>
  10139. </remarks>
  10140. <author>Nicko Cadell</author>
  10141. <author>Gert Driesen</author>
  10142. </member>
  10143. <member name="M:log4net.Core.Level.#ctor(System.Int32,System.String,System.String)">
  10144. <summary>
  10145. Constructor
  10146. </summary>
  10147. <param name="level">Integer value for this level, higher values represent more severe levels.</param>
  10148. <param name="levelName">The string name of this level.</param>
  10149. <param name="displayName">The display name for this level. This may be localized or otherwise different from the name</param>
  10150. <remarks>
  10151. <para>
  10152. Initializes a new instance of the <see cref="T:log4net.Core.Level"/> class with
  10153. the specified level name and value.
  10154. </para>
  10155. </remarks>
  10156. </member>
  10157. <member name="M:log4net.Core.Level.#ctor(System.Int32,System.String)">
  10158. <summary>
  10159. Constructor
  10160. </summary>
  10161. <param name="level">Integer value for this level, higher values represent more severe levels.</param>
  10162. <param name="levelName">The string name of this level.</param>
  10163. <remarks>
  10164. <para>
  10165. Initializes a new instance of the <see cref="T:log4net.Core.Level"/> class with
  10166. the specified level name and value.
  10167. </para>
  10168. </remarks>
  10169. </member>
  10170. <member name="M:log4net.Core.Level.ToString">
  10171. <summary>
  10172. Returns the <see cref="T:System.String"/> representation of the current
  10173. <see cref="T:log4net.Core.Level"/>.
  10174. </summary>
  10175. <returns>
  10176. A <see cref="T:System.String"/> representation of the current <see cref="T:log4net.Core.Level"/>.
  10177. </returns>
  10178. <remarks>
  10179. <para>
  10180. Returns the level <see cref="P:log4net.Core.Level.Name"/>.
  10181. </para>
  10182. </remarks>
  10183. </member>
  10184. <member name="M:log4net.Core.Level.Equals(System.Object)">
  10185. <summary>
  10186. Compares levels.
  10187. </summary>
  10188. <param name="o">The object to compare against.</param>
  10189. <returns><c>true</c> if the objects are equal.</returns>
  10190. <remarks>
  10191. <para>
  10192. Compares the levels of <see cref="T:log4net.Core.Level"/> instances, and
  10193. defers to base class if the target object is not a <see cref="T:log4net.Core.Level"/>
  10194. instance.
  10195. </para>
  10196. </remarks>
  10197. </member>
  10198. <member name="M:log4net.Core.Level.GetHashCode">
  10199. <summary>
  10200. Returns a hash code
  10201. </summary>
  10202. <returns>A hash code for the current <see cref="T:log4net.Core.Level"/>.</returns>
  10203. <remarks>
  10204. <para>
  10205. Returns a hash code suitable for use in hashing algorithms and data
  10206. structures like a hash table.
  10207. </para>
  10208. <para>
  10209. Returns the hash code of the level <see cref="P:log4net.Core.Level.Value"/>.
  10210. </para>
  10211. </remarks>
  10212. </member>
  10213. <member name="M:log4net.Core.Level.CompareTo(System.Object)">
  10214. <summary>
  10215. Compares this instance to a specified object and returns an
  10216. indication of their relative values.
  10217. </summary>
  10218. <param name="r">A <see cref="T:log4net.Core.Level"/> instance or <see langword="null"/> to compare with this instance.</param>
  10219. <returns>
  10220. A 32-bit signed integer that indicates the relative order of the
  10221. values compared. The return value has these meanings:
  10222. <list type="table">
  10223. <listheader>
  10224. <term>Value</term>
  10225. <description>Meaning</description>
  10226. </listheader>
  10227. <item>
  10228. <term>Less than zero</term>
  10229. <description>This instance is less than <paramref name="r"/>.</description>
  10230. </item>
  10231. <item>
  10232. <term>Zero</term>
  10233. <description>This instance is equal to <paramref name="r"/>.</description>
  10234. </item>
  10235. <item>
  10236. <term>Greater than zero</term>
  10237. <description>
  10238. <para>This instance is greater than <paramref name="r"/>.</para>
  10239. <para>-or-</para>
  10240. <para><paramref name="r"/> is <see langword="null"/>.</para>
  10241. </description>
  10242. </item>
  10243. </list>
  10244. </returns>
  10245. <remarks>
  10246. <para>
  10247. <paramref name="r"/> must be an instance of <see cref="T:log4net.Core.Level"/>
  10248. or <see langword="null"/>; otherwise, an exception is thrown.
  10249. </para>
  10250. </remarks>
  10251. <exception cref="T:System.ArgumentException"><paramref name="r"/> is not a <see cref="T:log4net.Core.Level"/>.</exception>
  10252. </member>
  10253. <member name="M:log4net.Core.Level.op_GreaterThan(log4net.Core.Level,log4net.Core.Level)">
  10254. <summary>
  10255. Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/>
  10256. is greater than another specified <see cref="T:log4net.Core.Level"/>.
  10257. </summary>
  10258. <param name="l">A <see cref="T:log4net.Core.Level"/></param>
  10259. <param name="r">A <see cref="T:log4net.Core.Level"/></param>
  10260. <returns>
  10261. <c>true</c> if <paramref name="l"/> is greater than
  10262. <paramref name="r"/>; otherwise, <c>false</c>.
  10263. </returns>
  10264. <remarks>
  10265. <para>
  10266. Compares two levels.
  10267. </para>
  10268. </remarks>
  10269. </member>
  10270. <member name="M:log4net.Core.Level.op_LessThan(log4net.Core.Level,log4net.Core.Level)">
  10271. <summary>
  10272. Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/>
  10273. is less than another specified <see cref="T:log4net.Core.Level"/>.
  10274. </summary>
  10275. <param name="l">A <see cref="T:log4net.Core.Level"/></param>
  10276. <param name="r">A <see cref="T:log4net.Core.Level"/></param>
  10277. <returns>
  10278. <c>true</c> if <paramref name="l"/> is less than
  10279. <paramref name="r"/>; otherwise, <c>false</c>.
  10280. </returns>
  10281. <remarks>
  10282. <para>
  10283. Compares two levels.
  10284. </para>
  10285. </remarks>
  10286. </member>
  10287. <member name="M:log4net.Core.Level.op_GreaterThanOrEqual(log4net.Core.Level,log4net.Core.Level)">
  10288. <summary>
  10289. Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/>
  10290. is greater than or equal to another specified <see cref="T:log4net.Core.Level"/>.
  10291. </summary>
  10292. <param name="l">A <see cref="T:log4net.Core.Level"/></param>
  10293. <param name="r">A <see cref="T:log4net.Core.Level"/></param>
  10294. <returns>
  10295. <c>true</c> if <paramref name="l"/> is greater than or equal to
  10296. <paramref name="r"/>; otherwise, <c>false</c>.
  10297. </returns>
  10298. <remarks>
  10299. <para>
  10300. Compares two levels.
  10301. </para>
  10302. </remarks>
  10303. </member>
  10304. <member name="M:log4net.Core.Level.op_LessThanOrEqual(log4net.Core.Level,log4net.Core.Level)">
  10305. <summary>
  10306. Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/>
  10307. is less than or equal to another specified <see cref="T:log4net.Core.Level"/>.
  10308. </summary>
  10309. <param name="l">A <see cref="T:log4net.Core.Level"/></param>
  10310. <param name="r">A <see cref="T:log4net.Core.Level"/></param>
  10311. <returns>
  10312. <c>true</c> if <paramref name="l"/> is less than or equal to
  10313. <paramref name="r"/>; otherwise, <c>false</c>.
  10314. </returns>
  10315. <remarks>
  10316. <para>
  10317. Compares two levels.
  10318. </para>
  10319. </remarks>
  10320. </member>
  10321. <member name="M:log4net.Core.Level.op_Equality(log4net.Core.Level,log4net.Core.Level)">
  10322. <summary>
  10323. Returns a value indicating whether two specified <see cref="T:log4net.Core.Level"/>
  10324. objects have the same value.
  10325. </summary>
  10326. <param name="l">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>
  10327. <param name="r">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>
  10328. <returns>
  10329. <c>true</c> if the value of <paramref name="l"/> is the same as the
  10330. value of <paramref name="r"/>; otherwise, <c>false</c>.
  10331. </returns>
  10332. <remarks>
  10333. <para>
  10334. Compares two levels.
  10335. </para>
  10336. </remarks>
  10337. </member>
  10338. <member name="M:log4net.Core.Level.op_Inequality(log4net.Core.Level,log4net.Core.Level)">
  10339. <summary>
  10340. Returns a value indicating whether two specified <see cref="T:log4net.Core.Level"/>
  10341. objects have different values.
  10342. </summary>
  10343. <param name="l">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>
  10344. <param name="r">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>
  10345. <returns>
  10346. <c>true</c> if the value of <paramref name="l"/> is different from
  10347. the value of <paramref name="r"/>; otherwise, <c>false</c>.
  10348. </returns>
  10349. <remarks>
  10350. <para>
  10351. Compares two levels.
  10352. </para>
  10353. </remarks>
  10354. </member>
  10355. <member name="M:log4net.Core.Level.Compare(log4net.Core.Level,log4net.Core.Level)">
  10356. <summary>
  10357. Compares two specified <see cref="T:log4net.Core.Level"/> instances.
  10358. </summary>
  10359. <param name="l">The first <see cref="T:log4net.Core.Level"/> to compare.</param>
  10360. <param name="r">The second <see cref="T:log4net.Core.Level"/> to compare.</param>
  10361. <returns>
  10362. A 32-bit signed integer that indicates the relative order of the
  10363. two values compared. The return value has these meanings:
  10364. <list type="table">
  10365. <listheader>
  10366. <term>Value</term>
  10367. <description>Meaning</description>
  10368. </listheader>
  10369. <item>
  10370. <term>Less than zero</term>
  10371. <description><paramref name="l"/> is less than <paramref name="r"/>.</description>
  10372. </item>
  10373. <item>
  10374. <term>Zero</term>
  10375. <description><paramref name="l"/> is equal to <paramref name="r"/>.</description>
  10376. </item>
  10377. <item>
  10378. <term>Greater than zero</term>
  10379. <description><paramref name="l"/> is greater than <paramref name="r"/>.</description>
  10380. </item>
  10381. </list>
  10382. </returns>
  10383. <remarks>
  10384. <para>
  10385. Compares two levels.
  10386. </para>
  10387. </remarks>
  10388. </member>
  10389. <member name="F:log4net.Core.Level.Off">
  10390. <summary>
  10391. The <see cref="F:log4net.Core.Level.Off"/> level designates a higher level than all the rest.
  10392. </summary>
  10393. </member>
  10394. <member name="F:log4net.Core.Level.Emergency">
  10395. <summary>
  10396. The <see cref="F:log4net.Core.Level.Emergency"/> level designates very severe error events.
  10397. System unusable, emergencies.
  10398. </summary>
  10399. </member>
  10400. <member name="F:log4net.Core.Level.Fatal">
  10401. <summary>
  10402. The <see cref="F:log4net.Core.Level.Fatal"/> level designates very severe error events
  10403. that will presumably lead the application to abort.
  10404. </summary>
  10405. </member>
  10406. <member name="F:log4net.Core.Level.Alert">
  10407. <summary>
  10408. The <see cref="F:log4net.Core.Level.Alert"/> level designates very severe error events.
  10409. Take immediate action, alerts.
  10410. </summary>
  10411. </member>
  10412. <member name="F:log4net.Core.Level.Critical">
  10413. <summary>
  10414. The <see cref="F:log4net.Core.Level.Critical"/> level designates very severe error events.
  10415. Critical condition, critical.
  10416. </summary>
  10417. </member>
  10418. <member name="F:log4net.Core.Level.Severe">
  10419. <summary>
  10420. The <see cref="F:log4net.Core.Level.Severe"/> level designates very severe error events.
  10421. </summary>
  10422. </member>
  10423. <member name="F:log4net.Core.Level.Error">
  10424. <summary>
  10425. The <see cref="F:log4net.Core.Level.Error"/> level designates error events that might
  10426. still allow the application to continue running.
  10427. </summary>
  10428. </member>
  10429. <member name="F:log4net.Core.Level.Warn">
  10430. <summary>
  10431. The <see cref="F:log4net.Core.Level.Warn"/> level designates potentially harmful
  10432. situations.
  10433. </summary>
  10434. </member>
  10435. <member name="F:log4net.Core.Level.Notice">
  10436. <summary>
  10437. The <see cref="F:log4net.Core.Level.Notice"/> level designates informational messages
  10438. that highlight the progress of the application at the highest level.
  10439. </summary>
  10440. </member>
  10441. <member name="F:log4net.Core.Level.Info">
  10442. <summary>
  10443. The <see cref="F:log4net.Core.Level.Info"/> level designates informational messages that
  10444. highlight the progress of the application at coarse-grained level.
  10445. </summary>
  10446. </member>
  10447. <member name="F:log4net.Core.Level.Debug">
  10448. <summary>
  10449. The <see cref="F:log4net.Core.Level.Debug"/> level designates fine-grained informational
  10450. events that are most useful to debug an application.
  10451. </summary>
  10452. </member>
  10453. <member name="F:log4net.Core.Level.Fine">
  10454. <summary>
  10455. The <see cref="F:log4net.Core.Level.Fine"/> level designates fine-grained informational
  10456. events that are most useful to debug an application.
  10457. </summary>
  10458. </member>
  10459. <member name="F:log4net.Core.Level.Trace">
  10460. <summary>
  10461. The <see cref="F:log4net.Core.Level.Trace"/> level designates fine-grained informational
  10462. events that are most useful to debug an application.
  10463. </summary>
  10464. </member>
  10465. <member name="F:log4net.Core.Level.Finer">
  10466. <summary>
  10467. The <see cref="F:log4net.Core.Level.Finer"/> level designates fine-grained informational
  10468. events that are most useful to debug an application.
  10469. </summary>
  10470. </member>
  10471. <member name="F:log4net.Core.Level.Verbose">
  10472. <summary>
  10473. The <see cref="F:log4net.Core.Level.Verbose"/> level designates fine-grained informational
  10474. events that are most useful to debug an application.
  10475. </summary>
  10476. </member>
  10477. <member name="F:log4net.Core.Level.Finest">
  10478. <summary>
  10479. The <see cref="F:log4net.Core.Level.Finest"/> level designates fine-grained informational
  10480. events that are most useful to debug an application.
  10481. </summary>
  10482. </member>
  10483. <member name="F:log4net.Core.Level.All">
  10484. <summary>
  10485. The <see cref="F:log4net.Core.Level.All"/> level designates the lowest level possible.
  10486. </summary>
  10487. </member>
  10488. <member name="P:log4net.Core.Level.Name">
  10489. <summary>
  10490. Gets the name of this level.
  10491. </summary>
  10492. <value>
  10493. The name of this level.
  10494. </value>
  10495. <remarks>
  10496. <para>
  10497. Gets the name of this level.
  10498. </para>
  10499. </remarks>
  10500. </member>
  10501. <member name="P:log4net.Core.Level.Value">
  10502. <summary>
  10503. Gets the value of this level.
  10504. </summary>
  10505. <value>
  10506. The value of this level.
  10507. </value>
  10508. <remarks>
  10509. <para>
  10510. Gets the value of this level.
  10511. </para>
  10512. </remarks>
  10513. </member>
  10514. <member name="P:log4net.Core.Level.DisplayName">
  10515. <summary>
  10516. Gets the display name of this level.
  10517. </summary>
  10518. <value>
  10519. The display name of this level.
  10520. </value>
  10521. <remarks>
  10522. <para>
  10523. Gets the display name of this level.
  10524. </para>
  10525. </remarks>
  10526. </member>
  10527. <member name="T:log4net.Core.LevelCollection">
  10528. <summary>
  10529. A strongly-typed collection of <see cref="T:log4net.Core.Level"/> objects.
  10530. </summary>
  10531. <author>Nicko Cadell</author>
  10532. </member>
  10533. <member name="M:log4net.Core.LevelCollection.ReadOnly(log4net.Core.LevelCollection)">
  10534. <summary>
  10535. Creates a read-only wrapper for a <c>LevelCollection</c> instance.
  10536. </summary>
  10537. <param name="list">list to create a readonly wrapper arround</param>
  10538. <returns>
  10539. A <c>LevelCollection</c> wrapper that is read-only.
  10540. </returns>
  10541. </member>
  10542. <member name="M:log4net.Core.LevelCollection.#ctor">
  10543. <summary>
  10544. Initializes a new instance of the <c>LevelCollection</c> class
  10545. that is empty and has the default initial capacity.
  10546. </summary>
  10547. </member>
  10548. <member name="M:log4net.Core.LevelCollection.#ctor(System.Int32)">
  10549. <summary>
  10550. Initializes a new instance of the <c>LevelCollection</c> class
  10551. that has the specified initial capacity.
  10552. </summary>
  10553. <param name="capacity">
  10554. The number of elements that the new <c>LevelCollection</c> is initially capable of storing.
  10555. </param>
  10556. </member>
  10557. <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.LevelCollection)">
  10558. <summary>
  10559. Initializes a new instance of the <c>LevelCollection</c> class
  10560. that contains elements copied from the specified <c>LevelCollection</c>.
  10561. </summary>
  10562. <param name="c">The <c>LevelCollection</c> whose elements are copied to the new collection.</param>
  10563. </member>
  10564. <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.Level[])">
  10565. <summary>
  10566. Initializes a new instance of the <c>LevelCollection</c> class
  10567. that contains elements copied from the specified <see cref="T:log4net.Core.Level"/> array.
  10568. </summary>
  10569. <param name="a">The <see cref="T:log4net.Core.Level"/> array whose elements are copied to the new list.</param>
  10570. </member>
  10571. <member name="M:log4net.Core.LevelCollection.#ctor(System.Collections.ICollection)">
  10572. <summary>
  10573. Initializes a new instance of the <c>LevelCollection</c> class
  10574. that contains elements copied from the specified <see cref="T:log4net.Core.Level"/> collection.
  10575. </summary>
  10576. <param name="col">The <see cref="T:log4net.Core.Level"/> collection whose elements are copied to the new list.</param>
  10577. </member>
  10578. <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.LevelCollection.Tag)">
  10579. <summary>
  10580. Allow subclasses to avoid our default constructors
  10581. </summary>
  10582. <param name="tag"></param>
  10583. </member>
  10584. <member name="M:log4net.Core.LevelCollection.CopyTo(log4net.Core.Level[])">
  10585. <summary>
  10586. Copies the entire <c>LevelCollection</c> to a one-dimensional
  10587. <see cref="T:log4net.Core.Level"/> array.
  10588. </summary>
  10589. <param name="array">The one-dimensional <see cref="T:log4net.Core.Level"/> array to copy to.</param>
  10590. </member>
  10591. <member name="M:log4net.Core.LevelCollection.CopyTo(log4net.Core.Level[],System.Int32)">
  10592. <summary>
  10593. Copies the entire <c>LevelCollection</c> to a one-dimensional
  10594. <see cref="T:log4net.Core.Level"/> array, starting at the specified index of the target array.
  10595. </summary>
  10596. <param name="array">The one-dimensional <see cref="T:log4net.Core.Level"/> array to copy to.</param>
  10597. <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>
  10598. </member>
  10599. <member name="M:log4net.Core.LevelCollection.Add(log4net.Core.Level)">
  10600. <summary>
  10601. Adds a <see cref="T:log4net.Core.Level"/> to the end of the <c>LevelCollection</c>.
  10602. </summary>
  10603. <param name="item">The <see cref="T:log4net.Core.Level"/> to be added to the end of the <c>LevelCollection</c>.</param>
  10604. <returns>The index at which the value has been added.</returns>
  10605. </member>
  10606. <member name="M:log4net.Core.LevelCollection.Clear">
  10607. <summary>
  10608. Removes all elements from the <c>LevelCollection</c>.
  10609. </summary>
  10610. </member>
  10611. <member name="M:log4net.Core.LevelCollection.Clone">
  10612. <summary>
  10613. Creates a shallow copy of the <see cref="T:log4net.Core.LevelCollection"/>.
  10614. </summary>
  10615. <returns>A new <see cref="T:log4net.Core.LevelCollection"/> with a shallow copy of the collection data.</returns>
  10616. </member>
  10617. <member name="M:log4net.Core.LevelCollection.Contains(log4net.Core.Level)">
  10618. <summary>
  10619. Determines whether a given <see cref="T:log4net.Core.Level"/> is in the <c>LevelCollection</c>.
  10620. </summary>
  10621. <param name="item">The <see cref="T:log4net.Core.Level"/> to check for.</param>
  10622. <returns><c>true</c> if <paramref name="item"/> is found in the <c>LevelCollection</c>; otherwise, <c>false</c>.</returns>
  10623. </member>
  10624. <member name="M:log4net.Core.LevelCollection.IndexOf(log4net.Core.Level)">
  10625. <summary>
  10626. Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Core.Level"/>
  10627. in the <c>LevelCollection</c>.
  10628. </summary>
  10629. <param name="item">The <see cref="T:log4net.Core.Level"/> to locate in the <c>LevelCollection</c>.</param>
  10630. <returns>
  10631. The zero-based index of the first occurrence of <paramref name="item"/>
  10632. in the entire <c>LevelCollection</c>, if found; otherwise, -1.
  10633. </returns>
  10634. </member>
  10635. <member name="M:log4net.Core.LevelCollection.Insert(System.Int32,log4net.Core.Level)">
  10636. <summary>
  10637. Inserts an element into the <c>LevelCollection</c> at the specified index.
  10638. </summary>
  10639. <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
  10640. <param name="item">The <see cref="T:log4net.Core.Level"/> to insert.</param>
  10641. <exception cref="T:System.ArgumentOutOfRangeException">
  10642. <para><paramref name="index"/> is less than zero</para>
  10643. <para>-or-</para>
  10644. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>
  10645. </exception>
  10646. </member>
  10647. <member name="M:log4net.Core.LevelCollection.Remove(log4net.Core.Level)">
  10648. <summary>
  10649. Removes the first occurrence of a specific <see cref="T:log4net.Core.Level"/> from the <c>LevelCollection</c>.
  10650. </summary>
  10651. <param name="item">The <see cref="T:log4net.Core.Level"/> to remove from the <c>LevelCollection</c>.</param>
  10652. <exception cref="T:System.ArgumentException">
  10653. The specified <see cref="T:log4net.Core.Level"/> was not found in the <c>LevelCollection</c>.
  10654. </exception>
  10655. </member>
  10656. <member name="M:log4net.Core.LevelCollection.RemoveAt(System.Int32)">
  10657. <summary>
  10658. Removes the element at the specified index of the <c>LevelCollection</c>.
  10659. </summary>
  10660. <param name="index">The zero-based index of the element to remove.</param>
  10661. <exception cref="T:System.ArgumentOutOfRangeException">
  10662. <para><paramref name="index"/> is less than zero</para>
  10663. <para>-or-</para>
  10664. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>
  10665. </exception>
  10666. </member>
  10667. <member name="M:log4net.Core.LevelCollection.GetEnumerator">
  10668. <summary>
  10669. Returns an enumerator that can iterate through the <c>LevelCollection</c>.
  10670. </summary>
  10671. <returns>An <see cref="T:log4net.Core.LevelCollection.Enumerator"/> for the entire <c>LevelCollection</c>.</returns>
  10672. </member>
  10673. <member name="M:log4net.Core.LevelCollection.AddRange(log4net.Core.LevelCollection)">
  10674. <summary>
  10675. Adds the elements of another <c>LevelCollection</c> to the current <c>LevelCollection</c>.
  10676. </summary>
  10677. <param name="x">The <c>LevelCollection</c> whose elements should be added to the end of the current <c>LevelCollection</c>.</param>
  10678. <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>
  10679. </member>
  10680. <member name="M:log4net.Core.LevelCollection.AddRange(log4net.Core.Level[])">
  10681. <summary>
  10682. Adds the elements of a <see cref="T:log4net.Core.Level"/> array to the current <c>LevelCollection</c>.
  10683. </summary>
  10684. <param name="x">The <see cref="T:log4net.Core.Level"/> array whose elements should be added to the end of the <c>LevelCollection</c>.</param>
  10685. <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>
  10686. </member>
  10687. <member name="M:log4net.Core.LevelCollection.AddRange(System.Collections.ICollection)">
  10688. <summary>
  10689. Adds the elements of a <see cref="T:log4net.Core.Level"/> collection to the current <c>LevelCollection</c>.
  10690. </summary>
  10691. <param name="col">The <see cref="T:log4net.Core.Level"/> collection whose elements should be added to the end of the <c>LevelCollection</c>.</param>
  10692. <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>
  10693. </member>
  10694. <member name="M:log4net.Core.LevelCollection.TrimToSize">
  10695. <summary>
  10696. Sets the capacity to the actual number of elements.
  10697. </summary>
  10698. </member>
  10699. <member name="M:log4net.Core.LevelCollection.ValidateIndex(System.Int32)">
  10700. <exception cref="T:System.ArgumentOutOfRangeException">
  10701. <para><paramref name="index"/> is less than zero</para>
  10702. <para>-or-</para>
  10703. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>
  10704. </exception>
  10705. </member>
  10706. <member name="M:log4net.Core.LevelCollection.ValidateIndex(System.Int32,System.Boolean)">
  10707. <exception cref="T:System.ArgumentOutOfRangeException">
  10708. <para><paramref name="index"/> is less than zero</para>
  10709. <para>-or-</para>
  10710. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>
  10711. </exception>
  10712. </member>
  10713. <member name="P:log4net.Core.LevelCollection.Count">
  10714. <summary>
  10715. Gets the number of elements actually contained in the <c>LevelCollection</c>.
  10716. </summary>
  10717. </member>
  10718. <member name="P:log4net.Core.LevelCollection.IsSynchronized">
  10719. <summary>
  10720. Gets a value indicating whether access to the collection is synchronized (thread-safe).
  10721. </summary>
  10722. <value>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</value>
  10723. </member>
  10724. <member name="P:log4net.Core.LevelCollection.SyncRoot">
  10725. <summary>
  10726. Gets an object that can be used to synchronize access to the collection.
  10727. </summary>
  10728. </member>
  10729. <member name="P:log4net.Core.LevelCollection.Item(System.Int32)">
  10730. <summary>
  10731. Gets or sets the <see cref="T:log4net.Core.Level"/> at the specified index.
  10732. </summary>
  10733. <param name="index">The zero-based index of the element to get or set.</param>
  10734. <exception cref="T:System.ArgumentOutOfRangeException">
  10735. <para><paramref name="index"/> is less than zero</para>
  10736. <para>-or-</para>
  10737. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>
  10738. </exception>
  10739. </member>
  10740. <member name="P:log4net.Core.LevelCollection.IsFixedSize">
  10741. <summary>
  10742. Gets a value indicating whether the collection has a fixed size.
  10743. </summary>
  10744. <value>true if the collection has a fixed size; otherwise, false. The default is false</value>
  10745. </member>
  10746. <member name="P:log4net.Core.LevelCollection.IsReadOnly">
  10747. <summary>
  10748. Gets a value indicating whether the IList is read-only.
  10749. </summary>
  10750. <value>true if the collection is read-only; otherwise, false. The default is false</value>
  10751. </member>
  10752. <member name="P:log4net.Core.LevelCollection.Capacity">
  10753. <summary>
  10754. Gets or sets the number of elements the <c>LevelCollection</c> can contain.
  10755. </summary>
  10756. </member>
  10757. <member name="T:log4net.Core.LevelCollection.ILevelCollectionEnumerator">
  10758. <summary>
  10759. Supports type-safe iteration over a <see cref="T:log4net.Core.LevelCollection"/>.
  10760. </summary>
  10761. </member>
  10762. <member name="M:log4net.Core.LevelCollection.ILevelCollectionEnumerator.MoveNext">
  10763. <summary>
  10764. Advances the enumerator to the next element in the collection.
  10765. </summary>
  10766. <returns>
  10767. <c>true</c> if the enumerator was successfully advanced to the next element;
  10768. <c>false</c> if the enumerator has passed the end of the collection.
  10769. </returns>
  10770. <exception cref="T:System.InvalidOperationException">
  10771. The collection was modified after the enumerator was created.
  10772. </exception>
  10773. </member>
  10774. <member name="M:log4net.Core.LevelCollection.ILevelCollectionEnumerator.Reset">
  10775. <summary>
  10776. Sets the enumerator to its initial position, before the first element in the collection.
  10777. </summary>
  10778. </member>
  10779. <member name="P:log4net.Core.LevelCollection.ILevelCollectionEnumerator.Current">
  10780. <summary>
  10781. Gets the current element in the collection.
  10782. </summary>
  10783. </member>
  10784. <member name="T:log4net.Core.LevelCollection.Tag">
  10785. <summary>
  10786. Type visible only to our subclasses
  10787. Used to access protected constructor
  10788. </summary>
  10789. </member>
  10790. <member name="F:log4net.Core.LevelCollection.Tag.Default">
  10791. <summary>
  10792. A value
  10793. </summary>
  10794. </member>
  10795. <member name="T:log4net.Core.LevelCollection.Enumerator">
  10796. <summary>
  10797. Supports simple iteration over a <see cref="T:log4net.Core.LevelCollection"/>.
  10798. </summary>
  10799. </member>
  10800. <member name="M:log4net.Core.LevelCollection.Enumerator.#ctor(log4net.Core.LevelCollection)">
  10801. <summary>
  10802. Initializes a new instance of the <c>Enumerator</c> class.
  10803. </summary>
  10804. <param name="tc"></param>
  10805. </member>
  10806. <member name="M:log4net.Core.LevelCollection.Enumerator.MoveNext">
  10807. <summary>
  10808. Advances the enumerator to the next element in the collection.
  10809. </summary>
  10810. <returns>
  10811. <c>true</c> if the enumerator was successfully advanced to the next element;
  10812. <c>false</c> if the enumerator has passed the end of the collection.
  10813. </returns>
  10814. <exception cref="T:System.InvalidOperationException">
  10815. The collection was modified after the enumerator was created.
  10816. </exception>
  10817. </member>
  10818. <member name="M:log4net.Core.LevelCollection.Enumerator.Reset">
  10819. <summary>
  10820. Sets the enumerator to its initial position, before the first element in the collection.
  10821. </summary>
  10822. </member>
  10823. <member name="P:log4net.Core.LevelCollection.Enumerator.Current">
  10824. <summary>
  10825. Gets the current element in the collection.
  10826. </summary>
  10827. </member>
  10828. <member name="T:log4net.Core.LevelEvaluator">
  10829. <summary>
  10830. An evaluator that triggers at a threshold level
  10831. </summary>
  10832. <remarks>
  10833. <para>
  10834. This evaluator will trigger if the level of the event
  10835. passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>
  10836. is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>
  10837. level.
  10838. </para>
  10839. </remarks>
  10840. <author>Nicko Cadell</author>
  10841. </member>
  10842. <member name="F:log4net.Core.LevelEvaluator.m_threshold">
  10843. <summary>
  10844. The threshold for triggering
  10845. </summary>
  10846. </member>
  10847. <member name="M:log4net.Core.LevelEvaluator.#ctor">
  10848. <summary>
  10849. Create a new evaluator using the <see cref="F:log4net.Core.Level.Off"/> threshold.
  10850. </summary>
  10851. <remarks>
  10852. <para>
  10853. Create a new evaluator using the <see cref="F:log4net.Core.Level.Off"/> threshold.
  10854. </para>
  10855. <para>
  10856. This evaluator will trigger if the level of the event
  10857. passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>
  10858. is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>
  10859. level.
  10860. </para>
  10861. </remarks>
  10862. </member>
  10863. <member name="M:log4net.Core.LevelEvaluator.#ctor(log4net.Core.Level)">
  10864. <summary>
  10865. Create a new evaluator using the specified <see cref="T:log4net.Core.Level"/> threshold.
  10866. </summary>
  10867. <param name="threshold">the threshold to trigger at</param>
  10868. <remarks>
  10869. <para>
  10870. Create a new evaluator using the specified <see cref="T:log4net.Core.Level"/> threshold.
  10871. </para>
  10872. <para>
  10873. This evaluator will trigger if the level of the event
  10874. passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>
  10875. is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>
  10876. level.
  10877. </para>
  10878. </remarks>
  10879. </member>
  10880. <member name="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)">
  10881. <summary>
  10882. Is this <paramref name="loggingEvent"/> the triggering event?
  10883. </summary>
  10884. <param name="loggingEvent">The event to check</param>
  10885. <returns>This method returns <c>true</c>, if the event level
  10886. is equal or higher than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>.
  10887. Otherwise it returns <c>false</c></returns>
  10888. <remarks>
  10889. <para>
  10890. This evaluator will trigger if the level of the event
  10891. passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>
  10892. is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>
  10893. level.
  10894. </para>
  10895. </remarks>
  10896. </member>
  10897. <member name="P:log4net.Core.LevelEvaluator.Threshold">
  10898. <summary>
  10899. the threshold to trigger at
  10900. </summary>
  10901. <value>
  10902. The <see cref="T:log4net.Core.Level"/> that will cause this evaluator to trigger
  10903. </value>
  10904. <remarks>
  10905. <para>
  10906. This evaluator will trigger if the level of the event
  10907. passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>
  10908. is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>
  10909. level.
  10910. </para>
  10911. </remarks>
  10912. </member>
  10913. <member name="T:log4net.Core.LevelMap">
  10914. <summary>
  10915. Mapping between string name and Level object
  10916. </summary>
  10917. <remarks>
  10918. <para>
  10919. Mapping between string name and <see cref="T:log4net.Core.Level"/> object.
  10920. This mapping is held separately for each <see cref="T:log4net.Repository.ILoggerRepository"/>.
  10921. The level name is case insensitive.
  10922. </para>
  10923. </remarks>
  10924. <author>Nicko Cadell</author>
  10925. </member>
  10926. <member name="F:log4net.Core.LevelMap.m_mapName2Level">
  10927. <summary>
  10928. Mapping from level name to Level object. The
  10929. level name is case insensitive
  10930. </summary>
  10931. </member>
  10932. <member name="M:log4net.Core.LevelMap.#ctor">
  10933. <summary>
  10934. Construct the level map
  10935. </summary>
  10936. <remarks>
  10937. <para>
  10938. Construct the level map.
  10939. </para>
  10940. </remarks>
  10941. </member>
  10942. <member name="M:log4net.Core.LevelMap.Clear">
  10943. <summary>
  10944. Clear the internal maps of all levels
  10945. </summary>
  10946. <remarks>
  10947. <para>
  10948. Clear the internal maps of all levels
  10949. </para>
  10950. </remarks>
  10951. </member>
  10952. <member name="M:log4net.Core.LevelMap.Add(System.String,System.Int32)">
  10953. <summary>
  10954. Create a new Level and add it to the map
  10955. </summary>
  10956. <param name="name">the string to display for the Level</param>
  10957. <param name="value">the level value to give to the Level</param>
  10958. <remarks>
  10959. <para>
  10960. Create a new Level and add it to the map
  10961. </para>
  10962. </remarks>
  10963. <seealso cref="M:log4net.Core.LevelMap.Add(System.String,System.Int32,System.String)"/>
  10964. </member>
  10965. <member name="M:log4net.Core.LevelMap.Add(System.String,System.Int32,System.String)">
  10966. <summary>
  10967. Create a new Level and add it to the map
  10968. </summary>
  10969. <param name="name">the string to display for the Level</param>
  10970. <param name="value">the level value to give to the Level</param>
  10971. <param name="displayName">the display name to give to the Level</param>
  10972. <remarks>
  10973. <para>
  10974. Create a new Level and add it to the map
  10975. </para>
  10976. </remarks>
  10977. </member>
  10978. <member name="M:log4net.Core.LevelMap.Add(log4net.Core.Level)">
  10979. <summary>
  10980. Add a Level to the map
  10981. </summary>
  10982. <param name="level">the Level to add</param>
  10983. <remarks>
  10984. <para>
  10985. Add a Level to the map
  10986. </para>
  10987. </remarks>
  10988. </member>
  10989. <member name="M:log4net.Core.LevelMap.LookupWithDefault(log4net.Core.Level)">
  10990. <summary>
  10991. Lookup a named level from the map
  10992. </summary>
  10993. <param name="defaultLevel">the name of the level to lookup is taken from this level.
  10994. If the level is not set on the map then this level is added</param>
  10995. <returns>the level in the map with the name specified</returns>
  10996. <remarks>
  10997. <para>
  10998. Lookup a named level from the map. The name of the level to lookup is taken
  10999. from the <see cref="P:log4net.Core.Level.Name"/> property of the <paramref name="defaultLevel"/>
  11000. argument.
  11001. </para>
  11002. <para>
  11003. If no level with the specified name is found then the
  11004. <paramref name="defaultLevel"/> argument is added to the level map
  11005. and returned.
  11006. </para>
  11007. </remarks>
  11008. </member>
  11009. <member name="P:log4net.Core.LevelMap.Item(System.String)">
  11010. <summary>
  11011. Lookup a <see cref="T:log4net.Core.Level"/> by name
  11012. </summary>
  11013. <param name="name">The name of the Level to lookup</param>
  11014. <returns>a Level from the map with the name specified</returns>
  11015. <remarks>
  11016. <para>
  11017. Returns the <see cref="T:log4net.Core.Level"/> from the
  11018. map with the name specified. If the no level is
  11019. found then <c>null</c> is returned.
  11020. </para>
  11021. </remarks>
  11022. </member>
  11023. <member name="P:log4net.Core.LevelMap.AllLevels">
  11024. <summary>
  11025. Return all possible levels as a list of Level objects.
  11026. </summary>
  11027. <returns>all possible levels as a list of Level objects</returns>
  11028. <remarks>
  11029. <para>
  11030. Return all possible levels as a list of Level objects.
  11031. </para>
  11032. </remarks>
  11033. </member>
  11034. <member name="T:log4net.Core.LocationInfo">
  11035. <summary>
  11036. The internal representation of caller location information.
  11037. </summary>
  11038. <remarks>
  11039. <para>
  11040. This class uses the <c>System.Diagnostics.StackTrace</c> class to generate
  11041. a call stack. The caller's information is then extracted from this stack.
  11042. </para>
  11043. <para>
  11044. The <c>System.Diagnostics.StackTrace</c> class is not supported on the
  11045. .NET Compact Framework 1.0 therefore caller location information is not
  11046. available on that framework.
  11047. </para>
  11048. <para>
  11049. The <c>System.Diagnostics.StackTrace</c> class has this to say about Release builds:
  11050. </para>
  11051. <para>
  11052. "StackTrace information will be most informative with Debug build configurations.
  11053. By default, Debug builds include debug symbols, while Release builds do not. The
  11054. debug symbols contain most of the file, method name, line number, and column
  11055. information used in constructing StackFrame and StackTrace objects. StackTrace
  11056. might not report as many method calls as expected, due to code transformations
  11057. that occur during optimization."
  11058. </para>
  11059. <para>
  11060. This means that in a Release build the caller information may be incomplete or may
  11061. not exist at all! Therefore caller location information cannot be relied upon in a Release build.
  11062. </para>
  11063. </remarks>
  11064. <author>Nicko Cadell</author>
  11065. <author>Gert Driesen</author>
  11066. </member>
  11067. <member name="F:log4net.Core.LocationInfo.NA">
  11068. <summary>
  11069. When location information is not available the constant
  11070. <c>NA</c> is returned. Current value of this string
  11071. constant is <b>?</b>.
  11072. </summary>
  11073. </member>
  11074. <member name="M:log4net.Core.LocationInfo.#ctor(System.Type)">
  11075. <summary>
  11076. Constructor
  11077. </summary>
  11078. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  11079. the stack boundary into the logging system for this call.</param>
  11080. <remarks>
  11081. <para>
  11082. Initializes a new instance of the <see cref="T:log4net.Core.LocationInfo"/>
  11083. class based on the current thread.
  11084. </para>
  11085. </remarks>
  11086. </member>
  11087. <member name="M:log4net.Core.LocationInfo.#ctor(System.String,System.String,System.String,System.String)">
  11088. <summary>
  11089. Constructor
  11090. </summary>
  11091. <param name="className">The fully qualified class name.</param>
  11092. <param name="methodName">The method name.</param>
  11093. <param name="fileName">The file name.</param>
  11094. <param name="lineNumber">The line number of the method within the file.</param>
  11095. <remarks>
  11096. <para>
  11097. Initializes a new instance of the <see cref="T:log4net.Core.LocationInfo"/>
  11098. class with the specified data.
  11099. </para>
  11100. </remarks>
  11101. </member>
  11102. <member name="P:log4net.Core.LocationInfo.ClassName">
  11103. <summary>
  11104. Gets the fully qualified class name of the caller making the logging
  11105. request.
  11106. </summary>
  11107. <value>
  11108. The fully qualified class name of the caller making the logging
  11109. request.
  11110. </value>
  11111. <remarks>
  11112. <para>
  11113. Gets the fully qualified class name of the caller making the logging
  11114. request.
  11115. </para>
  11116. </remarks>
  11117. </member>
  11118. <member name="P:log4net.Core.LocationInfo.FileName">
  11119. <summary>
  11120. Gets the file name of the caller.
  11121. </summary>
  11122. <value>
  11123. The file name of the caller.
  11124. </value>
  11125. <remarks>
  11126. <para>
  11127. Gets the file name of the caller.
  11128. </para>
  11129. </remarks>
  11130. </member>
  11131. <member name="P:log4net.Core.LocationInfo.LineNumber">
  11132. <summary>
  11133. Gets the line number of the caller.
  11134. </summary>
  11135. <value>
  11136. The line number of the caller.
  11137. </value>
  11138. <remarks>
  11139. <para>
  11140. Gets the line number of the caller.
  11141. </para>
  11142. </remarks>
  11143. </member>
  11144. <member name="P:log4net.Core.LocationInfo.MethodName">
  11145. <summary>
  11146. Gets the method name of the caller.
  11147. </summary>
  11148. <value>
  11149. The method name of the caller.
  11150. </value>
  11151. <remarks>
  11152. <para>
  11153. Gets the method name of the caller.
  11154. </para>
  11155. </remarks>
  11156. </member>
  11157. <member name="P:log4net.Core.LocationInfo.FullInfo">
  11158. <summary>
  11159. Gets all available caller information
  11160. </summary>
  11161. <value>
  11162. All available caller information, in the format
  11163. <c>fully.qualified.classname.of.caller.methodName(Filename:line)</c>
  11164. </value>
  11165. <remarks>
  11166. <para>
  11167. Gets all available caller information, in the format
  11168. <c>fully.qualified.classname.of.caller.methodName(Filename:line)</c>
  11169. </para>
  11170. </remarks>
  11171. </member>
  11172. <member name="T:log4net.Core.LoggerManager">
  11173. <summary>
  11174. Static manager that controls the creation of repositories
  11175. </summary>
  11176. <remarks>
  11177. <para>
  11178. Static manager that controls the creation of repositories
  11179. </para>
  11180. <para>
  11181. This class is used by the wrapper managers (e.g. <see cref="T:log4net.LogManager"/>)
  11182. to provide access to the <see cref="T:log4net.Core.ILogger"/> objects.
  11183. </para>
  11184. <para>
  11185. This manager also holds the <see cref="T:log4net.Core.IRepositorySelector"/> that is used to
  11186. lookup and create repositories. The selector can be set either programmatically using
  11187. the <see cref="P:log4net.Core.LoggerManager.RepositorySelector"/> property, or by setting the <c>log4net.RepositorySelector</c>
  11188. AppSetting in the applications config file to the fully qualified type name of the
  11189. selector to use.
  11190. </para>
  11191. </remarks>
  11192. <author>Nicko Cadell</author>
  11193. <author>Gert Driesen</author>
  11194. </member>
  11195. <member name="M:log4net.Core.LoggerManager.#ctor">
  11196. <summary>
  11197. Private constructor to prevent instances. Only static methods should be used.
  11198. </summary>
  11199. <remarks>
  11200. <para>
  11201. Private constructor to prevent instances. Only static methods should be used.
  11202. </para>
  11203. </remarks>
  11204. </member>
  11205. <member name="M:log4net.Core.LoggerManager.#cctor">
  11206. <summary>
  11207. Hook the shutdown event
  11208. </summary>
  11209. <remarks>
  11210. <para>
  11211. On the full .NET runtime, the static constructor hooks up the
  11212. <c>AppDomain.ProcessExit</c> and <c>AppDomain.DomainUnload</c>> events.
  11213. These are used to shutdown the log4net system as the application exits.
  11214. </para>
  11215. </remarks>
  11216. </member>
  11217. <member name="M:log4net.Core.LoggerManager.RegisterAppDomainEvents">
  11218. <summary>
  11219. Register for ProcessExit and DomainUnload events on the AppDomain
  11220. </summary>
  11221. <remarks>
  11222. <para>
  11223. This needs to be in a separate method because the events make
  11224. a LinkDemand for the ControlAppDomain SecurityPermission. Because
  11225. this is a LinkDemand it is demanded at JIT time. Therefore we cannot
  11226. catch the exception in the method itself, we have to catch it in the
  11227. caller.
  11228. </para>
  11229. </remarks>
  11230. </member>
  11231. <member name="M:log4net.Core.LoggerManager.GetLoggerRepository(System.String)">
  11232. <summary>
  11233. Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.
  11234. </summary>
  11235. <param name="repository">the repository to lookup in</param>
  11236. <returns>Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance</returns>
  11237. <remarks>
  11238. <para>
  11239. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified
  11240. by the <paramref name="repository"/> argument.
  11241. </para>
  11242. </remarks>
  11243. </member>
  11244. <member name="M:log4net.Core.LoggerManager.GetLoggerRepository(System.Reflection.Assembly)">
  11245. <summary>
  11246. Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.
  11247. </summary>
  11248. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11249. <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>
  11250. </member>
  11251. <member name="M:log4net.Core.LoggerManager.GetRepository(System.String)">
  11252. <summary>
  11253. Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.
  11254. </summary>
  11255. <param name="repository">the repository to lookup in</param>
  11256. <returns>Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance</returns>
  11257. <remarks>
  11258. <para>
  11259. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified
  11260. by the <paramref name="repository"/> argument.
  11261. </para>
  11262. </remarks>
  11263. </member>
  11264. <member name="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)">
  11265. <summary>
  11266. Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.
  11267. </summary>
  11268. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11269. <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>
  11270. <remarks>
  11271. <para>
  11272. Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.
  11273. </para>
  11274. </remarks>
  11275. </member>
  11276. <member name="M:log4net.Core.LoggerManager.Exists(System.String,System.String)">
  11277. <summary>
  11278. Returns the named logger if it exists.
  11279. </summary>
  11280. <param name="repository">The repository to lookup in.</param>
  11281. <param name="name">The fully qualified logger name to look for.</param>
  11282. <returns>
  11283. The logger found, or <c>null</c> if the named logger does not exist in the
  11284. specified repository.
  11285. </returns>
  11286. <remarks>
  11287. <para>
  11288. If the named logger exists (in the specified repository) then it
  11289. returns a reference to the logger, otherwise it returns
  11290. <c>null</c>.
  11291. </para>
  11292. </remarks>
  11293. </member>
  11294. <member name="M:log4net.Core.LoggerManager.Exists(System.Reflection.Assembly,System.String)">
  11295. <summary>
  11296. Returns the named logger if it exists.
  11297. </summary>
  11298. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11299. <param name="name">The fully qualified logger name to look for.</param>
  11300. <returns>
  11301. The logger found, or <c>null</c> if the named logger does not exist in the
  11302. specified assembly's repository.
  11303. </returns>
  11304. <remarks>
  11305. <para>
  11306. If the named logger exists (in the specified assembly's repository) then it
  11307. returns a reference to the logger, otherwise it returns
  11308. <c>null</c>.
  11309. </para>
  11310. </remarks>
  11311. </member>
  11312. <member name="M:log4net.Core.LoggerManager.GetCurrentLoggers(System.String)">
  11313. <summary>
  11314. Returns all the currently defined loggers in the specified repository.
  11315. </summary>
  11316. <param name="repository">The repository to lookup in.</param>
  11317. <returns>All the defined loggers.</returns>
  11318. <remarks>
  11319. <para>
  11320. The root logger is <b>not</b> included in the returned array.
  11321. </para>
  11322. </remarks>
  11323. </member>
  11324. <member name="M:log4net.Core.LoggerManager.GetCurrentLoggers(System.Reflection.Assembly)">
  11325. <summary>
  11326. Returns all the currently defined loggers in the specified assembly's repository.
  11327. </summary>
  11328. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11329. <returns>All the defined loggers.</returns>
  11330. <remarks>
  11331. <para>
  11332. The root logger is <b>not</b> included in the returned array.
  11333. </para>
  11334. </remarks>
  11335. </member>
  11336. <member name="M:log4net.Core.LoggerManager.GetLogger(System.String,System.String)">
  11337. <summary>
  11338. Retrieves or creates a named logger.
  11339. </summary>
  11340. <param name="repository">The repository to lookup in.</param>
  11341. <param name="name">The name of the logger to retrieve.</param>
  11342. <returns>The logger with the name specified.</returns>
  11343. <remarks>
  11344. <para>
  11345. Retrieves a logger named as the <paramref name="name"/>
  11346. parameter. If the named logger already exists, then the
  11347. existing instance will be returned. Otherwise, a new instance is
  11348. created.
  11349. </para>
  11350. <para>
  11351. By default, loggers do not have a set level but inherit
  11352. it from the hierarchy. This is one of the central features of
  11353. log4net.
  11354. </para>
  11355. </remarks>
  11356. </member>
  11357. <member name="M:log4net.Core.LoggerManager.GetLogger(System.Reflection.Assembly,System.String)">
  11358. <summary>
  11359. Retrieves or creates a named logger.
  11360. </summary>
  11361. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11362. <param name="name">The name of the logger to retrieve.</param>
  11363. <returns>The logger with the name specified.</returns>
  11364. <remarks>
  11365. <para>
  11366. Retrieves a logger named as the <paramref name="name"/>
  11367. parameter. If the named logger already exists, then the
  11368. existing instance will be returned. Otherwise, a new instance is
  11369. created.
  11370. </para>
  11371. <para>
  11372. By default, loggers do not have a set level but inherit
  11373. it from the hierarchy. This is one of the central features of
  11374. log4net.
  11375. </para>
  11376. </remarks>
  11377. </member>
  11378. <member name="M:log4net.Core.LoggerManager.GetLogger(System.String,System.Type)">
  11379. <summary>
  11380. Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.
  11381. </summary>
  11382. <param name="repository">The repository to lookup in.</param>
  11383. <param name="type">The <paramref name="type"/> of which the fullname will be used as the name of the logger to retrieve.</param>
  11384. <returns>The logger with the name specified.</returns>
  11385. <remarks>
  11386. <para>
  11387. Gets the logger for the fully qualified name of the type specified.
  11388. </para>
  11389. </remarks>
  11390. </member>
  11391. <member name="M:log4net.Core.LoggerManager.GetLogger(System.Reflection.Assembly,System.Type)">
  11392. <summary>
  11393. Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.
  11394. </summary>
  11395. <param name="repositoryAssembly">the assembly to use to lookup the repository</param>
  11396. <param name="type">The <paramref name="type"/> of which the fullname will be used as the name of the logger to retrieve.</param>
  11397. <returns>The logger with the name specified.</returns>
  11398. <remarks>
  11399. <para>
  11400. Gets the logger for the fully qualified name of the type specified.
  11401. </para>
  11402. </remarks>
  11403. </member>
  11404. <member name="M:log4net.Core.LoggerManager.Shutdown">
  11405. <summary>
  11406. Shuts down the log4net system.
  11407. </summary>
  11408. <remarks>
  11409. <para>
  11410. Calling this method will <b>safely</b> close and remove all
  11411. appenders in all the loggers including root contained in all the
  11412. default repositories.
  11413. </para>
  11414. <para>
  11415. Some appenders need to be closed before the application exists.
  11416. Otherwise, pending logging events might be lost.
  11417. </para>
  11418. <para>
  11419. The <c>shutdown</c> method is careful to close nested
  11420. appenders before closing regular appenders. This is allows
  11421. configurations where a regular appender is attached to a logger
  11422. and again to a nested appender.
  11423. </para>
  11424. </remarks>
  11425. </member>
  11426. <member name="M:log4net.Core.LoggerManager.ShutdownRepository(System.String)">
  11427. <summary>
  11428. Shuts down the repository for the repository specified.
  11429. </summary>
  11430. <param name="repository">The repository to shutdown.</param>
  11431. <remarks>
  11432. <para>
  11433. Calling this method will <b>safely</b> close and remove all
  11434. appenders in all the loggers including root contained in the
  11435. repository for the <paramref name="repository"/> specified.
  11436. </para>
  11437. <para>
  11438. Some appenders need to be closed before the application exists.
  11439. Otherwise, pending logging events might be lost.
  11440. </para>
  11441. <para>
  11442. The <c>shutdown</c> method is careful to close nested
  11443. appenders before closing regular appenders. This is allows
  11444. configurations where a regular appender is attached to a logger
  11445. and again to a nested appender.
  11446. </para>
  11447. </remarks>
  11448. </member>
  11449. <member name="M:log4net.Core.LoggerManager.ShutdownRepository(System.Reflection.Assembly)">
  11450. <summary>
  11451. Shuts down the repository for the repository specified.
  11452. </summary>
  11453. <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>
  11454. <remarks>
  11455. <para>
  11456. Calling this method will <b>safely</b> close and remove all
  11457. appenders in all the loggers including root contained in the
  11458. repository for the repository. The repository is looked up using
  11459. the <paramref name="repositoryAssembly"/> specified.
  11460. </para>
  11461. <para>
  11462. Some appenders need to be closed before the application exists.
  11463. Otherwise, pending logging events might be lost.
  11464. </para>
  11465. <para>
  11466. The <c>shutdown</c> method is careful to close nested
  11467. appenders before closing regular appenders. This is allows
  11468. configurations where a regular appender is attached to a logger
  11469. and again to a nested appender.
  11470. </para>
  11471. </remarks>
  11472. </member>
  11473. <member name="M:log4net.Core.LoggerManager.ResetConfiguration(System.String)">
  11474. <summary>
  11475. Resets all values contained in this repository instance to their defaults.
  11476. </summary>
  11477. <param name="repository">The repository to reset.</param>
  11478. <remarks>
  11479. <para>
  11480. Resets all values contained in the repository instance to their
  11481. defaults. This removes all appenders from all loggers, sets
  11482. the level of all non-root loggers to <c>null</c>,
  11483. sets their additivity flag to <c>true</c> and sets the level
  11484. of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,
  11485. message disabling is set its default "off" value.
  11486. </para>
  11487. </remarks>
  11488. </member>
  11489. <member name="M:log4net.Core.LoggerManager.ResetConfiguration(System.Reflection.Assembly)">
  11490. <summary>
  11491. Resets all values contained in this repository instance to their defaults.
  11492. </summary>
  11493. <param name="repositoryAssembly">The assembly to use to lookup the repository to reset.</param>
  11494. <remarks>
  11495. <para>
  11496. Resets all values contained in the repository instance to their
  11497. defaults. This removes all appenders from all loggers, sets
  11498. the level of all non-root loggers to <c>null</c>,
  11499. sets their additivity flag to <c>true</c> and sets the level
  11500. of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,
  11501. message disabling is set its default "off" value.
  11502. </para>
  11503. </remarks>
  11504. </member>
  11505. <member name="M:log4net.Core.LoggerManager.CreateDomain(System.String)">
  11506. <summary>
  11507. Creates a repository with the specified name.
  11508. </summary>
  11509. <param name="repository">The name of the repository, this must be unique amongst repositories.</param>
  11510. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11511. <remarks>
  11512. <para>
  11513. <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>
  11514. </para>
  11515. <para>
  11516. Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a
  11517. <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.
  11518. </para>
  11519. <para>
  11520. The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.
  11521. An <see cref="T:System.Exception"/> will be thrown if the repository already exists.
  11522. </para>
  11523. </remarks>
  11524. <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>
  11525. </member>
  11526. <member name="M:log4net.Core.LoggerManager.CreateRepository(System.String)">
  11527. <summary>
  11528. Creates a repository with the specified name.
  11529. </summary>
  11530. <param name="repository">The name of the repository, this must be unique amongst repositories.</param>
  11531. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11532. <remarks>
  11533. <para>
  11534. Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a
  11535. <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.
  11536. </para>
  11537. <para>
  11538. The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.
  11539. An <see cref="T:System.Exception"/> will be thrown if the repository already exists.
  11540. </para>
  11541. </remarks>
  11542. <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>
  11543. </member>
  11544. <member name="M:log4net.Core.LoggerManager.CreateDomain(System.String,System.Type)">
  11545. <summary>
  11546. Creates a repository with the specified name and repository type.
  11547. </summary>
  11548. <param name="repository">The name of the repository, this must be unique to the repository.</param>
  11549. <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>
  11550. and has a no arg constructor. An instance of this type will be created to act
  11551. as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>
  11552. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11553. <remarks>
  11554. <para>
  11555. <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>
  11556. </para>
  11557. <para>
  11558. The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.
  11559. An Exception will be thrown if the repository already exists.
  11560. </para>
  11561. </remarks>
  11562. <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>
  11563. </member>
  11564. <member name="M:log4net.Core.LoggerManager.CreateRepository(System.String,System.Type)">
  11565. <summary>
  11566. Creates a repository with the specified name and repository type.
  11567. </summary>
  11568. <param name="repository">The name of the repository, this must be unique to the repository.</param>
  11569. <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>
  11570. and has a no arg constructor. An instance of this type will be created to act
  11571. as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>
  11572. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11573. <remarks>
  11574. <para>
  11575. The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.
  11576. An Exception will be thrown if the repository already exists.
  11577. </para>
  11578. </remarks>
  11579. <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>
  11580. </member>
  11581. <member name="M:log4net.Core.LoggerManager.CreateDomain(System.Reflection.Assembly,System.Type)">
  11582. <summary>
  11583. Creates a repository for the specified assembly and repository type.
  11584. </summary>
  11585. <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>
  11586. <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>
  11587. and has a no arg constructor. An instance of this type will be created to act
  11588. as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>
  11589. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11590. <remarks>
  11591. <para>
  11592. <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>
  11593. </para>
  11594. <para>
  11595. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  11596. specified such that a call to <see cref="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)"/> with the
  11597. same assembly specified will return the same repository instance.
  11598. </para>
  11599. </remarks>
  11600. </member>
  11601. <member name="M:log4net.Core.LoggerManager.CreateRepository(System.Reflection.Assembly,System.Type)">
  11602. <summary>
  11603. Creates a repository for the specified assembly and repository type.
  11604. </summary>
  11605. <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>
  11606. <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>
  11607. and has a no arg constructor. An instance of this type will be created to act
  11608. as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>
  11609. <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>
  11610. <remarks>
  11611. <para>
  11612. The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository
  11613. specified such that a call to <see cref="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)"/> with the
  11614. same assembly specified will return the same repository instance.
  11615. </para>
  11616. </remarks>
  11617. </member>
  11618. <member name="M:log4net.Core.LoggerManager.GetAllRepositories">
  11619. <summary>
  11620. Gets an array of all currently defined repositories.
  11621. </summary>
  11622. <returns>An array of all the known <see cref="T:log4net.Repository.ILoggerRepository"/> objects.</returns>
  11623. <remarks>
  11624. <para>
  11625. Gets an array of all currently defined repositories.
  11626. </para>
  11627. </remarks>
  11628. </member>
  11629. <member name="M:log4net.Core.LoggerManager.GetVersionInfo">
  11630. <summary>
  11631. Internal method to get pertinent version info.
  11632. </summary>
  11633. <returns>A string of version info.</returns>
  11634. </member>
  11635. <member name="M:log4net.Core.LoggerManager.OnDomainUnload(System.Object,System.EventArgs)">
  11636. <summary>
  11637. Called when the <see cref="E:System.AppDomain.DomainUnload"/> event fires
  11638. </summary>
  11639. <param name="sender">the <see cref="T:System.AppDomain"/> that is exiting</param>
  11640. <param name="e">null</param>
  11641. <remarks>
  11642. <para>
  11643. Called when the <see cref="E:System.AppDomain.DomainUnload"/> event fires.
  11644. </para>
  11645. <para>
  11646. When the event is triggered the log4net system is <see cref="M:log4net.Core.LoggerManager.Shutdown"/>.
  11647. </para>
  11648. </remarks>
  11649. </member>
  11650. <member name="M:log4net.Core.LoggerManager.OnProcessExit(System.Object,System.EventArgs)">
  11651. <summary>
  11652. Called when the <see cref="E:System.AppDomain.ProcessExit"/> event fires
  11653. </summary>
  11654. <param name="sender">the <see cref="T:System.AppDomain"/> that is exiting</param>
  11655. <param name="e">null</param>
  11656. <remarks>
  11657. <para>
  11658. Called when the <see cref="E:System.AppDomain.ProcessExit"/> event fires.
  11659. </para>
  11660. <para>
  11661. When the event is triggered the log4net system is <see cref="M:log4net.Core.LoggerManager.Shutdown"/>.
  11662. </para>
  11663. </remarks>
  11664. </member>
  11665. <member name="F:log4net.Core.LoggerManager.s_repositorySelector">
  11666. <summary>
  11667. Initialize the default repository selector
  11668. </summary>
  11669. </member>
  11670. <member name="P:log4net.Core.LoggerManager.RepositorySelector">
  11671. <summary>
  11672. Gets or sets the repository selector used by the <see cref="T:log4net.LogManager"/>.
  11673. </summary>
  11674. <value>
  11675. The repository selector used by the <see cref="T:log4net.LogManager"/>.
  11676. </value>
  11677. <remarks>
  11678. <para>
  11679. The repository selector (<see cref="T:log4net.Core.IRepositorySelector"/>) is used by
  11680. the <see cref="T:log4net.LogManager"/> to create and select repositories
  11681. (<see cref="T:log4net.Repository.ILoggerRepository"/>).
  11682. </para>
  11683. <para>
  11684. The caller to <see cref="T:log4net.LogManager"/> supplies either a string name
  11685. or an assembly (if not supplied the assembly is inferred using
  11686. <see cref="M:System.Reflection.Assembly.GetCallingAssembly"/>).
  11687. </para>
  11688. <para>
  11689. This context is used by the selector to lookup a specific repository.
  11690. </para>
  11691. <para>
  11692. For the full .NET Framework, the default repository is <c>DefaultRepositorySelector</c>;
  11693. for the .NET Compact Framework <c>CompactRepositorySelector</c> is the default
  11694. repository.
  11695. </para>
  11696. </remarks>
  11697. </member>
  11698. <member name="T:log4net.Core.LoggerWrapperImpl">
  11699. <summary>
  11700. Implementation of the <see cref="T:log4net.Core.ILoggerWrapper"/> interface.
  11701. </summary>
  11702. <remarks>
  11703. <para>
  11704. This class should be used as the base for all wrapper implementations.
  11705. </para>
  11706. </remarks>
  11707. <author>Nicko Cadell</author>
  11708. <author>Gert Driesen</author>
  11709. </member>
  11710. <member name="M:log4net.Core.LoggerWrapperImpl.#ctor(log4net.Core.ILogger)">
  11711. <summary>
  11712. Constructs a new wrapper for the specified logger.
  11713. </summary>
  11714. <param name="logger">The logger to wrap.</param>
  11715. <remarks>
  11716. <para>
  11717. Constructs a new wrapper for the specified logger.
  11718. </para>
  11719. </remarks>
  11720. </member>
  11721. <member name="F:log4net.Core.LoggerWrapperImpl.m_logger">
  11722. <summary>
  11723. The logger that this object is wrapping
  11724. </summary>
  11725. </member>
  11726. <member name="P:log4net.Core.LoggerWrapperImpl.Logger">
  11727. <summary>
  11728. Gets the implementation behind this wrapper object.
  11729. </summary>
  11730. <value>
  11731. The <see cref="T:log4net.Core.ILogger"/> object that this object is implementing.
  11732. </value>
  11733. <remarks>
  11734. <para>
  11735. The <c>Logger</c> object may not be the same object as this object
  11736. because of logger decorators.
  11737. </para>
  11738. <para>
  11739. This gets the actual underlying objects that is used to process
  11740. the log events.
  11741. </para>
  11742. </remarks>
  11743. </member>
  11744. <member name="T:log4net.Core.LoggingEventData">
  11745. <summary>
  11746. Portable data structure used by <see cref="T:log4net.Core.LoggingEvent"/>
  11747. </summary>
  11748. <remarks>
  11749. <para>
  11750. Portable data structure used by <see cref="T:log4net.Core.LoggingEvent"/>
  11751. </para>
  11752. </remarks>
  11753. <author>Nicko Cadell</author>
  11754. </member>
  11755. <member name="F:log4net.Core.LoggingEventData.LoggerName">
  11756. <summary>
  11757. The logger name.
  11758. </summary>
  11759. <remarks>
  11760. <para>
  11761. The logger name.
  11762. </para>
  11763. </remarks>
  11764. </member>
  11765. <member name="F:log4net.Core.LoggingEventData.Level">
  11766. <summary>
  11767. Level of logging event.
  11768. </summary>
  11769. <remarks>
  11770. <para>
  11771. Level of logging event. Level cannot be Serializable
  11772. because it is a flyweight. Due to its special serialization it
  11773. cannot be declared final either.
  11774. </para>
  11775. </remarks>
  11776. </member>
  11777. <member name="F:log4net.Core.LoggingEventData.Message">
  11778. <summary>
  11779. The application supplied message.
  11780. </summary>
  11781. <remarks>
  11782. <para>
  11783. The application supplied message of logging event.
  11784. </para>
  11785. </remarks>
  11786. </member>
  11787. <member name="F:log4net.Core.LoggingEventData.ThreadName">
  11788. <summary>
  11789. The name of thread
  11790. </summary>
  11791. <remarks>
  11792. <para>
  11793. The name of thread in which this logging event was generated
  11794. </para>
  11795. </remarks>
  11796. </member>
  11797. <member name="F:log4net.Core.LoggingEventData.TimeStamp">
  11798. <summary>
  11799. The time the event was logged
  11800. </summary>
  11801. <remarks>
  11802. <para>
  11803. The TimeStamp is stored in the local time zone for this computer.
  11804. </para>
  11805. </remarks>
  11806. </member>
  11807. <member name="F:log4net.Core.LoggingEventData.LocationInfo">
  11808. <summary>
  11809. Location information for the caller.
  11810. </summary>
  11811. <remarks>
  11812. <para>
  11813. Location information for the caller.
  11814. </para>
  11815. </remarks>
  11816. </member>
  11817. <member name="F:log4net.Core.LoggingEventData.UserName">
  11818. <summary>
  11819. String representation of the user
  11820. </summary>
  11821. <remarks>
  11822. <para>
  11823. String representation of the user's windows name,
  11824. like DOMAIN\username
  11825. </para>
  11826. </remarks>
  11827. </member>
  11828. <member name="F:log4net.Core.LoggingEventData.Identity">
  11829. <summary>
  11830. String representation of the identity.
  11831. </summary>
  11832. <remarks>
  11833. <para>
  11834. String representation of the current thread's principal identity.
  11835. </para>
  11836. </remarks>
  11837. </member>
  11838. <member name="F:log4net.Core.LoggingEventData.ExceptionString">
  11839. <summary>
  11840. The string representation of the exception
  11841. </summary>
  11842. <remarks>
  11843. <para>
  11844. The string representation of the exception
  11845. </para>
  11846. </remarks>
  11847. </member>
  11848. <member name="F:log4net.Core.LoggingEventData.Domain">
  11849. <summary>
  11850. String representation of the AppDomain.
  11851. </summary>
  11852. <remarks>
  11853. <para>
  11854. String representation of the AppDomain.
  11855. </para>
  11856. </remarks>
  11857. </member>
  11858. <member name="F:log4net.Core.LoggingEventData.Properties">
  11859. <summary>
  11860. Additional event specific properties
  11861. </summary>
  11862. <remarks>
  11863. <para>
  11864. A logger or an appender may attach additional
  11865. properties to specific events. These properties
  11866. have a string key and an object value.
  11867. </para>
  11868. </remarks>
  11869. </member>
  11870. <member name="T:log4net.Core.FixFlags">
  11871. <summary>
  11872. Flags passed to the <see cref="P:log4net.Core.LoggingEvent.Fix"/> property
  11873. </summary>
  11874. <remarks>
  11875. <para>
  11876. Flags passed to the <see cref="P:log4net.Core.LoggingEvent.Fix"/> property
  11877. </para>
  11878. </remarks>
  11879. <author>Nicko Cadell</author>
  11880. </member>
  11881. <member name="F:log4net.Core.FixFlags.Mdc">
  11882. <summary>
  11883. Fix the MDC
  11884. </summary>
  11885. </member>
  11886. <member name="F:log4net.Core.FixFlags.Ndc">
  11887. <summary>
  11888. Fix the NDC
  11889. </summary>
  11890. </member>
  11891. <member name="F:log4net.Core.FixFlags.Message">
  11892. <summary>
  11893. Fix the rendered message
  11894. </summary>
  11895. </member>
  11896. <member name="F:log4net.Core.FixFlags.ThreadName">
  11897. <summary>
  11898. Fix the thread name
  11899. </summary>
  11900. </member>
  11901. <member name="F:log4net.Core.FixFlags.LocationInfo">
  11902. <summary>
  11903. Fix the callers location information
  11904. </summary>
  11905. <remarks>
  11906. CAUTION: Very slow to generate
  11907. </remarks>
  11908. </member>
  11909. <member name="F:log4net.Core.FixFlags.UserName">
  11910. <summary>
  11911. Fix the callers windows user name
  11912. </summary>
  11913. <remarks>
  11914. CAUTION: Slow to generate
  11915. </remarks>
  11916. </member>
  11917. <member name="F:log4net.Core.FixFlags.Domain">
  11918. <summary>
  11919. Fix the domain friendly name
  11920. </summary>
  11921. </member>
  11922. <member name="F:log4net.Core.FixFlags.Identity">
  11923. <summary>
  11924. Fix the callers principal name
  11925. </summary>
  11926. <remarks>
  11927. CAUTION: May be slow to generate
  11928. </remarks>
  11929. </member>
  11930. <member name="F:log4net.Core.FixFlags.Exception">
  11931. <summary>
  11932. Fix the exception text
  11933. </summary>
  11934. </member>
  11935. <member name="F:log4net.Core.FixFlags.Properties">
  11936. <summary>
  11937. Fix the event properties
  11938. </summary>
  11939. </member>
  11940. <member name="F:log4net.Core.FixFlags.None">
  11941. <summary>
  11942. No fields fixed
  11943. </summary>
  11944. </member>
  11945. <member name="F:log4net.Core.FixFlags.All">
  11946. <summary>
  11947. All fields fixed
  11948. </summary>
  11949. </member>
  11950. <member name="F:log4net.Core.FixFlags.Partial">
  11951. <summary>
  11952. Partial fields fixed
  11953. </summary>
  11954. <remarks>
  11955. <para>
  11956. This set of partial fields gives good performance. The following fields are fixed:
  11957. </para>
  11958. <list type="bullet">
  11959. <item><description><see cref="F:log4net.Core.FixFlags.Message"/></description></item>
  11960. <item><description><see cref="F:log4net.Core.FixFlags.ThreadName"/></description></item>
  11961. <item><description><see cref="F:log4net.Core.FixFlags.Exception"/></description></item>
  11962. <item><description><see cref="F:log4net.Core.FixFlags.Domain"/></description></item>
  11963. <item><description><see cref="F:log4net.Core.FixFlags.Properties"/></description></item>
  11964. </list>
  11965. </remarks>
  11966. </member>
  11967. <member name="T:log4net.Core.LoggingEvent">
  11968. <summary>
  11969. The internal representation of logging events.
  11970. </summary>
  11971. <remarks>
  11972. <para>
  11973. When an affirmative decision is made to log then a
  11974. <see cref="T:log4net.Core.LoggingEvent"/> instance is created. This instance
  11975. is passed around to the different log4net components.
  11976. </para>
  11977. <para>
  11978. This class is of concern to those wishing to extend log4net.
  11979. </para>
  11980. <para>
  11981. Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>
  11982. are considered volatile, that is the values are correct at the
  11983. time the event is delivered to appenders, but will not be consistent
  11984. at any time afterwards. If an event is to be stored and then processed
  11985. at a later time these volatile values must be fixed by calling
  11986. <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty
  11987. for incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it
  11988. is essential to maintaining data consistency.
  11989. </para>
  11990. </remarks>
  11991. <author>Nicko Cadell</author>
  11992. <author>Gert Driesen</author>
  11993. <author>Douglas de la Torre</author>
  11994. <author>Daniel Cazzulino</author>
  11995. </member>
  11996. <member name="F:log4net.Core.LoggingEvent.HostNameProperty">
  11997. <summary>
  11998. The key into the Properties map for the host name value.
  11999. </summary>
  12000. </member>
  12001. <member name="F:log4net.Core.LoggingEvent.IdentityProperty">
  12002. <summary>
  12003. The key into the Properties map for the thread identity value.
  12004. </summary>
  12005. </member>
  12006. <member name="F:log4net.Core.LoggingEvent.UserNameProperty">
  12007. <summary>
  12008. The key into the Properties map for the user name value.
  12009. </summary>
  12010. </member>
  12011. <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,System.String,log4net.Core.Level,System.Object,System.Exception)">
  12012. <summary>
  12013. Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class
  12014. from the supplied parameters.
  12015. </summary>
  12016. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  12017. the stack boundary into the logging system for this call.</param>
  12018. <param name="repository">The repository this event is logged in.</param>
  12019. <param name="loggerName">The name of the logger of this event.</param>
  12020. <param name="level">The level of this event.</param>
  12021. <param name="message">The message of this event.</param>
  12022. <param name="exception">The exception for this event.</param>
  12023. <remarks>
  12024. <para>
  12025. Except <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/>, <see cref="P:log4net.Core.LoggingEvent.Level"/> and <see cref="P:log4net.Core.LoggingEvent.LoggerName"/>,
  12026. all fields of <c>LoggingEvent</c> are filled when actually needed. Call
  12027. <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> to cache all data locally
  12028. to prevent inconsistencies.
  12029. </para>
  12030. <para>This method is called by the log4net framework
  12031. to create a logging event.
  12032. </para>
  12033. </remarks>
  12034. </member>
  12035. <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,log4net.Core.LoggingEventData,log4net.Core.FixFlags)">
  12036. <summary>
  12037. Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class
  12038. using specific data.
  12039. </summary>
  12040. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  12041. the stack boundary into the logging system for this call.</param>
  12042. <param name="repository">The repository this event is logged in.</param>
  12043. <param name="data">Data used to initialize the logging event.</param>
  12044. <param name="fixedData">The fields in the <paranref name="data"/> struct that have already been fixed.</param>
  12045. <remarks>
  12046. <para>
  12047. This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>
  12048. to be created independently of the log4net framework. This can
  12049. be useful if you require a custom serialization scheme.
  12050. </para>
  12051. <para>
  12052. Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an
  12053. instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.
  12054. </para>
  12055. <para>
  12056. The <paramref name="fixedData"/> parameter should be used to specify which fields in the
  12057. <paramref name="data"/> struct have been preset. Fields not specified in the <paramref name="fixedData"/>
  12058. will be captured from the environment if requested or fixed.
  12059. </para>
  12060. </remarks>
  12061. </member>
  12062. <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,log4net.Core.LoggingEventData)">
  12063. <summary>
  12064. Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class
  12065. using specific data.
  12066. </summary>
  12067. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  12068. the stack boundary into the logging system for this call.</param>
  12069. <param name="repository">The repository this event is logged in.</param>
  12070. <param name="data">Data used to initialize the logging event.</param>
  12071. <remarks>
  12072. <para>
  12073. This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>
  12074. to be created independently of the log4net framework. This can
  12075. be useful if you require a custom serialization scheme.
  12076. </para>
  12077. <para>
  12078. Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an
  12079. instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.
  12080. </para>
  12081. <para>
  12082. This constructor sets this objects <see cref="P:log4net.Core.LoggingEvent.Fix"/> flags to <see cref="F:log4net.Core.FixFlags.All"/>,
  12083. this assumes that all the data relating to this event is passed in via the <paramref name="data"/>
  12084. parameter and no other data should be captured from the environment.
  12085. </para>
  12086. </remarks>
  12087. </member>
  12088. <member name="M:log4net.Core.LoggingEvent.#ctor(log4net.Core.LoggingEventData)">
  12089. <summary>
  12090. Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class
  12091. using specific data.
  12092. </summary>
  12093. <param name="data">Data used to initialize the logging event.</param>
  12094. <remarks>
  12095. <para>
  12096. This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>
  12097. to be created independently of the log4net framework. This can
  12098. be useful if you require a custom serialization scheme.
  12099. </para>
  12100. <para>
  12101. Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an
  12102. instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.
  12103. </para>
  12104. <para>
  12105. This constructor sets this objects <see cref="P:log4net.Core.LoggingEvent.Fix"/> flags to <see cref="F:log4net.Core.FixFlags.All"/>,
  12106. this assumes that all the data relating to this event is passed in via the <paramref name="data"/>
  12107. parameter and no other data should be captured from the environment.
  12108. </para>
  12109. </remarks>
  12110. </member>
  12111. <member name="M:log4net.Core.LoggingEvent.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
  12112. <summary>
  12113. Serialization constructor
  12114. </summary>
  12115. <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data.</param>
  12116. <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>
  12117. <remarks>
  12118. <para>
  12119. Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class
  12120. with serialized data.
  12121. </para>
  12122. </remarks>
  12123. </member>
  12124. <member name="M:log4net.Core.LoggingEvent.EnsureRepository(log4net.Repository.ILoggerRepository)">
  12125. <summary>
  12126. Ensure that the repository is set.
  12127. </summary>
  12128. <param name="repository">the value for the repository</param>
  12129. </member>
  12130. <member name="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)">
  12131. <summary>
  12132. Write the rendered message to a TextWriter
  12133. </summary>
  12134. <param name="writer">the writer to write the message to</param>
  12135. <remarks>
  12136. <para>
  12137. Unlike the <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property this method
  12138. does store the message data in the internal cache. Therefore
  12139. if called only once this method should be faster than the
  12140. <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property, however if the message is
  12141. to be accessed multiple times then the property will be more efficient.
  12142. </para>
  12143. </remarks>
  12144. </member>
  12145. <member name="M:log4net.Core.LoggingEvent.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
  12146. <summary>
  12147. Serializes this object into the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> provided.
  12148. </summary>
  12149. <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
  12150. <param name="context">The destination for this serialization.</param>
  12151. <remarks>
  12152. <para>
  12153. The data in this event must be fixed before it can be serialized.
  12154. </para>
  12155. <para>
  12156. The <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> method must be called during the
  12157. <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method call if this event
  12158. is to be used outside that method.
  12159. </para>
  12160. </remarks>
  12161. </member>
  12162. <member name="M:log4net.Core.LoggingEvent.GetLoggingEventData">
  12163. <summary>
  12164. Gets the portable data for this <see cref="T:log4net.Core.LoggingEvent"/>.
  12165. </summary>
  12166. <returns>The <see cref="T:log4net.Core.LoggingEventData"/> for this event.</returns>
  12167. <remarks>
  12168. <para>
  12169. A new <see cref="T:log4net.Core.LoggingEvent"/> can be constructed using a
  12170. <see cref="T:log4net.Core.LoggingEventData"/> instance.
  12171. </para>
  12172. <para>
  12173. Does a <see cref="F:log4net.Core.FixFlags.Partial"/> fix of the data
  12174. in the logging event before returning the event data.
  12175. </para>
  12176. </remarks>
  12177. </member>
  12178. <member name="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)">
  12179. <summary>
  12180. Gets the portable data for this <see cref="T:log4net.Core.LoggingEvent"/>.
  12181. </summary>
  12182. <param name="fixFlags">The set of data to ensure is fixed in the LoggingEventData</param>
  12183. <returns>The <see cref="T:log4net.Core.LoggingEventData"/> for this event.</returns>
  12184. <remarks>
  12185. <para>
  12186. A new <see cref="T:log4net.Core.LoggingEvent"/> can be constructed using a
  12187. <see cref="T:log4net.Core.LoggingEventData"/> instance.
  12188. </para>
  12189. </remarks>
  12190. </member>
  12191. <member name="M:log4net.Core.LoggingEvent.GetExceptionStrRep">
  12192. <summary>
  12193. Returns this event's exception's rendered using the
  12194. <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12195. </summary>
  12196. <returns>
  12197. This event's exception's rendered using the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12198. </returns>
  12199. <remarks>
  12200. <para>
  12201. <b>Obsolete. Use <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/> instead.</b>
  12202. </para>
  12203. </remarks>
  12204. </member>
  12205. <member name="M:log4net.Core.LoggingEvent.GetExceptionString">
  12206. <summary>
  12207. Returns this event's exception's rendered using the
  12208. <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12209. </summary>
  12210. <returns>
  12211. This event's exception's rendered using the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12212. </returns>
  12213. <remarks>
  12214. <para>
  12215. Returns this event's exception's rendered using the
  12216. <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12217. </para>
  12218. </remarks>
  12219. </member>
  12220. <member name="M:log4net.Core.LoggingEvent.FixVolatileData">
  12221. <summary>
  12222. Fix instance fields that hold volatile data.
  12223. </summary>
  12224. <remarks>
  12225. <para>
  12226. Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>
  12227. are considered volatile, that is the values are correct at the
  12228. time the event is delivered to appenders, but will not be consistent
  12229. at any time afterwards. If an event is to be stored and then processed
  12230. at a later time these volatile values must be fixed by calling
  12231. <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty
  12232. incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it
  12233. is essential to maintaining data consistency.
  12234. </para>
  12235. <para>
  12236. Calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> is equivalent to
  12237. calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> passing the parameter
  12238. <c>false</c>.
  12239. </para>
  12240. <para>
  12241. See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> for more
  12242. information.
  12243. </para>
  12244. </remarks>
  12245. </member>
  12246. <member name="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)">
  12247. <summary>
  12248. Fixes instance fields that hold volatile data.
  12249. </summary>
  12250. <param name="fastButLoose">Set to <c>true</c> to not fix data that takes a long time to fix.</param>
  12251. <remarks>
  12252. <para>
  12253. Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>
  12254. are considered volatile, that is the values are correct at the
  12255. time the event is delivered to appenders, but will not be consistent
  12256. at any time afterwards. If an event is to be stored and then processed
  12257. at a later time these volatile values must be fixed by calling
  12258. <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty
  12259. for incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it
  12260. is essential to maintaining data consistency.
  12261. </para>
  12262. <para>
  12263. The <paramref name="fastButLoose"/> param controls the data that
  12264. is fixed. Some of the data that can be fixed takes a long time to
  12265. generate, therefore if you do not require those settings to be fixed
  12266. they can be ignored by setting the <paramref name="fastButLoose"/> param
  12267. to <c>true</c>. This setting will ignore the <see cref="P:log4net.Core.LoggingEvent.LocationInformation"/>
  12268. and <see cref="P:log4net.Core.LoggingEvent.UserName"/> settings.
  12269. </para>
  12270. <para>
  12271. Set <paramref name="fastButLoose"/> to <c>false</c> to ensure that all
  12272. settings are fixed.
  12273. </para>
  12274. </remarks>
  12275. </member>
  12276. <member name="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)">
  12277. <summary>
  12278. Fix the fields specified by the <see cref="T:log4net.Core.FixFlags"/> parameter
  12279. </summary>
  12280. <param name="flags">the fields to fix</param>
  12281. <remarks>
  12282. <para>
  12283. Only fields specified in the <paramref name="flags"/> will be fixed.
  12284. Fields will not be fixed if they have previously been fixed.
  12285. It is not possible to 'unfix' a field.
  12286. </para>
  12287. </remarks>
  12288. </member>
  12289. <member name="M:log4net.Core.LoggingEvent.LookupProperty(System.String)">
  12290. <summary>
  12291. Lookup a composite property in this event
  12292. </summary>
  12293. <param name="key">the key for the property to lookup</param>
  12294. <returns>the value for the property</returns>
  12295. <remarks>
  12296. <para>
  12297. This event has composite properties that combine together properties from
  12298. several different contexts in the following order:
  12299. <list type="definition">
  12300. <item>
  12301. <term>this events properties</term>
  12302. <description>
  12303. This event has <see cref="P:log4net.Core.LoggingEvent.Properties"/> that can be set. These
  12304. properties are specific to this event only.
  12305. </description>
  12306. </item>
  12307. <item>
  12308. <term>the thread properties</term>
  12309. <description>
  12310. The <see cref="P:log4net.ThreadContext.Properties"/> that are set on the current
  12311. thread. These properties are shared by all events logged on this thread.
  12312. </description>
  12313. </item>
  12314. <item>
  12315. <term>the global properties</term>
  12316. <description>
  12317. The <see cref="P:log4net.GlobalContext.Properties"/> that are set globally. These
  12318. properties are shared by all the threads in the AppDomain.
  12319. </description>
  12320. </item>
  12321. </list>
  12322. </para>
  12323. </remarks>
  12324. </member>
  12325. <member name="M:log4net.Core.LoggingEvent.GetProperties">
  12326. <summary>
  12327. Get all the composite properties in this event
  12328. </summary>
  12329. <returns>the <see cref="T:log4net.Util.PropertiesDictionary"/> containing all the properties</returns>
  12330. <remarks>
  12331. <para>
  12332. See <see cref="M:log4net.Core.LoggingEvent.LookupProperty(System.String)"/> for details of the composite properties
  12333. stored by the event.
  12334. </para>
  12335. <para>
  12336. This method returns a single <see cref="T:log4net.Util.PropertiesDictionary"/> containing all the
  12337. properties defined for this event.
  12338. </para>
  12339. </remarks>
  12340. </member>
  12341. <member name="F:log4net.Core.LoggingEvent.m_data">
  12342. <summary>
  12343. The internal logging event data.
  12344. </summary>
  12345. </member>
  12346. <member name="F:log4net.Core.LoggingEvent.m_compositeProperties">
  12347. <summary>
  12348. The internal logging event data.
  12349. </summary>
  12350. </member>
  12351. <member name="F:log4net.Core.LoggingEvent.m_eventProperties">
  12352. <summary>
  12353. The internal logging event data.
  12354. </summary>
  12355. </member>
  12356. <member name="F:log4net.Core.LoggingEvent.m_callerStackBoundaryDeclaringType">
  12357. <summary>
  12358. The fully qualified Type of the calling
  12359. logger class in the stack frame (i.e. the declaring type of the method).
  12360. </summary>
  12361. </member>
  12362. <member name="F:log4net.Core.LoggingEvent.m_message">
  12363. <summary>
  12364. The application supplied message of logging event.
  12365. </summary>
  12366. </member>
  12367. <member name="F:log4net.Core.LoggingEvent.m_thrownException">
  12368. <summary>
  12369. The exception that was thrown.
  12370. </summary>
  12371. <remarks>
  12372. This is not serialized. The string representation
  12373. is serialized instead.
  12374. </remarks>
  12375. </member>
  12376. <member name="F:log4net.Core.LoggingEvent.m_repository">
  12377. <summary>
  12378. The repository that generated the logging event
  12379. </summary>
  12380. <remarks>
  12381. This is not serialized.
  12382. </remarks>
  12383. </member>
  12384. <member name="F:log4net.Core.LoggingEvent.m_fixFlags">
  12385. <summary>
  12386. The fix state for this event
  12387. </summary>
  12388. <remarks>
  12389. These flags indicate which fields have been fixed.
  12390. Not serialized.
  12391. </remarks>
  12392. </member>
  12393. <member name="F:log4net.Core.LoggingEvent.m_cacheUpdatable">
  12394. <summary>
  12395. Indicated that the internal cache is updateable (ie not fixed)
  12396. </summary>
  12397. <remarks>
  12398. This is a seperate flag to m_fixFlags as it allows incrementel fixing and simpler
  12399. changes in the caching strategy.
  12400. </remarks>
  12401. </member>
  12402. <member name="P:log4net.Core.LoggingEvent.StartTime">
  12403. <summary>
  12404. Gets the time when the current process started.
  12405. </summary>
  12406. <value>
  12407. This is the time when this process started.
  12408. </value>
  12409. <remarks>
  12410. <para>
  12411. The TimeStamp is stored in the local time zone for this computer.
  12412. </para>
  12413. <para>
  12414. Tries to get the start time for the current process.
  12415. Failing that it returns the time of the first call to
  12416. this property.
  12417. </para>
  12418. <para>
  12419. Note that AppDomains may be loaded and unloaded within the
  12420. same process without the process terminating and therefore
  12421. without the process start time being reset.
  12422. </para>
  12423. </remarks>
  12424. </member>
  12425. <member name="P:log4net.Core.LoggingEvent.Level">
  12426. <summary>
  12427. Gets the <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.
  12428. </summary>
  12429. <value>
  12430. The <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.
  12431. </value>
  12432. <remarks>
  12433. <para>
  12434. Gets the <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.
  12435. </para>
  12436. </remarks>
  12437. </member>
  12438. <member name="P:log4net.Core.LoggingEvent.TimeStamp">
  12439. <summary>
  12440. Gets the time of the logging event.
  12441. </summary>
  12442. <value>
  12443. The time of the logging event.
  12444. </value>
  12445. <remarks>
  12446. <para>
  12447. The TimeStamp is stored in the local time zone for this computer.
  12448. </para>
  12449. </remarks>
  12450. </member>
  12451. <member name="P:log4net.Core.LoggingEvent.LoggerName">
  12452. <summary>
  12453. Gets the name of the logger that logged the event.
  12454. </summary>
  12455. <value>
  12456. The name of the logger that logged the event.
  12457. </value>
  12458. <remarks>
  12459. <para>
  12460. Gets the name of the logger that logged the event.
  12461. </para>
  12462. </remarks>
  12463. </member>
  12464. <member name="P:log4net.Core.LoggingEvent.LocationInformation">
  12465. <summary>
  12466. Gets the location information for this logging event.
  12467. </summary>
  12468. <value>
  12469. The location information for this logging event.
  12470. </value>
  12471. <remarks>
  12472. <para>
  12473. The collected information is cached for future use.
  12474. </para>
  12475. <para>
  12476. See the <see cref="T:log4net.Core.LocationInfo"/> class for more information on
  12477. supported frameworks and the different behavior in Debug and
  12478. Release builds.
  12479. </para>
  12480. </remarks>
  12481. </member>
  12482. <member name="P:log4net.Core.LoggingEvent.MessageObject">
  12483. <summary>
  12484. Gets the message object used to initialize this event.
  12485. </summary>
  12486. <value>
  12487. The message object used to initialize this event.
  12488. </value>
  12489. <remarks>
  12490. <para>
  12491. Gets the message object used to initialize this event.
  12492. Note that this event may not have a valid message object.
  12493. If the event is serialized the message object will not
  12494. be transferred. To get the text of the message the
  12495. <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property must be used
  12496. not this property.
  12497. </para>
  12498. <para>
  12499. If there is no defined message object for this event then
  12500. null will be returned.
  12501. </para>
  12502. </remarks>
  12503. </member>
  12504. <member name="P:log4net.Core.LoggingEvent.ExceptionObject">
  12505. <summary>
  12506. Gets the exception object used to initialize this event.
  12507. </summary>
  12508. <value>
  12509. The exception object used to initialize this event.
  12510. </value>
  12511. <remarks>
  12512. <para>
  12513. Gets the exception object used to initialize this event.
  12514. Note that this event may not have a valid exception object.
  12515. If the event is serialized the exception object will not
  12516. be transferred. To get the text of the exception the
  12517. <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/> method must be used
  12518. not this property.
  12519. </para>
  12520. <para>
  12521. If there is no defined exception object for this event then
  12522. null will be returned.
  12523. </para>
  12524. </remarks>
  12525. </member>
  12526. <member name="P:log4net.Core.LoggingEvent.Repository">
  12527. <summary>
  12528. The <see cref="T:log4net.Repository.ILoggerRepository"/> that this event was created in.
  12529. </summary>
  12530. <remarks>
  12531. <para>
  12532. The <see cref="T:log4net.Repository.ILoggerRepository"/> that this event was created in.
  12533. </para>
  12534. </remarks>
  12535. </member>
  12536. <member name="P:log4net.Core.LoggingEvent.RenderedMessage">
  12537. <summary>
  12538. Gets the message, rendered through the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12539. </summary>
  12540. <value>
  12541. The message rendered through the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.
  12542. </value>
  12543. <remarks>
  12544. <para>
  12545. The collected information is cached for future use.
  12546. </para>
  12547. </remarks>
  12548. </member>
  12549. <member name="P:log4net.Core.LoggingEvent.ThreadName">
  12550. <summary>
  12551. Gets the name of the current thread.
  12552. </summary>
  12553. <value>
  12554. The name of the current thread, or the thread ID when
  12555. the name is not available.
  12556. </value>
  12557. <remarks>
  12558. <para>
  12559. The collected information is cached for future use.
  12560. </para>
  12561. </remarks>
  12562. </member>
  12563. <member name="P:log4net.Core.LoggingEvent.UserName">
  12564. <summary>
  12565. Gets the name of the current user.
  12566. </summary>
  12567. <value>
  12568. The name of the current user, or <c>NOT AVAILABLE</c> when the
  12569. underlying runtime has no support for retrieving the name of the
  12570. current user.
  12571. </value>
  12572. <remarks>
  12573. <para>
  12574. Calls <c>WindowsIdentity.GetCurrent().Name</c> to get the name of
  12575. the current windows user.
  12576. </para>
  12577. <para>
  12578. To improve performance, we could cache the string representation of
  12579. the name, and reuse that as long as the identity stayed constant.
  12580. Once the identity changed, we would need to re-assign and re-render
  12581. the string.
  12582. </para>
  12583. <para>
  12584. However, the <c>WindowsIdentity.GetCurrent()</c> call seems to
  12585. return different objects every time, so the current implementation
  12586. doesn't do this type of caching.
  12587. </para>
  12588. <para>
  12589. Timing for these operations:
  12590. </para>
  12591. <list type="table">
  12592. <listheader>
  12593. <term>Method</term>
  12594. <description>Results</description>
  12595. </listheader>
  12596. <item>
  12597. <term><c>WindowsIdentity.GetCurrent()</c></term>
  12598. <description>10000 loops, 00:00:00.2031250 seconds</description>
  12599. </item>
  12600. <item>
  12601. <term><c>WindowsIdentity.GetCurrent().Name</c></term>
  12602. <description>10000 loops, 00:00:08.0468750 seconds</description>
  12603. </item>
  12604. </list>
  12605. <para>
  12606. This means we could speed things up almost 40 times by caching the
  12607. value of the <c>WindowsIdentity.GetCurrent().Name</c> property, since
  12608. this takes (8.04-0.20) = 7.84375 seconds.
  12609. </para>
  12610. </remarks>
  12611. </member>
  12612. <member name="P:log4net.Core.LoggingEvent.Identity">
  12613. <summary>
  12614. Gets the identity of the current thread principal.
  12615. </summary>
  12616. <value>
  12617. The string name of the identity of the current thread principal.
  12618. </value>
  12619. <remarks>
  12620. <para>
  12621. Calls <c>System.Threading.Thread.CurrentPrincipal.Identity.Name</c> to get
  12622. the name of the current thread principal.
  12623. </para>
  12624. </remarks>
  12625. </member>
  12626. <member name="P:log4net.Core.LoggingEvent.Domain">
  12627. <summary>
  12628. Gets the AppDomain friendly name.
  12629. </summary>
  12630. <value>
  12631. The AppDomain friendly name.
  12632. </value>
  12633. <remarks>
  12634. <para>
  12635. Gets the AppDomain friendly name.
  12636. </para>
  12637. </remarks>
  12638. </member>
  12639. <member name="P:log4net.Core.LoggingEvent.Properties">
  12640. <summary>
  12641. Additional event specific properties.
  12642. </summary>
  12643. <value>
  12644. Additional event specific properties.
  12645. </value>
  12646. <remarks>
  12647. <para>
  12648. A logger or an appender may attach additional
  12649. properties to specific events. These properties
  12650. have a string key and an object value.
  12651. </para>
  12652. <para>
  12653. This property is for events that have been added directly to
  12654. this event. The aggregate properties (which include these
  12655. event properties) can be retrieved using <see cref="M:log4net.Core.LoggingEvent.LookupProperty(System.String)"/>
  12656. and <see cref="M:log4net.Core.LoggingEvent.GetProperties"/>.
  12657. </para>
  12658. <para>
  12659. Once the properties have been fixed <see cref="P:log4net.Core.LoggingEvent.Fix"/> this property
  12660. returns the combined cached properties. This ensures that updates to
  12661. this property are always reflected in the underlying storage. When
  12662. returning the combined properties there may be more keys in the
  12663. Dictionary than expected.
  12664. </para>
  12665. </remarks>
  12666. </member>
  12667. <member name="P:log4net.Core.LoggingEvent.Fix">
  12668. <summary>
  12669. The fixed fields in this event
  12670. </summary>
  12671. <value>
  12672. The set of fields that are fixed in this event
  12673. </value>
  12674. <remarks>
  12675. <para>
  12676. Fields will not be fixed if they have previously been fixed.
  12677. It is not possible to 'unfix' a field.
  12678. </para>
  12679. </remarks>
  12680. </member>
  12681. <member name="T:log4net.Core.LogImpl">
  12682. <summary>
  12683. Implementation of <see cref="T:log4net.ILog"/> wrapper interface.
  12684. </summary>
  12685. <remarks>
  12686. <para>
  12687. This implementation of the <see cref="T:log4net.ILog"/> interface
  12688. forwards to the <see cref="T:log4net.Core.ILogger"/> held by the base class.
  12689. </para>
  12690. <para>
  12691. This logger has methods to allow the caller to log at the following
  12692. levels:
  12693. </para>
  12694. <list type="definition">
  12695. <item>
  12696. <term>DEBUG</term>
  12697. <description>
  12698. The <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object[])"/> methods log messages
  12699. at the <c>DEBUG</c> level. That is the level with that name defined in the
  12700. repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value
  12701. for this level is <see cref="F:log4net.Core.Level.Debug"/>. The <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/>
  12702. property tests if this level is enabled for logging.
  12703. </description>
  12704. </item>
  12705. <item>
  12706. <term>INFO</term>
  12707. <description>
  12708. The <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object[])"/> methods log messages
  12709. at the <c>INFO</c> level. That is the level with that name defined in the
  12710. repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value
  12711. for this level is <see cref="F:log4net.Core.Level.Info"/>. The <see cref="P:log4net.Core.LogImpl.IsInfoEnabled"/>
  12712. property tests if this level is enabled for logging.
  12713. </description>
  12714. </item>
  12715. <item>
  12716. <term>WARN</term>
  12717. <description>
  12718. The <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object[])"/> methods log messages
  12719. at the <c>WARN</c> level. That is the level with that name defined in the
  12720. repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value
  12721. for this level is <see cref="F:log4net.Core.Level.Warn"/>. The <see cref="P:log4net.Core.LogImpl.IsWarnEnabled"/>
  12722. property tests if this level is enabled for logging.
  12723. </description>
  12724. </item>
  12725. <item>
  12726. <term>ERROR</term>
  12727. <description>
  12728. The <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object[])"/> methods log messages
  12729. at the <c>ERROR</c> level. That is the level with that name defined in the
  12730. repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value
  12731. for this level is <see cref="F:log4net.Core.Level.Error"/>. The <see cref="P:log4net.Core.LogImpl.IsErrorEnabled"/>
  12732. property tests if this level is enabled for logging.
  12733. </description>
  12734. </item>
  12735. <item>
  12736. <term>FATAL</term>
  12737. <description>
  12738. The <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object[])"/> methods log messages
  12739. at the <c>FATAL</c> level. That is the level with that name defined in the
  12740. repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value
  12741. for this level is <see cref="F:log4net.Core.Level.Fatal"/>. The <see cref="P:log4net.Core.LogImpl.IsFatalEnabled"/>
  12742. property tests if this level is enabled for logging.
  12743. </description>
  12744. </item>
  12745. </list>
  12746. <para>
  12747. The values for these levels and their semantic meanings can be changed by
  12748. configuring the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/> for the repository.
  12749. </para>
  12750. </remarks>
  12751. <author>Nicko Cadell</author>
  12752. <author>Gert Driesen</author>
  12753. </member>
  12754. <member name="T:log4net.ILog">
  12755. <summary>
  12756. The ILog interface is use by application to log messages into
  12757. the log4net framework.
  12758. </summary>
  12759. <remarks>
  12760. <para>
  12761. Use the <see cref="T:log4net.LogManager"/> to obtain logger instances
  12762. that implement this interface. The <see cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)"/>
  12763. static method is used to get logger instances.
  12764. </para>
  12765. <para>
  12766. This class contains methods for logging at different levels and also
  12767. has properties for determining if those logging levels are
  12768. enabled in the current configuration.
  12769. </para>
  12770. <para>
  12771. This interface can be implemented in different ways. This documentation
  12772. specifies reasonable behavior that a caller can expect from the actual
  12773. implementation, however different implementations reserve the right to
  12774. do things differently.
  12775. </para>
  12776. </remarks>
  12777. <example>Simple example of logging messages
  12778. <code lang="C#">
  12779. ILog log = LogManager.GetLogger("application-log");
  12780. log.Info("Application Start");
  12781. log.Debug("This is a debug message");
  12782. if (log.IsDebugEnabled)
  12783. {
  12784. log.Debug("This is another debug message");
  12785. }
  12786. </code>
  12787. </example>
  12788. <seealso cref="T:log4net.LogManager"/>
  12789. <seealso cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)"/>
  12790. <author>Nicko Cadell</author>
  12791. <author>Gert Driesen</author>
  12792. </member>
  12793. <member name="M:log4net.ILog.Debug(System.Object)">
  12794. <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level.</overloads>
  12795. <summary>
  12796. Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12797. </summary>
  12798. <param name="message">The message object to log.</param>
  12799. <remarks>
  12800. <para>
  12801. This method first checks if this logger is <c>DEBUG</c>
  12802. enabled by comparing the level of this logger with the
  12803. <see cref="F:log4net.Core.Level.Debug"/> level. If this logger is
  12804. <c>DEBUG</c> enabled, then it converts the message object
  12805. (passed as parameter) to a string by invoking the appropriate
  12806. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  12807. proceeds to call all the registered appenders in this logger
  12808. and also higher in the hierarchy depending on the value of
  12809. the additivity flag.
  12810. </para>
  12811. <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  12812. to this method will print the name of the <see cref="T:System.Exception"/>
  12813. but no stack trace. To print a stack trace use the
  12814. <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/> form instead.
  12815. </para>
  12816. </remarks>
  12817. <seealso cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12818. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12819. </member>
  12820. <member name="M:log4net.ILog.Debug(System.Object,System.Exception)">
  12821. <summary>
  12822. Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level including
  12823. the stack trace of the <see cref="T:System.Exception"/> passed
  12824. as a parameter.
  12825. </summary>
  12826. <param name="message">The message object to log.</param>
  12827. <param name="exception">The exception to log, including its stack trace.</param>
  12828. <remarks>
  12829. <para>
  12830. See the <see cref="M:log4net.ILog.Debug(System.Object)"/> form for more detailed information.
  12831. </para>
  12832. </remarks>
  12833. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12834. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12835. </member>
  12836. <member name="M:log4net.ILog.DebugFormat(System.String,System.Object[])">
  12837. <overloads>Log a formatted string with the <see cref="F:log4net.Core.Level.Debug"/> level.</overloads>
  12838. <summary>
  12839. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12840. </summary>
  12841. <param name="format">A String containing zero or more format items</param>
  12842. <param name="args">An Object array containing zero or more objects to format</param>
  12843. <remarks>
  12844. <para>
  12845. The message is formatted using the <c>String.Format</c> method. See
  12846. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  12847. of the formatting.
  12848. </para>
  12849. <para>
  12850. This method does not take an <see cref="T:System.Exception"/> object to include in the
  12851. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12852. methods instead.
  12853. </para>
  12854. </remarks>
  12855. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12856. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12857. </member>
  12858. <member name="M:log4net.ILog.DebugFormat(System.String,System.Object)">
  12859. <summary>
  12860. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12861. </summary>
  12862. <param name="format">A String containing zero or more format items</param>
  12863. <param name="arg0">An Object to format</param>
  12864. <remarks>
  12865. <para>
  12866. The message is formatted using the <c>String.Format</c> method. See
  12867. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  12868. of the formatting.
  12869. </para>
  12870. <para>
  12871. This method does not take an <see cref="T:System.Exception"/> object to include in the
  12872. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12873. methods instead.
  12874. </para>
  12875. </remarks>
  12876. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12877. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12878. </member>
  12879. <member name="M:log4net.ILog.DebugFormat(System.String,System.Object,System.Object)">
  12880. <summary>
  12881. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12882. </summary>
  12883. <param name="format">A String containing zero or more format items</param>
  12884. <param name="arg0">An Object to format</param>
  12885. <param name="arg1">An Object to format</param>
  12886. <remarks>
  12887. <para>
  12888. The message is formatted using the <c>String.Format</c> method. See
  12889. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  12890. of the formatting.
  12891. </para>
  12892. <para>
  12893. This method does not take an <see cref="T:System.Exception"/> object to include in the
  12894. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12895. methods instead.
  12896. </para>
  12897. </remarks>
  12898. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12899. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12900. </member>
  12901. <member name="M:log4net.ILog.DebugFormat(System.String,System.Object,System.Object,System.Object)">
  12902. <summary>
  12903. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12904. </summary>
  12905. <param name="format">A String containing zero or more format items</param>
  12906. <param name="arg0">An Object to format</param>
  12907. <param name="arg1">An Object to format</param>
  12908. <param name="arg2">An Object to format</param>
  12909. <remarks>
  12910. <para>
  12911. The message is formatted using the <c>String.Format</c> method. See
  12912. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  12913. of the formatting.
  12914. </para>
  12915. <para>
  12916. This method does not take an <see cref="T:System.Exception"/> object to include in the
  12917. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12918. methods instead.
  12919. </para>
  12920. </remarks>
  12921. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12922. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12923. </member>
  12924. <member name="M:log4net.ILog.DebugFormat(System.IFormatProvider,System.String,System.Object[])">
  12925. <summary>
  12926. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.
  12927. </summary>
  12928. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  12929. <param name="format">A String containing zero or more format items</param>
  12930. <param name="args">An Object array containing zero or more objects to format</param>
  12931. <remarks>
  12932. <para>
  12933. The message is formatted using the <c>String.Format</c> method. See
  12934. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  12935. of the formatting.
  12936. </para>
  12937. <para>
  12938. This method does not take an <see cref="T:System.Exception"/> object to include in the
  12939. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>
  12940. methods instead.
  12941. </para>
  12942. </remarks>
  12943. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  12944. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  12945. </member>
  12946. <member name="M:log4net.ILog.Info(System.Object)">
  12947. <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Info"/> level.</overloads>
  12948. <summary>
  12949. Logs a message object with the <see cref="F:log4net.Core.Level.Info"/> level.
  12950. </summary>
  12951. <remarks>
  12952. <para>
  12953. This method first checks if this logger is <c>INFO</c>
  12954. enabled by comparing the level of this logger with the
  12955. <see cref="F:log4net.Core.Level.Info"/> level. If this logger is
  12956. <c>INFO</c> enabled, then it converts the message object
  12957. (passed as parameter) to a string by invoking the appropriate
  12958. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  12959. proceeds to call all the registered appenders in this logger
  12960. and also higher in the hierarchy depending on the value of the
  12961. additivity flag.
  12962. </para>
  12963. <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  12964. to this method will print the name of the <see cref="T:System.Exception"/>
  12965. but no stack trace. To print a stack trace use the
  12966. <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/> form instead.
  12967. </para>
  12968. </remarks>
  12969. <param name="message">The message object to log.</param>
  12970. <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  12971. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  12972. </member>
  12973. <member name="M:log4net.ILog.Info(System.Object,System.Exception)">
  12974. <summary>
  12975. Logs a message object with the <c>INFO</c> level including
  12976. the stack trace of the <see cref="T:System.Exception"/> passed
  12977. as a parameter.
  12978. </summary>
  12979. <param name="message">The message object to log.</param>
  12980. <param name="exception">The exception to log, including its stack trace.</param>
  12981. <remarks>
  12982. <para>
  12983. See the <see cref="M:log4net.ILog.Info(System.Object)"/> form for more detailed information.
  12984. </para>
  12985. </remarks>
  12986. <seealso cref="M:log4net.ILog.Info(System.Object)"/>
  12987. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  12988. </member>
  12989. <member name="M:log4net.ILog.InfoFormat(System.String,System.Object[])">
  12990. <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.</overloads>
  12991. <summary>
  12992. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.
  12993. </summary>
  12994. <param name="format">A String containing zero or more format items</param>
  12995. <param name="args">An Object array containing zero or more objects to format</param>
  12996. <remarks>
  12997. <para>
  12998. The message is formatted using the <c>String.Format</c> method. See
  12999. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13000. of the formatting.
  13001. </para>
  13002. <para>
  13003. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13004. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object)"/>
  13005. methods instead.
  13006. </para>
  13007. </remarks>
  13008. <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  13009. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  13010. </member>
  13011. <member name="M:log4net.ILog.InfoFormat(System.String,System.Object)">
  13012. <summary>
  13013. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.
  13014. </summary>
  13015. <param name="format">A String containing zero or more format items</param>
  13016. <param name="arg0">An Object to format</param>
  13017. <remarks>
  13018. <para>
  13019. The message is formatted using the <c>String.Format</c> method. See
  13020. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13021. of the formatting.
  13022. </para>
  13023. <para>
  13024. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13025. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  13026. methods instead.
  13027. </para>
  13028. </remarks>
  13029. <seealso cref="M:log4net.ILog.Info(System.Object)"/>
  13030. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  13031. </member>
  13032. <member name="M:log4net.ILog.InfoFormat(System.String,System.Object,System.Object)">
  13033. <summary>
  13034. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.
  13035. </summary>
  13036. <param name="format">A String containing zero or more format items</param>
  13037. <param name="arg0">An Object to format</param>
  13038. <param name="arg1">An Object to format</param>
  13039. <remarks>
  13040. <para>
  13041. The message is formatted using the <c>String.Format</c> method. See
  13042. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13043. of the formatting.
  13044. </para>
  13045. <para>
  13046. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13047. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  13048. methods instead.
  13049. </para>
  13050. </remarks>
  13051. <seealso cref="M:log4net.ILog.Info(System.Object)"/>
  13052. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  13053. </member>
  13054. <member name="M:log4net.ILog.InfoFormat(System.String,System.Object,System.Object,System.Object)">
  13055. <summary>
  13056. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.
  13057. </summary>
  13058. <param name="format">A String containing zero or more format items</param>
  13059. <param name="arg0">An Object to format</param>
  13060. <param name="arg1">An Object to format</param>
  13061. <param name="arg2">An Object to format</param>
  13062. <remarks>
  13063. <para>
  13064. The message is formatted using the <c>String.Format</c> method. See
  13065. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13066. of the formatting.
  13067. </para>
  13068. <para>
  13069. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13070. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  13071. methods instead.
  13072. </para>
  13073. </remarks>
  13074. <seealso cref="M:log4net.ILog.Info(System.Object)"/>
  13075. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  13076. </member>
  13077. <member name="M:log4net.ILog.InfoFormat(System.IFormatProvider,System.String,System.Object[])">
  13078. <summary>
  13079. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.
  13080. </summary>
  13081. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  13082. <param name="format">A String containing zero or more format items</param>
  13083. <param name="args">An Object array containing zero or more objects to format</param>
  13084. <remarks>
  13085. <para>
  13086. The message is formatted using the <c>String.Format</c> method. See
  13087. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13088. of the formatting.
  13089. </para>
  13090. <para>
  13091. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13092. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object)"/>
  13093. methods instead.
  13094. </para>
  13095. </remarks>
  13096. <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>
  13097. <seealso cref="P:log4net.ILog.IsInfoEnabled"/>
  13098. </member>
  13099. <member name="M:log4net.ILog.Warn(System.Object)">
  13100. <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level.</overloads>
  13101. <summary>
  13102. Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13103. </summary>
  13104. <remarks>
  13105. <para>
  13106. This method first checks if this logger is <c>WARN</c>
  13107. enabled by comparing the level of this logger with the
  13108. <see cref="F:log4net.Core.Level.Warn"/> level. If this logger is
  13109. <c>WARN</c> enabled, then it converts the message object
  13110. (passed as parameter) to a string by invoking the appropriate
  13111. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  13112. proceeds to call all the registered appenders in this logger
  13113. and also higher in the hierarchy depending on the value of the
  13114. additivity flag.
  13115. </para>
  13116. <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  13117. to this method will print the name of the <see cref="T:System.Exception"/>
  13118. but no stack trace. To print a stack trace use the
  13119. <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/> form instead.
  13120. </para>
  13121. </remarks>
  13122. <param name="message">The message object to log.</param>
  13123. <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13124. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13125. </member>
  13126. <member name="M:log4net.ILog.Warn(System.Object,System.Exception)">
  13127. <summary>
  13128. Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level including
  13129. the stack trace of the <see cref="T:System.Exception"/> passed
  13130. as a parameter.
  13131. </summary>
  13132. <param name="message">The message object to log.</param>
  13133. <param name="exception">The exception to log, including its stack trace.</param>
  13134. <remarks>
  13135. <para>
  13136. See the <see cref="M:log4net.ILog.Warn(System.Object)"/> form for more detailed information.
  13137. </para>
  13138. </remarks>
  13139. <seealso cref="M:log4net.ILog.Warn(System.Object)"/>
  13140. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13141. </member>
  13142. <member name="M:log4net.ILog.WarnFormat(System.String,System.Object[])">
  13143. <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.</overloads>
  13144. <summary>
  13145. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13146. </summary>
  13147. <param name="format">A String containing zero or more format items</param>
  13148. <param name="args">An Object array containing zero or more objects to format</param>
  13149. <remarks>
  13150. <para>
  13151. The message is formatted using the <c>String.Format</c> method. See
  13152. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13153. of the formatting.
  13154. </para>
  13155. <para>
  13156. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13157. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object)"/>
  13158. methods instead.
  13159. </para>
  13160. </remarks>
  13161. <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13162. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13163. </member>
  13164. <member name="M:log4net.ILog.WarnFormat(System.String,System.Object)">
  13165. <summary>
  13166. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13167. </summary>
  13168. <param name="format">A String containing zero or more format items</param>
  13169. <param name="arg0">An Object to format</param>
  13170. <remarks>
  13171. <para>
  13172. The message is formatted using the <c>String.Format</c> method. See
  13173. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13174. of the formatting.
  13175. </para>
  13176. <para>
  13177. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13178. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13179. methods instead.
  13180. </para>
  13181. </remarks>
  13182. <seealso cref="M:log4net.ILog.Warn(System.Object)"/>
  13183. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13184. </member>
  13185. <member name="M:log4net.ILog.WarnFormat(System.String,System.Object,System.Object)">
  13186. <summary>
  13187. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13188. </summary>
  13189. <param name="format">A String containing zero or more format items</param>
  13190. <param name="arg0">An Object to format</param>
  13191. <param name="arg1">An Object to format</param>
  13192. <remarks>
  13193. <para>
  13194. The message is formatted using the <c>String.Format</c> method. See
  13195. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13196. of the formatting.
  13197. </para>
  13198. <para>
  13199. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13200. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13201. methods instead.
  13202. </para>
  13203. </remarks>
  13204. <seealso cref="M:log4net.ILog.Warn(System.Object)"/>
  13205. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13206. </member>
  13207. <member name="M:log4net.ILog.WarnFormat(System.String,System.Object,System.Object,System.Object)">
  13208. <summary>
  13209. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13210. </summary>
  13211. <param name="format">A String containing zero or more format items</param>
  13212. <param name="arg0">An Object to format</param>
  13213. <param name="arg1">An Object to format</param>
  13214. <param name="arg2">An Object to format</param>
  13215. <remarks>
  13216. <para>
  13217. The message is formatted using the <c>String.Format</c> method. See
  13218. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13219. of the formatting.
  13220. </para>
  13221. <para>
  13222. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13223. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13224. methods instead.
  13225. </para>
  13226. </remarks>
  13227. <seealso cref="M:log4net.ILog.Warn(System.Object)"/>
  13228. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13229. </member>
  13230. <member name="M:log4net.ILog.WarnFormat(System.IFormatProvider,System.String,System.Object[])">
  13231. <summary>
  13232. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.
  13233. </summary>
  13234. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  13235. <param name="format">A String containing zero or more format items</param>
  13236. <param name="args">An Object array containing zero or more objects to format</param>
  13237. <remarks>
  13238. <para>
  13239. The message is formatted using the <c>String.Format</c> method. See
  13240. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13241. of the formatting.
  13242. </para>
  13243. <para>
  13244. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13245. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object)"/>
  13246. methods instead.
  13247. </para>
  13248. </remarks>
  13249. <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>
  13250. <seealso cref="P:log4net.ILog.IsWarnEnabled"/>
  13251. </member>
  13252. <member name="M:log4net.ILog.Error(System.Object)">
  13253. <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Error"/> level.</overloads>
  13254. <summary>
  13255. Logs a message object with the <see cref="F:log4net.Core.Level.Error"/> level.
  13256. </summary>
  13257. <param name="message">The message object to log.</param>
  13258. <remarks>
  13259. <para>
  13260. This method first checks if this logger is <c>ERROR</c>
  13261. enabled by comparing the level of this logger with the
  13262. <see cref="F:log4net.Core.Level.Error"/> level. If this logger is
  13263. <c>ERROR</c> enabled, then it converts the message object
  13264. (passed as parameter) to a string by invoking the appropriate
  13265. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  13266. proceeds to call all the registered appenders in this logger
  13267. and also higher in the hierarchy depending on the value of the
  13268. additivity flag.
  13269. </para>
  13270. <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  13271. to this method will print the name of the <see cref="T:System.Exception"/>
  13272. but no stack trace. To print a stack trace use the
  13273. <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/> form instead.
  13274. </para>
  13275. </remarks>
  13276. <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13277. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13278. </member>
  13279. <member name="M:log4net.ILog.Error(System.Object,System.Exception)">
  13280. <summary>
  13281. Log a message object with the <see cref="F:log4net.Core.Level.Error"/> level including
  13282. the stack trace of the <see cref="T:System.Exception"/> passed
  13283. as a parameter.
  13284. </summary>
  13285. <param name="message">The message object to log.</param>
  13286. <param name="exception">The exception to log, including its stack trace.</param>
  13287. <remarks>
  13288. <para>
  13289. See the <see cref="M:log4net.ILog.Error(System.Object)"/> form for more detailed information.
  13290. </para>
  13291. </remarks>
  13292. <seealso cref="M:log4net.ILog.Error(System.Object)"/>
  13293. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13294. </member>
  13295. <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object[])">
  13296. <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.</overloads>
  13297. <summary>
  13298. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.
  13299. </summary>
  13300. <param name="format">A String containing zero or more format items</param>
  13301. <param name="args">An Object array containing zero or more objects to format</param>
  13302. <remarks>
  13303. <para>
  13304. The message is formatted using the <c>String.Format</c> method. See
  13305. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13306. of the formatting.
  13307. </para>
  13308. <para>
  13309. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13310. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object)"/>
  13311. methods instead.
  13312. </para>
  13313. </remarks>
  13314. <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13315. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13316. </member>
  13317. <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object)">
  13318. <summary>
  13319. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.
  13320. </summary>
  13321. <param name="format">A String containing zero or more format items</param>
  13322. <param name="arg0">An Object to format</param>
  13323. <remarks>
  13324. <para>
  13325. The message is formatted using the <c>String.Format</c> method. See
  13326. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13327. of the formatting.
  13328. </para>
  13329. <para>
  13330. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13331. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13332. methods instead.
  13333. </para>
  13334. </remarks>
  13335. <seealso cref="M:log4net.ILog.Error(System.Object)"/>
  13336. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13337. </member>
  13338. <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object,System.Object)">
  13339. <summary>
  13340. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.
  13341. </summary>
  13342. <param name="format">A String containing zero or more format items</param>
  13343. <param name="arg0">An Object to format</param>
  13344. <param name="arg1">An Object to format</param>
  13345. <remarks>
  13346. <para>
  13347. The message is formatted using the <c>String.Format</c> method. See
  13348. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13349. of the formatting.
  13350. </para>
  13351. <para>
  13352. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13353. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13354. methods instead.
  13355. </para>
  13356. </remarks>
  13357. <seealso cref="M:log4net.ILog.Error(System.Object)"/>
  13358. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13359. </member>
  13360. <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object,System.Object,System.Object)">
  13361. <summary>
  13362. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.
  13363. </summary>
  13364. <param name="format">A String containing zero or more format items</param>
  13365. <param name="arg0">An Object to format</param>
  13366. <param name="arg1">An Object to format</param>
  13367. <param name="arg2">An Object to format</param>
  13368. <remarks>
  13369. <para>
  13370. The message is formatted using the <c>String.Format</c> method. See
  13371. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13372. of the formatting.
  13373. </para>
  13374. <para>
  13375. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13376. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13377. methods instead.
  13378. </para>
  13379. </remarks>
  13380. <seealso cref="M:log4net.ILog.Error(System.Object)"/>
  13381. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13382. </member>
  13383. <member name="M:log4net.ILog.ErrorFormat(System.IFormatProvider,System.String,System.Object[])">
  13384. <summary>
  13385. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.
  13386. </summary>
  13387. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  13388. <param name="format">A String containing zero or more format items</param>
  13389. <param name="args">An Object array containing zero or more objects to format</param>
  13390. <remarks>
  13391. <para>
  13392. The message is formatted using the <c>String.Format</c> method. See
  13393. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13394. of the formatting.
  13395. </para>
  13396. <para>
  13397. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13398. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object)"/>
  13399. methods instead.
  13400. </para>
  13401. </remarks>
  13402. <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>
  13403. <seealso cref="P:log4net.ILog.IsErrorEnabled"/>
  13404. </member>
  13405. <member name="M:log4net.ILog.Fatal(System.Object)">
  13406. <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level.</overloads>
  13407. <summary>
  13408. Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13409. </summary>
  13410. <remarks>
  13411. <para>
  13412. This method first checks if this logger is <c>FATAL</c>
  13413. enabled by comparing the level of this logger with the
  13414. <see cref="F:log4net.Core.Level.Fatal"/> level. If this logger is
  13415. <c>FATAL</c> enabled, then it converts the message object
  13416. (passed as parameter) to a string by invoking the appropriate
  13417. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  13418. proceeds to call all the registered appenders in this logger
  13419. and also higher in the hierarchy depending on the value of the
  13420. additivity flag.
  13421. </para>
  13422. <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  13423. to this method will print the name of the <see cref="T:System.Exception"/>
  13424. but no stack trace. To print a stack trace use the
  13425. <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/> form instead.
  13426. </para>
  13427. </remarks>
  13428. <param name="message">The message object to log.</param>
  13429. <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13430. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13431. </member>
  13432. <member name="M:log4net.ILog.Fatal(System.Object,System.Exception)">
  13433. <summary>
  13434. Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level including
  13435. the stack trace of the <see cref="T:System.Exception"/> passed
  13436. as a parameter.
  13437. </summary>
  13438. <param name="message">The message object to log.</param>
  13439. <param name="exception">The exception to log, including its stack trace.</param>
  13440. <remarks>
  13441. <para>
  13442. See the <see cref="M:log4net.ILog.Fatal(System.Object)"/> form for more detailed information.
  13443. </para>
  13444. </remarks>
  13445. <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>
  13446. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13447. </member>
  13448. <member name="M:log4net.ILog.FatalFormat(System.String,System.Object[])">
  13449. <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.</overloads>
  13450. <summary>
  13451. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13452. </summary>
  13453. <param name="format">A String containing zero or more format items</param>
  13454. <param name="args">An Object array containing zero or more objects to format</param>
  13455. <remarks>
  13456. <para>
  13457. The message is formatted using the <c>String.Format</c> method. See
  13458. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13459. of the formatting.
  13460. </para>
  13461. <para>
  13462. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13463. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object)"/>
  13464. methods instead.
  13465. </para>
  13466. </remarks>
  13467. <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13468. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13469. </member>
  13470. <member name="M:log4net.ILog.FatalFormat(System.String,System.Object)">
  13471. <summary>
  13472. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13473. </summary>
  13474. <param name="format">A String containing zero or more format items</param>
  13475. <param name="arg0">An Object to format</param>
  13476. <remarks>
  13477. <para>
  13478. The message is formatted using the <c>String.Format</c> method. See
  13479. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13480. of the formatting.
  13481. </para>
  13482. <para>
  13483. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13484. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13485. methods instead.
  13486. </para>
  13487. </remarks>
  13488. <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>
  13489. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13490. </member>
  13491. <member name="M:log4net.ILog.FatalFormat(System.String,System.Object,System.Object)">
  13492. <summary>
  13493. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13494. </summary>
  13495. <param name="format">A String containing zero or more format items</param>
  13496. <param name="arg0">An Object to format</param>
  13497. <param name="arg1">An Object to format</param>
  13498. <remarks>
  13499. <para>
  13500. The message is formatted using the <c>String.Format</c> method. See
  13501. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13502. of the formatting.
  13503. </para>
  13504. <para>
  13505. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13506. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13507. methods instead.
  13508. </para>
  13509. </remarks>
  13510. <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>
  13511. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13512. </member>
  13513. <member name="M:log4net.ILog.FatalFormat(System.String,System.Object,System.Object,System.Object)">
  13514. <summary>
  13515. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13516. </summary>
  13517. <param name="format">A String containing zero or more format items</param>
  13518. <param name="arg0">An Object to format</param>
  13519. <param name="arg1">An Object to format</param>
  13520. <param name="arg2">An Object to format</param>
  13521. <remarks>
  13522. <para>
  13523. The message is formatted using the <c>String.Format</c> method. See
  13524. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13525. of the formatting.
  13526. </para>
  13527. <para>
  13528. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13529. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13530. methods instead.
  13531. </para>
  13532. </remarks>
  13533. <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>
  13534. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13535. </member>
  13536. <member name="M:log4net.ILog.FatalFormat(System.IFormatProvider,System.String,System.Object[])">
  13537. <summary>
  13538. Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13539. </summary>
  13540. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  13541. <param name="format">A String containing zero or more format items</param>
  13542. <param name="args">An Object array containing zero or more objects to format</param>
  13543. <remarks>
  13544. <para>
  13545. The message is formatted using the <c>String.Format</c> method. See
  13546. <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior
  13547. of the formatting.
  13548. </para>
  13549. <para>
  13550. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13551. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object)"/>
  13552. methods instead.
  13553. </para>
  13554. </remarks>
  13555. <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>
  13556. <seealso cref="P:log4net.ILog.IsFatalEnabled"/>
  13557. </member>
  13558. <member name="P:log4net.ILog.IsDebugEnabled">
  13559. <summary>
  13560. Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Debug"/> level.
  13561. </summary>
  13562. <value>
  13563. <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Debug"/> events, <c>false</c> otherwise.
  13564. </value>
  13565. <remarks>
  13566. <para>
  13567. This function is intended to lessen the computational cost of
  13568. disabled log debug statements.
  13569. </para>
  13570. <para> For some ILog interface <c>log</c>, when you write:</para>
  13571. <code lang="C#">
  13572. log.Debug("This is entry number: " + i );
  13573. </code>
  13574. <para>
  13575. You incur the cost constructing the message, string construction and concatenation in
  13576. this case, regardless of whether the message is logged or not.
  13577. </para>
  13578. <para>
  13579. If you are worried about speed (who isn't), then you should write:
  13580. </para>
  13581. <code lang="C#">
  13582. if (log.IsDebugEnabled)
  13583. {
  13584. log.Debug("This is entry number: " + i );
  13585. }
  13586. </code>
  13587. <para>
  13588. This way you will not incur the cost of parameter
  13589. construction if debugging is disabled for <c>log</c>. On
  13590. the other hand, if the <c>log</c> is debug enabled, you
  13591. will incur the cost of evaluating whether the logger is debug
  13592. enabled twice. Once in <see cref="P:log4net.ILog.IsDebugEnabled"/> and once in
  13593. the <see cref="M:log4net.ILog.Debug(System.Object)"/>. This is an insignificant overhead
  13594. since evaluating a logger takes about 1% of the time it
  13595. takes to actually log. This is the preferred style of logging.
  13596. </para>
  13597. <para>Alternatively if your logger is available statically then the is debug
  13598. enabled state can be stored in a static variable like this:
  13599. </para>
  13600. <code lang="C#">
  13601. private static readonly bool isDebugEnabled = log.IsDebugEnabled;
  13602. </code>
  13603. <para>
  13604. Then when you come to log you can write:
  13605. </para>
  13606. <code lang="C#">
  13607. if (isDebugEnabled)
  13608. {
  13609. log.Debug("This is entry number: " + i );
  13610. }
  13611. </code>
  13612. <para>
  13613. This way the debug enabled state is only queried once
  13614. when the class is loaded. Using a <c>private static readonly</c>
  13615. variable is the most efficient because it is a run time constant
  13616. and can be heavily optimized by the JIT compiler.
  13617. </para>
  13618. <para>
  13619. Of course if you use a static readonly variable to
  13620. hold the enabled state of the logger then you cannot
  13621. change the enabled state at runtime to vary the logging
  13622. that is produced. You have to decide if you need absolute
  13623. speed or runtime flexibility.
  13624. </para>
  13625. </remarks>
  13626. <seealso cref="M:log4net.ILog.Debug(System.Object)"/>
  13627. <seealso cref="M:log4net.ILog.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/>
  13628. </member>
  13629. <member name="P:log4net.ILog.IsInfoEnabled">
  13630. <summary>
  13631. Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Info"/> level.
  13632. </summary>
  13633. <value>
  13634. <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Info"/> events, <c>false</c> otherwise.
  13635. </value>
  13636. <remarks>
  13637. For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.
  13638. </remarks>
  13639. <seealso cref="M:log4net.ILog.Info(System.Object)"/>
  13640. <seealso cref="M:log4net.ILog.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/>
  13641. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  13642. </member>
  13643. <member name="P:log4net.ILog.IsWarnEnabled">
  13644. <summary>
  13645. Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Warn"/> level.
  13646. </summary>
  13647. <value>
  13648. <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Warn"/> events, <c>false</c> otherwise.
  13649. </value>
  13650. <remarks>
  13651. For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.
  13652. </remarks>
  13653. <seealso cref="M:log4net.ILog.Warn(System.Object)"/>
  13654. <seealso cref="M:log4net.ILog.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/>
  13655. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  13656. </member>
  13657. <member name="P:log4net.ILog.IsErrorEnabled">
  13658. <summary>
  13659. Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Error"/> level.
  13660. </summary>
  13661. <value>
  13662. <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Error"/> events, <c>false</c> otherwise.
  13663. </value>
  13664. <remarks>
  13665. For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.
  13666. </remarks>
  13667. <seealso cref="M:log4net.ILog.Error(System.Object)"/>
  13668. <seealso cref="M:log4net.ILog.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/>
  13669. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  13670. </member>
  13671. <member name="P:log4net.ILog.IsFatalEnabled">
  13672. <summary>
  13673. Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Fatal"/> level.
  13674. </summary>
  13675. <value>
  13676. <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Fatal"/> events, <c>false</c> otherwise.
  13677. </value>
  13678. <remarks>
  13679. For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.
  13680. </remarks>
  13681. <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>
  13682. <seealso cref="M:log4net.ILog.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/>
  13683. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  13684. </member>
  13685. <member name="M:log4net.Core.LogImpl.#ctor(log4net.Core.ILogger)">
  13686. <summary>
  13687. Construct a new wrapper for the specified logger.
  13688. </summary>
  13689. <param name="logger">The logger to wrap.</param>
  13690. <remarks>
  13691. <para>
  13692. Construct a new wrapper for the specified logger.
  13693. </para>
  13694. </remarks>
  13695. </member>
  13696. <member name="M:log4net.Core.LogImpl.ReloadLevels(log4net.Repository.ILoggerRepository)">
  13697. <summary>
  13698. Virtual method called when the configuration of the repository changes
  13699. </summary>
  13700. <param name="repository">the repository holding the levels</param>
  13701. <remarks>
  13702. <para>
  13703. Virtual method called when the configuration of the repository changes
  13704. </para>
  13705. </remarks>
  13706. </member>
  13707. <member name="M:log4net.Core.LogImpl.Debug(System.Object)">
  13708. <summary>
  13709. Logs a message object with the <c>DEBUG</c> level.
  13710. </summary>
  13711. <param name="message">The message object to log.</param>
  13712. <remarks>
  13713. <para>
  13714. This method first checks if this logger is <c>DEBUG</c>
  13715. enabled by comparing the level of this logger with the
  13716. <c>DEBUG</c> level. If this logger is
  13717. <c>DEBUG</c> enabled, then it converts the message object
  13718. (passed as parameter) to a string by invoking the appropriate
  13719. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  13720. proceeds to call all the registered appenders in this logger
  13721. and also higher in the hierarchy depending on the value of the
  13722. additivity flag.
  13723. </para>
  13724. <para>
  13725. <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  13726. to this method will print the name of the <see cref="T:System.Exception"/>
  13727. but no stack trace. To print a stack trace use the
  13728. <see cref="M:log4net.Core.LogImpl.Debug(System.Object,System.Exception)"/> form instead.
  13729. </para>
  13730. </remarks>
  13731. </member>
  13732. <member name="M:log4net.Core.LogImpl.Debug(System.Object,System.Exception)">
  13733. <summary>
  13734. Logs a message object with the <c>DEBUG</c> level
  13735. </summary>
  13736. <param name="message">The message object to log.</param>
  13737. <param name="exception">The exception to log, including its stack trace.</param>
  13738. <remarks>
  13739. <para>
  13740. Logs a message object with the <c>DEBUG</c> level including
  13741. the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> passed
  13742. as a parameter.
  13743. </para>
  13744. <para>
  13745. See the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/> form for more detailed information.
  13746. </para>
  13747. </remarks>
  13748. <seealso cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13749. </member>
  13750. <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object[])">
  13751. <summary>
  13752. Logs a formatted message string with the <c>DEBUG</c> level.
  13753. </summary>
  13754. <param name="format">A String containing zero or more format items</param>
  13755. <param name="args">An Object array containing zero or more objects to format</param>
  13756. <remarks>
  13757. <para>
  13758. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13759. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13760. of the formatting.
  13761. </para>
  13762. <para>
  13763. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13764. format provider. To specify a localized provider use the
  13765. <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13766. </para>
  13767. <para>
  13768. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13769. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13770. methods instead.
  13771. </para>
  13772. </remarks>
  13773. </member>
  13774. <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object)">
  13775. <summary>
  13776. Logs a formatted message string with the <c>DEBUG</c> level.
  13777. </summary>
  13778. <param name="format">A String containing zero or more format items</param>
  13779. <param name="arg0">An Object to format</param>
  13780. <remarks>
  13781. <para>
  13782. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13783. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13784. of the formatting.
  13785. </para>
  13786. <para>
  13787. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13788. format provider. To specify a localized provider use the
  13789. <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13790. </para>
  13791. <para>
  13792. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13793. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13794. methods instead.
  13795. </para>
  13796. </remarks>
  13797. </member>
  13798. <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object,System.Object)">
  13799. <summary>
  13800. Logs a formatted message string with the <c>DEBUG</c> level.
  13801. </summary>
  13802. <param name="format">A String containing zero or more format items</param>
  13803. <param name="arg0">An Object to format</param>
  13804. <param name="arg1">An Object to format</param>
  13805. <remarks>
  13806. <para>
  13807. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13808. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13809. of the formatting.
  13810. </para>
  13811. <para>
  13812. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13813. format provider. To specify a localized provider use the
  13814. <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13815. </para>
  13816. <para>
  13817. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13818. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13819. methods instead.
  13820. </para>
  13821. </remarks>
  13822. </member>
  13823. <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object,System.Object,System.Object)">
  13824. <summary>
  13825. Logs a formatted message string with the <c>DEBUG</c> level.
  13826. </summary>
  13827. <param name="format">A String containing zero or more format items</param>
  13828. <param name="arg0">An Object to format</param>
  13829. <param name="arg1">An Object to format</param>
  13830. <param name="arg2">An Object to format</param>
  13831. <remarks>
  13832. <para>
  13833. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13834. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13835. of the formatting.
  13836. </para>
  13837. <para>
  13838. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13839. format provider. To specify a localized provider use the
  13840. <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13841. </para>
  13842. <para>
  13843. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13844. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13845. methods instead.
  13846. </para>
  13847. </remarks>
  13848. </member>
  13849. <member name="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])">
  13850. <summary>
  13851. Logs a formatted message string with the <c>DEBUG</c> level.
  13852. </summary>
  13853. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  13854. <param name="format">A String containing zero or more format items</param>
  13855. <param name="args">An Object array containing zero or more objects to format</param>
  13856. <remarks>
  13857. <para>
  13858. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13859. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13860. of the formatting.
  13861. </para>
  13862. <para>
  13863. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13864. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>
  13865. methods instead.
  13866. </para>
  13867. </remarks>
  13868. </member>
  13869. <member name="M:log4net.Core.LogImpl.Info(System.Object)">
  13870. <summary>
  13871. Logs a message object with the <c>INFO</c> level.
  13872. </summary>
  13873. <param name="message">The message object to log.</param>
  13874. <remarks>
  13875. <para>
  13876. This method first checks if this logger is <c>INFO</c>
  13877. enabled by comparing the level of this logger with the
  13878. <c>INFO</c> level. If this logger is
  13879. <c>INFO</c> enabled, then it converts the message object
  13880. (passed as parameter) to a string by invoking the appropriate
  13881. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  13882. proceeds to call all the registered appenders in this logger
  13883. and also higher in the hierarchy depending on the value of
  13884. the additivity flag.
  13885. </para>
  13886. <para>
  13887. <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/>
  13888. to this method will print the name of the <see cref="T:System.Exception"/>
  13889. but no stack trace. To print a stack trace use the
  13890. <see cref="M:log4net.Core.LogImpl.Info(System.Object,System.Exception)"/> form instead.
  13891. </para>
  13892. </remarks>
  13893. </member>
  13894. <member name="M:log4net.Core.LogImpl.Info(System.Object,System.Exception)">
  13895. <summary>
  13896. Logs a message object with the <c>INFO</c> level.
  13897. </summary>
  13898. <param name="message">The message object to log.</param>
  13899. <param name="exception">The exception to log, including its stack trace.</param>
  13900. <remarks>
  13901. <para>
  13902. Logs a message object with the <c>INFO</c> level including
  13903. the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/>
  13904. passed as a parameter.
  13905. </para>
  13906. <para>
  13907. See the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/> form for more detailed information.
  13908. </para>
  13909. </remarks>
  13910. <seealso cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  13911. </member>
  13912. <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object[])">
  13913. <summary>
  13914. Logs a formatted message string with the <c>INFO</c> level.
  13915. </summary>
  13916. <param name="format">A String containing zero or more format items</param>
  13917. <param name="args">An Object array containing zero or more objects to format</param>
  13918. <remarks>
  13919. <para>
  13920. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13921. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13922. of the formatting.
  13923. </para>
  13924. <para>
  13925. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13926. format provider. To specify a localized provider use the
  13927. <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13928. </para>
  13929. <para>
  13930. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13931. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  13932. methods instead.
  13933. </para>
  13934. </remarks>
  13935. </member>
  13936. <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object)">
  13937. <summary>
  13938. Logs a formatted message string with the <c>INFO</c> level.
  13939. </summary>
  13940. <param name="format">A String containing zero or more format items</param>
  13941. <param name="arg0">An Object to format</param>
  13942. <remarks>
  13943. <para>
  13944. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13945. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13946. of the formatting.
  13947. </para>
  13948. <para>
  13949. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13950. format provider. To specify a localized provider use the
  13951. <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13952. </para>
  13953. <para>
  13954. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13955. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  13956. methods instead.
  13957. </para>
  13958. </remarks>
  13959. </member>
  13960. <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object,System.Object)">
  13961. <summary>
  13962. Logs a formatted message string with the <c>INFO</c> level.
  13963. </summary>
  13964. <param name="format">A String containing zero or more format items</param>
  13965. <param name="arg0">An Object to format</param>
  13966. <param name="arg1">An Object to format</param>
  13967. <remarks>
  13968. <para>
  13969. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13970. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13971. of the formatting.
  13972. </para>
  13973. <para>
  13974. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  13975. format provider. To specify a localized provider use the
  13976. <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  13977. </para>
  13978. <para>
  13979. This method does not take an <see cref="T:System.Exception"/> object to include in the
  13980. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  13981. methods instead.
  13982. </para>
  13983. </remarks>
  13984. </member>
  13985. <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object,System.Object,System.Object)">
  13986. <summary>
  13987. Logs a formatted message string with the <c>INFO</c> level.
  13988. </summary>
  13989. <param name="format">A String containing zero or more format items</param>
  13990. <param name="arg0">An Object to format</param>
  13991. <param name="arg1">An Object to format</param>
  13992. <param name="arg2">An Object to format</param>
  13993. <remarks>
  13994. <para>
  13995. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  13996. <c>String.Format</c> for details of the syntax of the format string and the behavior
  13997. of the formatting.
  13998. </para>
  13999. <para>
  14000. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14001. format provider. To specify a localized provider use the
  14002. <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14003. </para>
  14004. <para>
  14005. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14006. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  14007. methods instead.
  14008. </para>
  14009. </remarks>
  14010. </member>
  14011. <member name="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])">
  14012. <summary>
  14013. Logs a formatted message string with the <c>INFO</c> level.
  14014. </summary>
  14015. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  14016. <param name="format">A String containing zero or more format items</param>
  14017. <param name="args">An Object array containing zero or more objects to format</param>
  14018. <remarks>
  14019. <para>
  14020. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14021. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14022. of the formatting.
  14023. </para>
  14024. <para>
  14025. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14026. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>
  14027. methods instead.
  14028. </para>
  14029. </remarks>
  14030. </member>
  14031. <member name="M:log4net.Core.LogImpl.Warn(System.Object)">
  14032. <summary>
  14033. Logs a message object with the <c>WARN</c> level.
  14034. </summary>
  14035. <param name="message">the message object to log</param>
  14036. <remarks>
  14037. <para>
  14038. This method first checks if this logger is <c>WARN</c>
  14039. enabled by comparing the level of this logger with the
  14040. <c>WARN</c> level. If this logger is
  14041. <c>WARN</c> enabled, then it converts the message object
  14042. (passed as parameter) to a string by invoking the appropriate
  14043. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  14044. proceeds to call all the registered appenders in this logger and
  14045. also higher in the hierarchy depending on the value of the
  14046. additivity flag.
  14047. </para>
  14048. <para>
  14049. <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this
  14050. method will print the name of the <see cref="T:System.Exception"/> but no
  14051. stack trace. To print a stack trace use the
  14052. <see cref="M:log4net.Core.LogImpl.Warn(System.Object,System.Exception)"/> form instead.
  14053. </para>
  14054. </remarks>
  14055. </member>
  14056. <member name="M:log4net.Core.LogImpl.Warn(System.Object,System.Exception)">
  14057. <summary>
  14058. Logs a message object with the <c>WARN</c> level
  14059. </summary>
  14060. <param name="message">The message object to log.</param>
  14061. <param name="exception">The exception to log, including its stack trace.</param>
  14062. <remarks>
  14063. <para>
  14064. Logs a message object with the <c>WARN</c> level including
  14065. the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/>
  14066. passed as a parameter.
  14067. </para>
  14068. <para>
  14069. See the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/> form for more detailed information.
  14070. </para>
  14071. </remarks>
  14072. <seealso cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14073. </member>
  14074. <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object[])">
  14075. <summary>
  14076. Logs a formatted message string with the <c>WARN</c> level.
  14077. </summary>
  14078. <param name="format">A String containing zero or more format items</param>
  14079. <param name="args">An Object array containing zero or more objects to format</param>
  14080. <remarks>
  14081. <para>
  14082. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14083. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14084. of the formatting.
  14085. </para>
  14086. <para>
  14087. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14088. format provider. To specify a localized provider use the
  14089. <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14090. </para>
  14091. <para>
  14092. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14093. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14094. methods instead.
  14095. </para>
  14096. </remarks>
  14097. </member>
  14098. <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object)">
  14099. <summary>
  14100. Logs a formatted message string with the <c>WARN</c> level.
  14101. </summary>
  14102. <param name="format">A String containing zero or more format items</param>
  14103. <param name="arg0">An Object to format</param>
  14104. <remarks>
  14105. <para>
  14106. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14107. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14108. of the formatting.
  14109. </para>
  14110. <para>
  14111. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14112. format provider. To specify a localized provider use the
  14113. <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14114. </para>
  14115. <para>
  14116. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14117. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14118. methods instead.
  14119. </para>
  14120. </remarks>
  14121. </member>
  14122. <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object,System.Object)">
  14123. <summary>
  14124. Logs a formatted message string with the <c>WARN</c> level.
  14125. </summary>
  14126. <param name="format">A String containing zero or more format items</param>
  14127. <param name="arg0">An Object to format</param>
  14128. <param name="arg1">An Object to format</param>
  14129. <remarks>
  14130. <para>
  14131. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14132. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14133. of the formatting.
  14134. </para>
  14135. <para>
  14136. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14137. format provider. To specify a localized provider use the
  14138. <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14139. </para>
  14140. <para>
  14141. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14142. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14143. methods instead.
  14144. </para>
  14145. </remarks>
  14146. </member>
  14147. <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object,System.Object,System.Object)">
  14148. <summary>
  14149. Logs a formatted message string with the <c>WARN</c> level.
  14150. </summary>
  14151. <param name="format">A String containing zero or more format items</param>
  14152. <param name="arg0">An Object to format</param>
  14153. <param name="arg1">An Object to format</param>
  14154. <param name="arg2">An Object to format</param>
  14155. <remarks>
  14156. <para>
  14157. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14158. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14159. of the formatting.
  14160. </para>
  14161. <para>
  14162. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14163. format provider. To specify a localized provider use the
  14164. <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14165. </para>
  14166. <para>
  14167. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14168. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14169. methods instead.
  14170. </para>
  14171. </remarks>
  14172. </member>
  14173. <member name="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])">
  14174. <summary>
  14175. Logs a formatted message string with the <c>WARN</c> level.
  14176. </summary>
  14177. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  14178. <param name="format">A String containing zero or more format items</param>
  14179. <param name="args">An Object array containing zero or more objects to format</param>
  14180. <remarks>
  14181. <para>
  14182. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14183. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14184. of the formatting.
  14185. </para>
  14186. <para>
  14187. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14188. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>
  14189. methods instead.
  14190. </para>
  14191. </remarks>
  14192. </member>
  14193. <member name="M:log4net.Core.LogImpl.Error(System.Object)">
  14194. <summary>
  14195. Logs a message object with the <c>ERROR</c> level.
  14196. </summary>
  14197. <param name="message">The message object to log.</param>
  14198. <remarks>
  14199. <para>
  14200. This method first checks if this logger is <c>ERROR</c>
  14201. enabled by comparing the level of this logger with the
  14202. <c>ERROR</c> level. If this logger is
  14203. <c>ERROR</c> enabled, then it converts the message object
  14204. (passed as parameter) to a string by invoking the appropriate
  14205. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  14206. proceeds to call all the registered appenders in this logger and
  14207. also higher in the hierarchy depending on the value of the
  14208. additivity flag.
  14209. </para>
  14210. <para>
  14211. <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this
  14212. method will print the name of the <see cref="T:System.Exception"/> but no
  14213. stack trace. To print a stack trace use the
  14214. <see cref="M:log4net.Core.LogImpl.Error(System.Object,System.Exception)"/> form instead.
  14215. </para>
  14216. </remarks>
  14217. </member>
  14218. <member name="M:log4net.Core.LogImpl.Error(System.Object,System.Exception)">
  14219. <summary>
  14220. Logs a message object with the <c>ERROR</c> level
  14221. </summary>
  14222. <param name="message">The message object to log.</param>
  14223. <param name="exception">The exception to log, including its stack trace.</param>
  14224. <remarks>
  14225. <para>
  14226. Logs a message object with the <c>ERROR</c> level including
  14227. the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/>
  14228. passed as a parameter.
  14229. </para>
  14230. <para>
  14231. See the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/> form for more detailed information.
  14232. </para>
  14233. </remarks>
  14234. <seealso cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14235. </member>
  14236. <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object[])">
  14237. <summary>
  14238. Logs a formatted message string with the <c>ERROR</c> level.
  14239. </summary>
  14240. <param name="format">A String containing zero or more format items</param>
  14241. <param name="args">An Object array containing zero or more objects to format</param>
  14242. <remarks>
  14243. <para>
  14244. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14245. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14246. of the formatting.
  14247. </para>
  14248. <para>
  14249. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14250. format provider. To specify a localized provider use the
  14251. <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14252. </para>
  14253. <para>
  14254. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14255. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14256. methods instead.
  14257. </para>
  14258. </remarks>
  14259. </member>
  14260. <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object)">
  14261. <summary>
  14262. Logs a formatted message string with the <c>ERROR</c> level.
  14263. </summary>
  14264. <param name="format">A String containing zero or more format items</param>
  14265. <param name="arg0">An Object to format</param>
  14266. <remarks>
  14267. <para>
  14268. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14269. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14270. of the formatting.
  14271. </para>
  14272. <para>
  14273. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14274. format provider. To specify a localized provider use the
  14275. <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14276. </para>
  14277. <para>
  14278. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14279. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14280. methods instead.
  14281. </para>
  14282. </remarks>
  14283. </member>
  14284. <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object,System.Object)">
  14285. <summary>
  14286. Logs a formatted message string with the <c>ERROR</c> level.
  14287. </summary>
  14288. <param name="format">A String containing zero or more format items</param>
  14289. <param name="arg0">An Object to format</param>
  14290. <param name="arg1">An Object to format</param>
  14291. <remarks>
  14292. <para>
  14293. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14294. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14295. of the formatting.
  14296. </para>
  14297. <para>
  14298. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14299. format provider. To specify a localized provider use the
  14300. <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14301. </para>
  14302. <para>
  14303. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14304. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14305. methods instead.
  14306. </para>
  14307. </remarks>
  14308. </member>
  14309. <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object,System.Object,System.Object)">
  14310. <summary>
  14311. Logs a formatted message string with the <c>ERROR</c> level.
  14312. </summary>
  14313. <param name="format">A String containing zero or more format items</param>
  14314. <param name="arg0">An Object to format</param>
  14315. <param name="arg1">An Object to format</param>
  14316. <param name="arg2">An Object to format</param>
  14317. <remarks>
  14318. <para>
  14319. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14320. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14321. of the formatting.
  14322. </para>
  14323. <para>
  14324. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14325. format provider. To specify a localized provider use the
  14326. <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14327. </para>
  14328. <para>
  14329. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14330. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14331. methods instead.
  14332. </para>
  14333. </remarks>
  14334. </member>
  14335. <member name="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])">
  14336. <summary>
  14337. Logs a formatted message string with the <c>ERROR</c> level.
  14338. </summary>
  14339. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  14340. <param name="format">A String containing zero or more format items</param>
  14341. <param name="args">An Object array containing zero or more objects to format</param>
  14342. <remarks>
  14343. <para>
  14344. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14345. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14346. of the formatting.
  14347. </para>
  14348. <para>
  14349. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14350. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>
  14351. methods instead.
  14352. </para>
  14353. </remarks>
  14354. </member>
  14355. <member name="M:log4net.Core.LogImpl.Fatal(System.Object)">
  14356. <summary>
  14357. Logs a message object with the <c>FATAL</c> level.
  14358. </summary>
  14359. <param name="message">The message object to log.</param>
  14360. <remarks>
  14361. <para>
  14362. This method first checks if this logger is <c>FATAL</c>
  14363. enabled by comparing the level of this logger with the
  14364. <c>FATAL</c> level. If this logger is
  14365. <c>FATAL</c> enabled, then it converts the message object
  14366. (passed as parameter) to a string by invoking the appropriate
  14367. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then
  14368. proceeds to call all the registered appenders in this logger and
  14369. also higher in the hierarchy depending on the value of the
  14370. additivity flag.
  14371. </para>
  14372. <para>
  14373. <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this
  14374. method will print the name of the <see cref="T:System.Exception"/> but no
  14375. stack trace. To print a stack trace use the
  14376. <see cref="M:log4net.Core.LogImpl.Fatal(System.Object,System.Exception)"/> form instead.
  14377. </para>
  14378. </remarks>
  14379. </member>
  14380. <member name="M:log4net.Core.LogImpl.Fatal(System.Object,System.Exception)">
  14381. <summary>
  14382. Logs a message object with the <c>FATAL</c> level
  14383. </summary>
  14384. <param name="message">The message object to log.</param>
  14385. <param name="exception">The exception to log, including its stack trace.</param>
  14386. <remarks>
  14387. <para>
  14388. Logs a message object with the <c>FATAL</c> level including
  14389. the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/>
  14390. passed as a parameter.
  14391. </para>
  14392. <para>
  14393. See the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/> form for more detailed information.
  14394. </para>
  14395. </remarks>
  14396. <seealso cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14397. </member>
  14398. <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object[])">
  14399. <summary>
  14400. Logs a formatted message string with the <c>FATAL</c> level.
  14401. </summary>
  14402. <param name="format">A String containing zero or more format items</param>
  14403. <param name="args">An Object array containing zero or more objects to format</param>
  14404. <remarks>
  14405. <para>
  14406. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14407. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14408. of the formatting.
  14409. </para>
  14410. <para>
  14411. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14412. format provider. To specify a localized provider use the
  14413. <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14414. </para>
  14415. <para>
  14416. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14417. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14418. methods instead.
  14419. </para>
  14420. </remarks>
  14421. </member>
  14422. <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object)">
  14423. <summary>
  14424. Logs a formatted message string with the <c>FATAL</c> level.
  14425. </summary>
  14426. <param name="format">A String containing zero or more format items</param>
  14427. <param name="arg0">An Object to format</param>
  14428. <remarks>
  14429. <para>
  14430. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14431. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14432. of the formatting.
  14433. </para>
  14434. <para>
  14435. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14436. format provider. To specify a localized provider use the
  14437. <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14438. </para>
  14439. <para>
  14440. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14441. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14442. methods instead.
  14443. </para>
  14444. </remarks>
  14445. </member>
  14446. <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object,System.Object)">
  14447. <summary>
  14448. Logs a formatted message string with the <c>FATAL</c> level.
  14449. </summary>
  14450. <param name="format">A String containing zero or more format items</param>
  14451. <param name="arg0">An Object to format</param>
  14452. <param name="arg1">An Object to format</param>
  14453. <remarks>
  14454. <para>
  14455. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14456. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14457. of the formatting.
  14458. </para>
  14459. <para>
  14460. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14461. format provider. To specify a localized provider use the
  14462. <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14463. </para>
  14464. <para>
  14465. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14466. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14467. methods instead.
  14468. </para>
  14469. </remarks>
  14470. </member>
  14471. <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object,System.Object,System.Object)">
  14472. <summary>
  14473. Logs a formatted message string with the <c>FATAL</c> level.
  14474. </summary>
  14475. <param name="format">A String containing zero or more format items</param>
  14476. <param name="arg0">An Object to format</param>
  14477. <param name="arg1">An Object to format</param>
  14478. <param name="arg2">An Object to format</param>
  14479. <remarks>
  14480. <para>
  14481. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14482. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14483. of the formatting.
  14484. </para>
  14485. <para>
  14486. The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>
  14487. format provider. To specify a localized provider use the
  14488. <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.
  14489. </para>
  14490. <para>
  14491. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14492. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14493. methods instead.
  14494. </para>
  14495. </remarks>
  14496. </member>
  14497. <member name="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])">
  14498. <summary>
  14499. Logs a formatted message string with the <c>FATAL</c> level.
  14500. </summary>
  14501. <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>
  14502. <param name="format">A String containing zero or more format items</param>
  14503. <param name="args">An Object array containing zero or more objects to format</param>
  14504. <remarks>
  14505. <para>
  14506. The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See
  14507. <c>String.Format</c> for details of the syntax of the format string and the behavior
  14508. of the formatting.
  14509. </para>
  14510. <para>
  14511. This method does not take an <see cref="T:System.Exception"/> object to include in the
  14512. log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>
  14513. methods instead.
  14514. </para>
  14515. </remarks>
  14516. </member>
  14517. <member name="M:log4net.Core.LogImpl.LoggerRepositoryConfigurationChanged(System.Object,System.EventArgs)">
  14518. <summary>
  14519. Event handler for the <see cref="E:log4net.Repository.ILoggerRepository.ConfigurationChanged"/> event
  14520. </summary>
  14521. <param name="sender">the repository</param>
  14522. <param name="e">Empty</param>
  14523. </member>
  14524. <member name="F:log4net.Core.LogImpl.ThisDeclaringType">
  14525. <summary>
  14526. The fully qualified name of this declaring type not the type of any subclass.
  14527. </summary>
  14528. </member>
  14529. <member name="P:log4net.Core.LogImpl.IsDebugEnabled">
  14530. <summary>
  14531. Checks if this logger is enabled for the <c>DEBUG</c>
  14532. level.
  14533. </summary>
  14534. <value>
  14535. <c>true</c> if this logger is enabled for <c>DEBUG</c> events,
  14536. <c>false</c> otherwise.
  14537. </value>
  14538. <remarks>
  14539. <para>
  14540. This function is intended to lessen the computational cost of
  14541. disabled log debug statements.
  14542. </para>
  14543. <para>
  14544. For some <c>log</c> Logger object, when you write:
  14545. </para>
  14546. <code lang="C#">
  14547. log.Debug("This is entry number: " + i );
  14548. </code>
  14549. <para>
  14550. You incur the cost constructing the message, concatenation in
  14551. this case, regardless of whether the message is logged or not.
  14552. </para>
  14553. <para>
  14554. If you are worried about speed, then you should write:
  14555. </para>
  14556. <code lang="C#">
  14557. if (log.IsDebugEnabled())
  14558. {
  14559. log.Debug("This is entry number: " + i );
  14560. }
  14561. </code>
  14562. <para>
  14563. This way you will not incur the cost of parameter
  14564. construction if debugging is disabled for <c>log</c>. On
  14565. the other hand, if the <c>log</c> is debug enabled, you
  14566. will incur the cost of evaluating whether the logger is debug
  14567. enabled twice. Once in <c>IsDebugEnabled</c> and once in
  14568. the <c>Debug</c>. This is an insignificant overhead
  14569. since evaluating a logger takes about 1% of the time it
  14570. takes to actually log.
  14571. </para>
  14572. </remarks>
  14573. </member>
  14574. <member name="P:log4net.Core.LogImpl.IsInfoEnabled">
  14575. <summary>
  14576. Checks if this logger is enabled for the <c>INFO</c> level.
  14577. </summary>
  14578. <value>
  14579. <c>true</c> if this logger is enabled for <c>INFO</c> events,
  14580. <c>false</c> otherwise.
  14581. </value>
  14582. <remarks>
  14583. <para>
  14584. See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples
  14585. of using this method.
  14586. </para>
  14587. </remarks>
  14588. <seealso cref="P:log4net.Core.LogImpl.IsDebugEnabled"/>
  14589. </member>
  14590. <member name="P:log4net.Core.LogImpl.IsWarnEnabled">
  14591. <summary>
  14592. Checks if this logger is enabled for the <c>WARN</c> level.
  14593. </summary>
  14594. <value>
  14595. <c>true</c> if this logger is enabled for <c>WARN</c> events,
  14596. <c>false</c> otherwise.
  14597. </value>
  14598. <remarks>
  14599. <para>
  14600. See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples
  14601. of using this method.
  14602. </para>
  14603. </remarks>
  14604. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  14605. </member>
  14606. <member name="P:log4net.Core.LogImpl.IsErrorEnabled">
  14607. <summary>
  14608. Checks if this logger is enabled for the <c>ERROR</c> level.
  14609. </summary>
  14610. <value>
  14611. <c>true</c> if this logger is enabled for <c>ERROR</c> events,
  14612. <c>false</c> otherwise.
  14613. </value>
  14614. <remarks>
  14615. <para>
  14616. See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples of using this method.
  14617. </para>
  14618. </remarks>
  14619. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  14620. </member>
  14621. <member name="P:log4net.Core.LogImpl.IsFatalEnabled">
  14622. <summary>
  14623. Checks if this logger is enabled for the <c>FATAL</c> level.
  14624. </summary>
  14625. <value>
  14626. <c>true</c> if this logger is enabled for <c>FATAL</c> events,
  14627. <c>false</c> otherwise.
  14628. </value>
  14629. <remarks>
  14630. <para>
  14631. See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples of using this method.
  14632. </para>
  14633. </remarks>
  14634. <seealso cref="P:log4net.ILog.IsDebugEnabled"/>
  14635. </member>
  14636. <member name="T:log4net.Core.SecurityContext">
  14637. <summary>
  14638. A SecurityContext used by log4net when interacting with protected resources
  14639. </summary>
  14640. <remarks>
  14641. <para>
  14642. A SecurityContext used by log4net when interacting with protected resources
  14643. for example with operating system services. This can be used to impersonate
  14644. a principal that has been granted privileges on the system resources.
  14645. </para>
  14646. </remarks>
  14647. <author>Nicko Cadell</author>
  14648. </member>
  14649. <member name="M:log4net.Core.SecurityContext.Impersonate(System.Object)">
  14650. <summary>
  14651. Impersonate this SecurityContext
  14652. </summary>
  14653. <param name="state">State supplied by the caller</param>
  14654. <returns>An <see cref="T:System.IDisposable"/> instance that will
  14655. revoke the impersonation of this SecurityContext, or <c>null</c></returns>
  14656. <remarks>
  14657. <para>
  14658. Impersonate this security context. Further calls on the current
  14659. thread should now be made in the security context provided
  14660. by this object. When the <see cref="T:System.IDisposable"/> result
  14661. <see cref="M:System.IDisposable.Dispose"/> method is called the security
  14662. context of the thread should be reverted to the state it was in
  14663. before <see cref="M:log4net.Core.SecurityContext.Impersonate(System.Object)"/> was called.
  14664. </para>
  14665. </remarks>
  14666. </member>
  14667. <member name="T:log4net.Core.SecurityContextProvider">
  14668. <summary>
  14669. The <see cref="T:log4net.Core.SecurityContextProvider"/> providers default <see cref="T:log4net.Core.SecurityContext"/> instances.
  14670. </summary>
  14671. <remarks>
  14672. <para>
  14673. A configured component that interacts with potentially protected system
  14674. resources uses a <see cref="T:log4net.Core.SecurityContext"/> to provide the elevated
  14675. privileges required. If the <see cref="T:log4net.Core.SecurityContext"/> object has
  14676. been not been explicitly provided to the component then the component
  14677. will request one from this <see cref="T:log4net.Core.SecurityContextProvider"/>.
  14678. </para>
  14679. <para>
  14680. By default the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is
  14681. an instance of <see cref="T:log4net.Core.SecurityContextProvider"/> which returns only
  14682. <see cref="T:log4net.Util.NullSecurityContext"/> objects. This is a reasonable default
  14683. where the privileges required are not know by the system.
  14684. </para>
  14685. <para>
  14686. This default behavior can be overridden by subclassing the <see cref="T:log4net.Core.SecurityContextProvider"/>
  14687. and overriding the <see cref="M:log4net.Core.SecurityContextProvider.CreateSecurityContext(System.Object)"/> method to return
  14688. the desired <see cref="T:log4net.Core.SecurityContext"/> objects. The default provider
  14689. can be replaced by programmatically setting the value of the
  14690. <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> property.
  14691. </para>
  14692. <para>
  14693. An alternative is to use the <c>log4net.Config.SecurityContextProviderAttribute</c>
  14694. This attribute can be applied to an assembly in the same way as the
  14695. <c>log4net.Config.XmlConfiguratorAttribute"</c>. The attribute takes
  14696. the type to use as the <see cref="T:log4net.Core.SecurityContextProvider"/> as an argument.
  14697. </para>
  14698. </remarks>
  14699. <author>Nicko Cadell</author>
  14700. </member>
  14701. <member name="F:log4net.Core.SecurityContextProvider.s_defaultProvider">
  14702. <summary>
  14703. The default provider
  14704. </summary>
  14705. </member>
  14706. <member name="M:log4net.Core.SecurityContextProvider.#ctor">
  14707. <summary>
  14708. Protected default constructor to allow subclassing
  14709. </summary>
  14710. <remarks>
  14711. <para>
  14712. Protected default constructor to allow subclassing
  14713. </para>
  14714. </remarks>
  14715. </member>
  14716. <member name="M:log4net.Core.SecurityContextProvider.CreateSecurityContext(System.Object)">
  14717. <summary>
  14718. Create a SecurityContext for a consumer
  14719. </summary>
  14720. <param name="consumer">The consumer requesting the SecurityContext</param>
  14721. <returns>An impersonation context</returns>
  14722. <remarks>
  14723. <para>
  14724. The default implementation is to return a <see cref="T:log4net.Util.NullSecurityContext"/>.
  14725. </para>
  14726. <para>
  14727. Subclasses should override this method to provide their own
  14728. behavior.
  14729. </para>
  14730. </remarks>
  14731. </member>
  14732. <member name="P:log4net.Core.SecurityContextProvider.DefaultProvider">
  14733. <summary>
  14734. Gets or sets the default SecurityContextProvider
  14735. </summary>
  14736. <value>
  14737. The default SecurityContextProvider
  14738. </value>
  14739. <remarks>
  14740. <para>
  14741. The default provider is used by configured components that
  14742. require a <see cref="T:log4net.Core.SecurityContext"/> and have not had one
  14743. given to them.
  14744. </para>
  14745. <para>
  14746. By default this is an instance of <see cref="T:log4net.Core.SecurityContextProvider"/>
  14747. that returns <see cref="T:log4net.Util.NullSecurityContext"/> objects.
  14748. </para>
  14749. <para>
  14750. The default provider can be set programmatically by setting
  14751. the value of this property to a sub class of <see cref="T:log4net.Core.SecurityContextProvider"/>
  14752. that has the desired behavior.
  14753. </para>
  14754. </remarks>
  14755. </member>
  14756. <member name="T:log4net.Core.WrapperCreationHandler">
  14757. <summary>
  14758. Delegate used to handle creation of new wrappers.
  14759. </summary>
  14760. <param name="logger">The logger to wrap in a wrapper.</param>
  14761. <remarks>
  14762. <para>
  14763. Delegate used to handle creation of new wrappers. This delegate
  14764. is called from the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/>
  14765. method to construct the wrapper for the specified logger.
  14766. </para>
  14767. <para>
  14768. The delegate to use is supplied to the <see cref="T:log4net.Core.WrapperMap"/>
  14769. constructor.
  14770. </para>
  14771. </remarks>
  14772. </member>
  14773. <member name="T:log4net.Core.WrapperMap">
  14774. <summary>
  14775. Maps between logger objects and wrapper objects.
  14776. </summary>
  14777. <remarks>
  14778. <para>
  14779. This class maintains a mapping between <see cref="T:log4net.Core.ILogger"/> objects and
  14780. <see cref="T:log4net.Core.ILoggerWrapper"/> objects. Use the <see cref="M:log4net.Core.WrapperMap.GetWrapper(log4net.Core.ILogger)"/> method to
  14781. lookup the <see cref="T:log4net.Core.ILoggerWrapper"/> for the specified <see cref="T:log4net.Core.ILogger"/>.
  14782. </para>
  14783. <para>
  14784. New wrapper instances are created by the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/>
  14785. method. The default behavior is for this method to delegate construction
  14786. of the wrapper to the <see cref="T:log4net.Core.WrapperCreationHandler"/> delegate supplied
  14787. to the constructor. This allows specialization of the behavior without
  14788. requiring subclassing of this type.
  14789. </para>
  14790. </remarks>
  14791. <author>Nicko Cadell</author>
  14792. <author>Gert Driesen</author>
  14793. </member>
  14794. <member name="M:log4net.Core.WrapperMap.#ctor(log4net.Core.WrapperCreationHandler)">
  14795. <summary>
  14796. Initializes a new instance of the <see cref="T:log4net.Core.WrapperMap"/>
  14797. </summary>
  14798. <param name="createWrapperHandler">The handler to use to create the wrapper objects.</param>
  14799. <remarks>
  14800. <para>
  14801. Initializes a new instance of the <see cref="T:log4net.Core.WrapperMap"/> class with
  14802. the specified handler to create the wrapper objects.
  14803. </para>
  14804. </remarks>
  14805. </member>
  14806. <member name="M:log4net.Core.WrapperMap.GetWrapper(log4net.Core.ILogger)">
  14807. <summary>
  14808. Gets the wrapper object for the specified logger.
  14809. </summary>
  14810. <returns>The wrapper object for the specified logger</returns>
  14811. <remarks>
  14812. <para>
  14813. If the logger is null then the corresponding wrapper is null.
  14814. </para>
  14815. <para>
  14816. Looks up the wrapper it it has previously been requested and
  14817. returns it. If the wrapper has never been requested before then
  14818. the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/> virtual method is
  14819. called.
  14820. </para>
  14821. </remarks>
  14822. </member>
  14823. <member name="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)">
  14824. <summary>
  14825. Creates the wrapper object for the specified logger.
  14826. </summary>
  14827. <param name="logger">The logger to wrap in a wrapper.</param>
  14828. <returns>The wrapper object for the logger.</returns>
  14829. <remarks>
  14830. <para>
  14831. This implementation uses the <see cref="T:log4net.Core.WrapperCreationHandler"/>
  14832. passed to the constructor to create the wrapper. This method
  14833. can be overridden in a subclass.
  14834. </para>
  14835. </remarks>
  14836. </member>
  14837. <member name="M:log4net.Core.WrapperMap.RepositoryShutdown(log4net.Repository.ILoggerRepository)">
  14838. <summary>
  14839. Called when a monitored repository shutdown event is received.
  14840. </summary>
  14841. <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that is shutting down</param>
  14842. <remarks>
  14843. <para>
  14844. This method is called when a <see cref="T:log4net.Repository.ILoggerRepository"/> that this
  14845. <see cref="T:log4net.Core.WrapperMap"/> is holding loggers for has signaled its shutdown
  14846. event <see cref="E:log4net.Repository.ILoggerRepository.ShutdownEvent"/>. The default
  14847. behavior of this method is to release the references to the loggers
  14848. and their wrappers generated for this repository.
  14849. </para>
  14850. </remarks>
  14851. </member>
  14852. <member name="M:log4net.Core.WrapperMap.ILoggerRepository_Shutdown(System.Object,System.EventArgs)">
  14853. <summary>
  14854. Event handler for repository shutdown event.
  14855. </summary>
  14856. <param name="sender">The sender of the event.</param>
  14857. <param name="e">The event args.</param>
  14858. </member>
  14859. <member name="F:log4net.Core.WrapperMap.m_repositories">
  14860. <summary>
  14861. Map of logger repositories to hashtables of ILogger to ILoggerWrapper mappings
  14862. </summary>
  14863. </member>
  14864. <member name="F:log4net.Core.WrapperMap.m_createWrapperHandler">
  14865. <summary>
  14866. The handler to use to create the extension wrapper objects.
  14867. </summary>
  14868. </member>
  14869. <member name="F:log4net.Core.WrapperMap.m_shutdownHandler">
  14870. <summary>
  14871. Internal reference to the delegate used to register for repository shutdown events.
  14872. </summary>
  14873. </member>
  14874. <member name="P:log4net.Core.WrapperMap.Repositories">
  14875. <summary>
  14876. Gets the map of logger repositories.
  14877. </summary>
  14878. <value>
  14879. Map of logger repositories.
  14880. </value>
  14881. <remarks>
  14882. <para>
  14883. Gets the hashtable that is keyed on <see cref="T:log4net.Repository.ILoggerRepository"/>. The
  14884. values are hashtables keyed on <see cref="T:log4net.Core.ILogger"/> with the
  14885. value being the corresponding <see cref="T:log4net.Core.ILoggerWrapper"/>.
  14886. </para>
  14887. </remarks>
  14888. </member>
  14889. <member name="T:log4net.DateFormatter.AbsoluteTimeDateFormatter">
  14890. <summary>
  14891. Formats a <see cref="T:System.DateTime"/> as <c>"HH:mm:ss,fff"</c>.
  14892. </summary>
  14893. <remarks>
  14894. <para>
  14895. Formats a <see cref="T:System.DateTime"/> in the format <c>"HH:mm:ss,fff"</c> for example, <c>"15:49:37,459"</c>.
  14896. </para>
  14897. </remarks>
  14898. <author>Nicko Cadell</author>
  14899. <author>Gert Driesen</author>
  14900. </member>
  14901. <member name="T:log4net.DateFormatter.IDateFormatter">
  14902. <summary>
  14903. Render a <see cref="T:System.DateTime"/> as a string.
  14904. </summary>
  14905. <remarks>
  14906. <para>
  14907. Interface to abstract the rendering of a <see cref="T:System.DateTime"/>
  14908. instance into a string.
  14909. </para>
  14910. <para>
  14911. The <see cref="M:log4net.DateFormatter.IDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)"/> method is used to render the
  14912. date to a text writer.
  14913. </para>
  14914. </remarks>
  14915. <author>Nicko Cadell</author>
  14916. <author>Gert Driesen</author>
  14917. </member>
  14918. <member name="M:log4net.DateFormatter.IDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">
  14919. <summary>
  14920. Formats the specified date as a string.
  14921. </summary>
  14922. <param name="dateToFormat">The date to format.</param>
  14923. <param name="writer">The writer to write to.</param>
  14924. <remarks>
  14925. <para>
  14926. Format the <see cref="T:System.DateTime"/> as a string and write it
  14927. to the <see cref="T:System.IO.TextWriter"/> provided.
  14928. </para>
  14929. </remarks>
  14930. </member>
  14931. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.AbsoluteTimeDateFormat">
  14932. <summary>
  14933. String constant used to specify AbsoluteTimeDateFormat in layouts. Current value is <b>ABSOLUTE</b>.
  14934. </summary>
  14935. </member>
  14936. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.DateAndTimeDateFormat">
  14937. <summary>
  14938. String constant used to specify DateTimeDateFormat in layouts. Current value is <b>DATE</b>.
  14939. </summary>
  14940. </member>
  14941. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.Iso8601TimeDateFormat">
  14942. <summary>
  14943. String constant used to specify ISO8601DateFormat in layouts. Current value is <b>ISO8601</b>.
  14944. </summary>
  14945. </member>
  14946. <member name="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">
  14947. <summary>
  14948. Renders the date into a string. Format is <c>"HH:mm:ss"</c>.
  14949. </summary>
  14950. <param name="dateToFormat">The date to render into a string.</param>
  14951. <param name="buffer">The string builder to write to.</param>
  14952. <remarks>
  14953. <para>
  14954. Subclasses should override this method to render the date
  14955. into a string using a precision up to the second. This method
  14956. will be called at most once per second and the result will be
  14957. reused if it is needed again during the same second.
  14958. </para>
  14959. </remarks>
  14960. </member>
  14961. <member name="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">
  14962. <summary>
  14963. Renders the date into a string. Format is "HH:mm:ss,fff".
  14964. </summary>
  14965. <param name="dateToFormat">The date to render into a string.</param>
  14966. <param name="writer">The writer to write to.</param>
  14967. <remarks>
  14968. <para>
  14969. Uses the <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> method to generate the
  14970. time string up to the seconds and then appends the current
  14971. milliseconds. The results from <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> are
  14972. cached and <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> is called at most once
  14973. per second.
  14974. </para>
  14975. <para>
  14976. Sub classes should override <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/>
  14977. rather than <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)"/>.
  14978. </para>
  14979. </remarks>
  14980. </member>
  14981. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeToTheSecond">
  14982. <summary>
  14983. Last stored time with precision up to the second.
  14984. </summary>
  14985. </member>
  14986. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeBuf">
  14987. <summary>
  14988. Last stored time with precision up to the second, formatted
  14989. as a string.
  14990. </summary>
  14991. </member>
  14992. <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeString">
  14993. <summary>
  14994. Last stored time with precision up to the second, formatted
  14995. as a string.
  14996. </summary>
  14997. </member>
  14998. <member name="T:log4net.DateFormatter.DateTimeDateFormatter">
  14999. <summary>
  15000. Formats a <see cref="T:System.DateTime"/> as <c>"dd MMM yyyy HH:mm:ss,fff"</c>
  15001. </summary>
  15002. <remarks>
  15003. <para>
  15004. Formats a <see cref="T:System.DateTime"/> in the format
  15005. <c>"dd MMM yyyy HH:mm:ss,fff"</c> for example,
  15006. <c>"06 Nov 1994 15:49:37,459"</c>.
  15007. </para>
  15008. </remarks>
  15009. <author>Nicko Cadell</author>
  15010. <author>Gert Driesen</author>
  15011. <author>Angelika Schnagl</author>
  15012. </member>
  15013. <member name="M:log4net.DateFormatter.DateTimeDateFormatter.#ctor">
  15014. <summary>
  15015. Default constructor.
  15016. </summary>
  15017. <remarks>
  15018. <para>
  15019. Initializes a new instance of the <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> class.
  15020. </para>
  15021. </remarks>
  15022. </member>
  15023. <member name="M:log4net.DateFormatter.DateTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">
  15024. <summary>
  15025. Formats the date without the milliseconds part
  15026. </summary>
  15027. <param name="dateToFormat">The date to format.</param>
  15028. <param name="buffer">The string builder to write to.</param>
  15029. <remarks>
  15030. <para>
  15031. Formats a DateTime in the format <c>"dd MMM yyyy HH:mm:ss"</c>
  15032. for example, <c>"06 Nov 1994 15:49:37"</c>.
  15033. </para>
  15034. <para>
  15035. The base class will append the <c>",fff"</c> milliseconds section.
  15036. This method will only be called at most once per second.
  15037. </para>
  15038. </remarks>
  15039. </member>
  15040. <member name="F:log4net.DateFormatter.DateTimeDateFormatter.m_dateTimeFormatInfo">
  15041. <summary>
  15042. The format info for the invariant culture.
  15043. </summary>
  15044. </member>
  15045. <member name="T:log4net.DateFormatter.Iso8601DateFormatter">
  15046. <summary>
  15047. Formats the <see cref="T:System.DateTime"/> as <c>"yyyy-MM-dd HH:mm:ss,fff"</c>.
  15048. </summary>
  15049. <remarks>
  15050. <para>
  15051. Formats the <see cref="T:System.DateTime"/> specified as a string: <c>"yyyy-MM-dd HH:mm:ss,fff"</c>.
  15052. </para>
  15053. </remarks>
  15054. <author>Nicko Cadell</author>
  15055. <author>Gert Driesen</author>
  15056. </member>
  15057. <member name="M:log4net.DateFormatter.Iso8601DateFormatter.#ctor">
  15058. <summary>
  15059. Default constructor
  15060. </summary>
  15061. <remarks>
  15062. <para>
  15063. Initializes a new instance of the <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/> class.
  15064. </para>
  15065. </remarks>
  15066. </member>
  15067. <member name="M:log4net.DateFormatter.Iso8601DateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">
  15068. <summary>
  15069. Formats the date without the milliseconds part
  15070. </summary>
  15071. <param name="dateToFormat">The date to format.</param>
  15072. <param name="buffer">The string builder to write to.</param>
  15073. <remarks>
  15074. <para>
  15075. Formats the date specified as a string: <c>"yyyy-MM-dd HH:mm:ss"</c>.
  15076. </para>
  15077. <para>
  15078. The base class will append the <c>",fff"</c> milliseconds section.
  15079. This method will only be called at most once per second.
  15080. </para>
  15081. </remarks>
  15082. </member>
  15083. <member name="T:log4net.DateFormatter.SimpleDateFormatter">
  15084. <summary>
  15085. Formats the <see cref="T:System.DateTime"/> using the <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method.
  15086. </summary>
  15087. <remarks>
  15088. <para>
  15089. Formats the <see cref="T:System.DateTime"/> using the <see cref="T:System.DateTime"/> <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method.
  15090. </para>
  15091. </remarks>
  15092. <author>Nicko Cadell</author>
  15093. <author>Gert Driesen</author>
  15094. </member>
  15095. <member name="M:log4net.DateFormatter.SimpleDateFormatter.#ctor(System.String)">
  15096. <summary>
  15097. Constructor
  15098. </summary>
  15099. <param name="format">The format string.</param>
  15100. <remarks>
  15101. <para>
  15102. Initializes a new instance of the <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/> class
  15103. with the specified format string.
  15104. </para>
  15105. <para>
  15106. The format string must be compatible with the options
  15107. that can be supplied to <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.
  15108. </para>
  15109. </remarks>
  15110. </member>
  15111. <member name="M:log4net.DateFormatter.SimpleDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">
  15112. <summary>
  15113. Formats the date using <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.
  15114. </summary>
  15115. <param name="dateToFormat">The date to convert to a string.</param>
  15116. <param name="writer">The writer to write to.</param>
  15117. <remarks>
  15118. <para>
  15119. Uses the date format string supplied to the constructor to call
  15120. the <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method to format the date.
  15121. </para>
  15122. </remarks>
  15123. </member>
  15124. <member name="F:log4net.DateFormatter.SimpleDateFormatter.m_formatString">
  15125. <summary>
  15126. The format string used to format the <see cref="T:System.DateTime"/>.
  15127. </summary>
  15128. <remarks>
  15129. <para>
  15130. The format string must be compatible with the options
  15131. that can be supplied to <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.
  15132. </para>
  15133. </remarks>
  15134. </member>
  15135. <member name="T:log4net.Filter.DenyAllFilter">
  15136. <summary>
  15137. This filter drops all <see cref="T:log4net.Core.LoggingEvent"/>.
  15138. </summary>
  15139. <remarks>
  15140. <para>
  15141. You can add this filter to the end of a filter chain to
  15142. switch from the default "accept all unless instructed otherwise"
  15143. filtering behavior to a "deny all unless instructed otherwise"
  15144. behavior.
  15145. </para>
  15146. </remarks>
  15147. <author>Nicko Cadell</author>
  15148. <author>Gert Driesen</author>
  15149. </member>
  15150. <member name="T:log4net.Filter.FilterSkeleton">
  15151. <summary>
  15152. Subclass this type to implement customized logging event filtering
  15153. </summary>
  15154. <remarks>
  15155. <para>
  15156. Users should extend this class to implement customized logging
  15157. event filtering. Note that <see cref="T:log4net.Repository.Hierarchy.Logger"/> and
  15158. <see cref="T:log4net.Appender.AppenderSkeleton"/>, the parent class of all standard
  15159. appenders, have built-in filtering rules. It is suggested that you
  15160. first use and understand the built-in rules before rushing to write
  15161. your own custom filters.
  15162. </para>
  15163. <para>
  15164. This abstract class assumes and also imposes that filters be
  15165. organized in a linear chain. The <see cref="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)"/>
  15166. method of each filter is called sequentially, in the order of their
  15167. addition to the chain.
  15168. </para>
  15169. <para>
  15170. The <see cref="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)"/> method must return one
  15171. of the integer constants <see cref="F:log4net.Filter.FilterDecision.Deny"/>,
  15172. <see cref="F:log4net.Filter.FilterDecision.Neutral"/> or <see cref="F:log4net.Filter.FilterDecision.Accept"/>.
  15173. </para>
  15174. <para>
  15175. If the value <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned, then the log event is dropped
  15176. immediately without consulting with the remaining filters.
  15177. </para>
  15178. <para>
  15179. If the value <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned, then the next filter
  15180. in the chain is consulted. If there are no more filters in the
  15181. chain, then the log event is logged. Thus, in the presence of no
  15182. filters, the default behavior is to log all logging events.
  15183. </para>
  15184. <para>
  15185. If the value <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, then the log
  15186. event is logged without consulting the remaining filters.
  15187. </para>
  15188. <para>
  15189. The philosophy of log4net filters is largely inspired from the
  15190. Linux ipchains.
  15191. </para>
  15192. </remarks>
  15193. <author>Nicko Cadell</author>
  15194. <author>Gert Driesen</author>
  15195. </member>
  15196. <member name="T:log4net.Filter.IFilter">
  15197. <summary>
  15198. Implement this interface to provide customized logging event filtering
  15199. </summary>
  15200. <remarks>
  15201. <para>
  15202. Users should implement this interface to implement customized logging
  15203. event filtering. Note that <see cref="T:log4net.Repository.Hierarchy.Logger"/> and
  15204. <see cref="T:log4net.Appender.AppenderSkeleton"/>, the parent class of all standard
  15205. appenders, have built-in filtering rules. It is suggested that you
  15206. first use and understand the built-in rules before rushing to write
  15207. your own custom filters.
  15208. </para>
  15209. <para>
  15210. This abstract class assumes and also imposes that filters be
  15211. organized in a linear chain. The <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>
  15212. method of each filter is called sequentially, in the order of their
  15213. addition to the chain.
  15214. </para>
  15215. <para>
  15216. The <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/> method must return one
  15217. of the integer constants <see cref="F:log4net.Filter.FilterDecision.Deny"/>,
  15218. <see cref="F:log4net.Filter.FilterDecision.Neutral"/> or <see cref="F:log4net.Filter.FilterDecision.Accept"/>.
  15219. </para>
  15220. <para>
  15221. If the value <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned, then the log event is dropped
  15222. immediately without consulting with the remaining filters.
  15223. </para>
  15224. <para>
  15225. If the value <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned, then the next filter
  15226. in the chain is consulted. If there are no more filters in the
  15227. chain, then the log event is logged. Thus, in the presence of no
  15228. filters, the default behavior is to log all logging events.
  15229. </para>
  15230. <para>
  15231. If the value <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, then the log
  15232. event is logged without consulting the remaining filters.
  15233. </para>
  15234. <para>
  15235. The philosophy of log4net filters is largely inspired from the
  15236. Linux ipchains.
  15237. </para>
  15238. </remarks>
  15239. <author>Nicko Cadell</author>
  15240. <author>Gert Driesen</author>
  15241. </member>
  15242. <member name="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)">
  15243. <summary>
  15244. Decide if the logging event should be logged through an appender.
  15245. </summary>
  15246. <param name="loggingEvent">The LoggingEvent to decide upon</param>
  15247. <returns>The decision of the filter</returns>
  15248. <remarks>
  15249. <para>
  15250. If the decision is <see cref="F:log4net.Filter.FilterDecision.Deny"/>, then the event will be
  15251. dropped. If the decision is <see cref="F:log4net.Filter.FilterDecision.Neutral"/>, then the next
  15252. filter, if any, will be invoked. If the decision is <see cref="F:log4net.Filter.FilterDecision.Accept"/> then
  15253. the event will be logged without consulting with other filters in
  15254. the chain.
  15255. </para>
  15256. </remarks>
  15257. </member>
  15258. <member name="P:log4net.Filter.IFilter.Next">
  15259. <summary>
  15260. Property to get and set the next filter
  15261. </summary>
  15262. <value>
  15263. The next filter in the chain
  15264. </value>
  15265. <remarks>
  15266. <para>
  15267. Filters are typically composed into chains. This property allows the next filter in
  15268. the chain to be accessed.
  15269. </para>
  15270. </remarks>
  15271. </member>
  15272. <member name="F:log4net.Filter.FilterSkeleton.m_next">
  15273. <summary>
  15274. Points to the next filter in the filter chain.
  15275. </summary>
  15276. <remarks>
  15277. <para>
  15278. See <see cref="P:log4net.Filter.FilterSkeleton.Next"/> for more information.
  15279. </para>
  15280. </remarks>
  15281. </member>
  15282. <member name="M:log4net.Filter.FilterSkeleton.ActivateOptions">
  15283. <summary>
  15284. Initialize the filter with the options set
  15285. </summary>
  15286. <remarks>
  15287. <para>
  15288. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  15289. activation scheme. The <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> method must
  15290. be called on this object after the configuration properties have
  15291. been set. Until <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> is called this
  15292. object is in an undefined state and must not be used.
  15293. </para>
  15294. <para>
  15295. If any of the configuration properties are modified then
  15296. <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> must be called again.
  15297. </para>
  15298. <para>
  15299. Typically filter's options become active immediately on set,
  15300. however this method must still be called.
  15301. </para>
  15302. </remarks>
  15303. </member>
  15304. <member name="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)">
  15305. <summary>
  15306. Decide if the <see cref="T:log4net.Core.LoggingEvent"/> should be logged through an appender.
  15307. </summary>
  15308. <param name="loggingEvent">The <see cref="T:log4net.Core.LoggingEvent"/> to decide upon</param>
  15309. <returns>The decision of the filter</returns>
  15310. <remarks>
  15311. <para>
  15312. If the decision is <see cref="F:log4net.Filter.FilterDecision.Deny"/>, then the event will be
  15313. dropped. If the decision is <see cref="F:log4net.Filter.FilterDecision.Neutral"/>, then the next
  15314. filter, if any, will be invoked. If the decision is <see cref="F:log4net.Filter.FilterDecision.Accept"/> then
  15315. the event will be logged without consulting with other filters in
  15316. the chain.
  15317. </para>
  15318. <para>
  15319. This method is marked <c>abstract</c> and must be implemented
  15320. in a subclass.
  15321. </para>
  15322. </remarks>
  15323. </member>
  15324. <member name="P:log4net.Filter.FilterSkeleton.Next">
  15325. <summary>
  15326. Property to get and set the next filter
  15327. </summary>
  15328. <value>
  15329. The next filter in the chain
  15330. </value>
  15331. <remarks>
  15332. <para>
  15333. Filters are typically composed into chains. This property allows the next filter in
  15334. the chain to be accessed.
  15335. </para>
  15336. </remarks>
  15337. </member>
  15338. <member name="M:log4net.Filter.DenyAllFilter.#ctor">
  15339. <summary>
  15340. Default constructor
  15341. </summary>
  15342. </member>
  15343. <member name="M:log4net.Filter.DenyAllFilter.Decide(log4net.Core.LoggingEvent)">
  15344. <summary>
  15345. Always returns the integer constant <see cref="F:log4net.Filter.FilterDecision.Deny"/>
  15346. </summary>
  15347. <param name="loggingEvent">the LoggingEvent to filter</param>
  15348. <returns>Always returns <see cref="F:log4net.Filter.FilterDecision.Deny"/></returns>
  15349. <remarks>
  15350. <para>
  15351. Ignores the event being logged and just returns
  15352. <see cref="F:log4net.Filter.FilterDecision.Deny"/>. This can be used to change the default filter
  15353. chain behavior from <see cref="F:log4net.Filter.FilterDecision.Accept"/> to <see cref="F:log4net.Filter.FilterDecision.Deny"/>. This filter
  15354. should only be used as the last filter in the chain
  15355. as any further filters will be ignored!
  15356. </para>
  15357. </remarks>
  15358. </member>
  15359. <member name="T:log4net.Filter.FilterDecision">
  15360. <summary>
  15361. The return result from <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>
  15362. </summary>
  15363. <remarks>
  15364. <para>
  15365. The return result from <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>
  15366. </para>
  15367. </remarks>
  15368. </member>
  15369. <member name="F:log4net.Filter.FilterDecision.Deny">
  15370. <summary>
  15371. The log event must be dropped immediately without
  15372. consulting with the remaining filters, if any, in the chain.
  15373. </summary>
  15374. </member>
  15375. <member name="F:log4net.Filter.FilterDecision.Neutral">
  15376. <summary>
  15377. This filter is neutral with respect to the log event.
  15378. The remaining filters, if any, should be consulted for a final decision.
  15379. </summary>
  15380. </member>
  15381. <member name="F:log4net.Filter.FilterDecision.Accept">
  15382. <summary>
  15383. The log event must be logged immediately without
  15384. consulting with the remaining filters, if any, in the chain.
  15385. </summary>
  15386. </member>
  15387. <member name="T:log4net.Filter.LevelMatchFilter">
  15388. <summary>
  15389. This is a very simple filter based on <see cref="T:log4net.Core.Level"/> matching.
  15390. </summary>
  15391. <remarks>
  15392. <para>
  15393. The filter admits two options <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/> and
  15394. <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>. If there is an exact match between the value
  15395. of the <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/> option and the <see cref="T:log4net.Core.Level"/> of the
  15396. <see cref="T:log4net.Core.LoggingEvent"/>, then the <see cref="M:log4net.Filter.LevelMatchFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in
  15397. case the <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/> option value is set
  15398. to <c>true</c>, if it is <c>false</c> then
  15399. <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned. If the <see cref="T:log4net.Core.Level"/> does not match then
  15400. the result will be <see cref="F:log4net.Filter.FilterDecision.Neutral"/>.
  15401. </para>
  15402. </remarks>
  15403. <author>Nicko Cadell</author>
  15404. <author>Gert Driesen</author>
  15405. </member>
  15406. <member name="F:log4net.Filter.LevelMatchFilter.m_acceptOnMatch">
  15407. <summary>
  15408. flag to indicate if the filter should <see cref="F:log4net.Filter.FilterDecision.Accept"/> on a match
  15409. </summary>
  15410. </member>
  15411. <member name="F:log4net.Filter.LevelMatchFilter.m_levelToMatch">
  15412. <summary>
  15413. the <see cref="T:log4net.Core.Level"/> to match against
  15414. </summary>
  15415. </member>
  15416. <member name="M:log4net.Filter.LevelMatchFilter.#ctor">
  15417. <summary>
  15418. Default constructor
  15419. </summary>
  15420. </member>
  15421. <member name="M:log4net.Filter.LevelMatchFilter.Decide(log4net.Core.LoggingEvent)">
  15422. <summary>
  15423. Tests if the <see cref="T:log4net.Core.Level"/> of the logging event matches that of the filter
  15424. </summary>
  15425. <param name="loggingEvent">the event to filter</param>
  15426. <returns>see remarks</returns>
  15427. <remarks>
  15428. <para>
  15429. If the <see cref="T:log4net.Core.Level"/> of the event matches the level of the
  15430. filter then the result of the function depends on the
  15431. value of <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>. If it is true then
  15432. the function will return <see cref="F:log4net.Filter.FilterDecision.Accept"/>, it it is false then it
  15433. will return <see cref="F:log4net.Filter.FilterDecision.Deny"/>. If the <see cref="T:log4net.Core.Level"/> does not match then
  15434. the result will be <see cref="F:log4net.Filter.FilterDecision.Neutral"/>.
  15435. </para>
  15436. </remarks>
  15437. </member>
  15438. <member name="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch">
  15439. <summary>
  15440. <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/>
  15441. </summary>
  15442. <remarks>
  15443. <para>
  15444. The <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/> property is a flag that determines
  15445. the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the
  15446. flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the
  15447. logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Deny"/> the event.
  15448. </para>
  15449. <para>
  15450. The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.
  15451. </para>
  15452. </remarks>
  15453. </member>
  15454. <member name="P:log4net.Filter.LevelMatchFilter.LevelToMatch">
  15455. <summary>
  15456. The <see cref="T:log4net.Core.Level"/> that the filter will match
  15457. </summary>
  15458. <remarks>
  15459. <para>
  15460. The level that this filter will attempt to match against the
  15461. <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then
  15462. the result depends on the value of <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>.
  15463. </para>
  15464. </remarks>
  15465. </member>
  15466. <member name="T:log4net.Filter.LevelRangeFilter">
  15467. <summary>
  15468. This is a simple filter based on <see cref="T:log4net.Core.Level"/> matching.
  15469. </summary>
  15470. <remarks>
  15471. <para>
  15472. The filter admits three options <see cref="P:log4net.Filter.LevelRangeFilter.LevelMin"/> and <see cref="P:log4net.Filter.LevelRangeFilter.LevelMax"/>
  15473. that determine the range of priorities that are matched, and
  15474. <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>. If there is a match between the range
  15475. of priorities and the <see cref="T:log4net.Core.Level"/> of the <see cref="T:log4net.Core.LoggingEvent"/>, then the
  15476. <see cref="M:log4net.Filter.LevelRangeFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in case the <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>
  15477. option value is set to <c>true</c>, if it is <c>false</c>
  15478. then <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned. If there is no match, <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.
  15479. </para>
  15480. </remarks>
  15481. <author>Nicko Cadell</author>
  15482. <author>Gert Driesen</author>
  15483. </member>
  15484. <member name="F:log4net.Filter.LevelRangeFilter.m_acceptOnMatch">
  15485. <summary>
  15486. Flag to indicate the behavior when matching a <see cref="T:log4net.Core.Level"/>
  15487. </summary>
  15488. </member>
  15489. <member name="F:log4net.Filter.LevelRangeFilter.m_levelMin">
  15490. <summary>
  15491. the minimum <see cref="T:log4net.Core.Level"/> value to match
  15492. </summary>
  15493. </member>
  15494. <member name="F:log4net.Filter.LevelRangeFilter.m_levelMax">
  15495. <summary>
  15496. the maximum <see cref="T:log4net.Core.Level"/> value to match
  15497. </summary>
  15498. </member>
  15499. <member name="M:log4net.Filter.LevelRangeFilter.#ctor">
  15500. <summary>
  15501. Default constructor
  15502. </summary>
  15503. </member>
  15504. <member name="M:log4net.Filter.LevelRangeFilter.Decide(log4net.Core.LoggingEvent)">
  15505. <summary>
  15506. Check if the event should be logged.
  15507. </summary>
  15508. <param name="loggingEvent">the logging event to check</param>
  15509. <returns>see remarks</returns>
  15510. <remarks>
  15511. <para>
  15512. If the <see cref="T:log4net.Core.Level"/> of the logging event is outside the range
  15513. matched by this filter then <see cref="F:log4net.Filter.FilterDecision.Deny"/>
  15514. is returned. If the <see cref="T:log4net.Core.Level"/> is matched then the value of
  15515. <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/> is checked. If it is true then
  15516. <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, otherwise
  15517. <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned.
  15518. </para>
  15519. </remarks>
  15520. </member>
  15521. <member name="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch">
  15522. <summary>
  15523. <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LevelRangeFilter.LevelMin"/> and <see cref="P:log4net.Filter.LevelRangeFilter.LevelMax"/>
  15524. </summary>
  15525. <remarks>
  15526. <para>
  15527. The <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/> property is a flag that determines
  15528. the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the
  15529. flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the
  15530. logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Neutral"/> the event.
  15531. </para>
  15532. <para>
  15533. The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.
  15534. </para>
  15535. </remarks>
  15536. </member>
  15537. <member name="P:log4net.Filter.LevelRangeFilter.LevelMin">
  15538. <summary>
  15539. Set the minimum matched <see cref="T:log4net.Core.Level"/>
  15540. </summary>
  15541. <remarks>
  15542. <para>
  15543. The minimum level that this filter will attempt to match against the
  15544. <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then
  15545. the result depends on the value of <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>.
  15546. </para>
  15547. </remarks>
  15548. </member>
  15549. <member name="P:log4net.Filter.LevelRangeFilter.LevelMax">
  15550. <summary>
  15551. Sets the maximum matched <see cref="T:log4net.Core.Level"/>
  15552. </summary>
  15553. <remarks>
  15554. <para>
  15555. The maximum level that this filter will attempt to match against the
  15556. <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then
  15557. the result depends on the value of <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>.
  15558. </para>
  15559. </remarks>
  15560. </member>
  15561. <member name="T:log4net.Filter.LoggerMatchFilter">
  15562. <summary>
  15563. Simple filter to match a string in the event's logger name.
  15564. </summary>
  15565. <remarks>
  15566. <para>
  15567. The works very similar to the <see cref="T:log4net.Filter.LevelMatchFilter"/>. It admits two
  15568. options <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> and <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/>. If the
  15569. <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the <see cref="T:log4net.Core.LoggingEvent"/> starts
  15570. with the value of the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> option, then the
  15571. <see cref="M:log4net.Filter.LoggerMatchFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in
  15572. case the <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> option value is set to <c>true</c>,
  15573. if it is <c>false</c> then <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.
  15574. </para>
  15575. </remarks>
  15576. <author>Daniel Cazzulino</author>
  15577. </member>
  15578. <member name="F:log4net.Filter.LoggerMatchFilter.m_acceptOnMatch">
  15579. <summary>
  15580. Flag to indicate the behavior when we have a match
  15581. </summary>
  15582. </member>
  15583. <member name="F:log4net.Filter.LoggerMatchFilter.m_loggerToMatch">
  15584. <summary>
  15585. The logger name string to substring match against the event
  15586. </summary>
  15587. </member>
  15588. <member name="M:log4net.Filter.LoggerMatchFilter.#ctor">
  15589. <summary>
  15590. Default constructor
  15591. </summary>
  15592. </member>
  15593. <member name="M:log4net.Filter.LoggerMatchFilter.Decide(log4net.Core.LoggingEvent)">
  15594. <summary>
  15595. Check if this filter should allow the event to be logged
  15596. </summary>
  15597. <param name="loggingEvent">the event being logged</param>
  15598. <returns>see remarks</returns>
  15599. <remarks>
  15600. <para>
  15601. The rendered message is matched against the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/>.
  15602. If the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> equals the beginning of
  15603. the incoming <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> (<see cref="M:System.String.StartsWith(System.String)"/>)
  15604. then a match will have occurred. If no match occurs
  15605. this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>
  15606. allowing other filters to check the event. If a match occurs then
  15607. the value of <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> is checked. If it is
  15608. true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise
  15609. <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.
  15610. </para>
  15611. </remarks>
  15612. </member>
  15613. <member name="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch">
  15614. <summary>
  15615. <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/>
  15616. </summary>
  15617. <remarks>
  15618. <para>
  15619. The <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> property is a flag that determines
  15620. the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the
  15621. flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the
  15622. logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Deny"/> the event.
  15623. </para>
  15624. <para>
  15625. The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.
  15626. </para>
  15627. </remarks>
  15628. </member>
  15629. <member name="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch">
  15630. <summary>
  15631. The <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> that the filter will match
  15632. </summary>
  15633. <remarks>
  15634. <para>
  15635. This filter will attempt to match this value against logger name in
  15636. the following way. The match will be done against the beginning of the
  15637. logger name (using <see cref="M:System.String.StartsWith(System.String)"/>). The match is
  15638. case sensitive. If a match is found then
  15639. the result depends on the value of <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/>.
  15640. </para>
  15641. </remarks>
  15642. </member>
  15643. <member name="T:log4net.Filter.MdcFilter">
  15644. <summary>
  15645. Simple filter to match a keyed string in the <see cref="T:log4net.MDC"/>
  15646. </summary>
  15647. <remarks>
  15648. <para>
  15649. Simple filter to match a keyed string in the <see cref="T:log4net.MDC"/>
  15650. </para>
  15651. <para>
  15652. As the MDC has been replaced with layered properties the
  15653. <see cref="T:log4net.Filter.PropertyFilter"/> should be used instead.
  15654. </para>
  15655. </remarks>
  15656. <author>Nicko Cadell</author>
  15657. <author>Gert Driesen</author>
  15658. </member>
  15659. <member name="T:log4net.Filter.PropertyFilter">
  15660. <summary>
  15661. Simple filter to match a string an event property
  15662. </summary>
  15663. <remarks>
  15664. <para>
  15665. Simple filter to match a string in the value for a
  15666. specific event property
  15667. </para>
  15668. </remarks>
  15669. <author>Nicko Cadell</author>
  15670. </member>
  15671. <member name="T:log4net.Filter.StringMatchFilter">
  15672. <summary>
  15673. Simple filter to match a string in the rendered message
  15674. </summary>
  15675. <remarks>
  15676. <para>
  15677. Simple filter to match a string in the rendered message
  15678. </para>
  15679. </remarks>
  15680. <author>Nicko Cadell</author>
  15681. <author>Gert Driesen</author>
  15682. </member>
  15683. <member name="F:log4net.Filter.StringMatchFilter.m_acceptOnMatch">
  15684. <summary>
  15685. Flag to indicate the behavior when we have a match
  15686. </summary>
  15687. </member>
  15688. <member name="F:log4net.Filter.StringMatchFilter.m_stringToMatch">
  15689. <summary>
  15690. The string to substring match against the message
  15691. </summary>
  15692. </member>
  15693. <member name="F:log4net.Filter.StringMatchFilter.m_stringRegexToMatch">
  15694. <summary>
  15695. A string regex to match
  15696. </summary>
  15697. </member>
  15698. <member name="F:log4net.Filter.StringMatchFilter.m_regexToMatch">
  15699. <summary>
  15700. A regex object to match (generated from m_stringRegexToMatch)
  15701. </summary>
  15702. </member>
  15703. <member name="M:log4net.Filter.StringMatchFilter.#ctor">
  15704. <summary>
  15705. Default constructor
  15706. </summary>
  15707. </member>
  15708. <member name="M:log4net.Filter.StringMatchFilter.ActivateOptions">
  15709. <summary>
  15710. Initialize and precompile the Regex if required
  15711. </summary>
  15712. <remarks>
  15713. <para>
  15714. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  15715. activation scheme. The <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> method must
  15716. be called on this object after the configuration properties have
  15717. been set. Until <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> is called this
  15718. object is in an undefined state and must not be used.
  15719. </para>
  15720. <para>
  15721. If any of the configuration properties are modified then
  15722. <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> must be called again.
  15723. </para>
  15724. </remarks>
  15725. </member>
  15726. <member name="M:log4net.Filter.StringMatchFilter.Decide(log4net.Core.LoggingEvent)">
  15727. <summary>
  15728. Check if this filter should allow the event to be logged
  15729. </summary>
  15730. <param name="loggingEvent">the event being logged</param>
  15731. <returns>see remarks</returns>
  15732. <remarks>
  15733. <para>
  15734. The rendered message is matched against the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/>.
  15735. If the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> occurs as a substring within
  15736. the message then a match will have occurred. If no match occurs
  15737. this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>
  15738. allowing other filters to check the event. If a match occurs then
  15739. the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> is checked. If it is
  15740. true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise
  15741. <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.
  15742. </para>
  15743. </remarks>
  15744. </member>
  15745. <member name="P:log4net.Filter.StringMatchFilter.AcceptOnMatch">
  15746. <summary>
  15747. <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>
  15748. </summary>
  15749. <remarks>
  15750. <para>
  15751. The <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> property is a flag that determines
  15752. the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the
  15753. flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the
  15754. logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Neutral"/> the event.
  15755. </para>
  15756. <para>
  15757. The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.
  15758. </para>
  15759. </remarks>
  15760. </member>
  15761. <member name="P:log4net.Filter.StringMatchFilter.StringToMatch">
  15762. <summary>
  15763. Sets the static string to match
  15764. </summary>
  15765. <remarks>
  15766. <para>
  15767. The string that will be substring matched against
  15768. the rendered message. If the message contains this
  15769. string then the filter will match. If a match is found then
  15770. the result depends on the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/>.
  15771. </para>
  15772. <para>
  15773. One of <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>
  15774. must be specified.
  15775. </para>
  15776. </remarks>
  15777. </member>
  15778. <member name="P:log4net.Filter.StringMatchFilter.RegexToMatch">
  15779. <summary>
  15780. Sets the regular expression to match
  15781. </summary>
  15782. <remarks>
  15783. <para>
  15784. The regular expression pattern that will be matched against
  15785. the rendered message. If the message matches this
  15786. pattern then the filter will match. If a match is found then
  15787. the result depends on the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/>.
  15788. </para>
  15789. <para>
  15790. One of <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>
  15791. must be specified.
  15792. </para>
  15793. </remarks>
  15794. </member>
  15795. <member name="F:log4net.Filter.PropertyFilter.m_key">
  15796. <summary>
  15797. The key to use to lookup the string from the event properties
  15798. </summary>
  15799. </member>
  15800. <member name="M:log4net.Filter.PropertyFilter.#ctor">
  15801. <summary>
  15802. Default constructor
  15803. </summary>
  15804. </member>
  15805. <member name="M:log4net.Filter.PropertyFilter.Decide(log4net.Core.LoggingEvent)">
  15806. <summary>
  15807. Check if this filter should allow the event to be logged
  15808. </summary>
  15809. <param name="loggingEvent">the event being logged</param>
  15810. <returns>see remarks</returns>
  15811. <remarks>
  15812. <para>
  15813. The event property for the <see cref="P:log4net.Filter.PropertyFilter.Key"/> is matched against
  15814. the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/>.
  15815. If the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> occurs as a substring within
  15816. the property value then a match will have occurred. If no match occurs
  15817. this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>
  15818. allowing other filters to check the event. If a match occurs then
  15819. the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> is checked. If it is
  15820. true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise
  15821. <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.
  15822. </para>
  15823. </remarks>
  15824. </member>
  15825. <member name="P:log4net.Filter.PropertyFilter.Key">
  15826. <summary>
  15827. The key to lookup in the event properties and then match against.
  15828. </summary>
  15829. <remarks>
  15830. <para>
  15831. The key name to use to lookup in the properties map of the
  15832. <see cref="T:log4net.Core.LoggingEvent"/>. The match will be performed against
  15833. the value of this property if it exists.
  15834. </para>
  15835. </remarks>
  15836. </member>
  15837. <member name="T:log4net.Filter.NdcFilter">
  15838. <summary>
  15839. Simple filter to match a string in the <see cref="T:log4net.NDC"/>
  15840. </summary>
  15841. <remarks>
  15842. <para>
  15843. Simple filter to match a string in the <see cref="T:log4net.NDC"/>
  15844. </para>
  15845. <para>
  15846. As the MDC has been replaced with named stacks stored in the
  15847. properties collections the <see cref="T:log4net.Filter.PropertyFilter"/> should
  15848. be used instead.
  15849. </para>
  15850. </remarks>
  15851. <author>Nicko Cadell</author>
  15852. <author>Gert Driesen</author>
  15853. </member>
  15854. <member name="M:log4net.Filter.NdcFilter.#ctor">
  15855. <summary>
  15856. Default constructor
  15857. </summary>
  15858. <remarks>
  15859. <para>
  15860. Sets the <see cref="P:log4net.Filter.PropertyFilter.Key"/> to <c>"NDC"</c>.
  15861. </para>
  15862. </remarks>
  15863. </member>
  15864. <member name="T:log4net.Layout.Pattern.AppDomainPatternConverter">
  15865. <summary>
  15866. Write the event appdomain name to the output
  15867. </summary>
  15868. <remarks>
  15869. <para>
  15870. Writes the <see cref="P:log4net.Core.LoggingEvent.Domain"/> to the output writer.
  15871. </para>
  15872. </remarks>
  15873. <author>Daniel Cazzulino</author>
  15874. <author>Nicko Cadell</author>
  15875. </member>
  15876. <member name="T:log4net.Layout.Pattern.PatternLayoutConverter">
  15877. <summary>
  15878. Abstract class that provides the formatting functionality that
  15879. derived classes need.
  15880. </summary>
  15881. <remarks>
  15882. Conversion specifiers in a conversion patterns are parsed to
  15883. individual PatternConverters. Each of which is responsible for
  15884. converting a logging event in a converter specific manner.
  15885. </remarks>
  15886. <author>Nicko Cadell</author>
  15887. </member>
  15888. <member name="T:log4net.Util.PatternConverter">
  15889. <summary>
  15890. Abstract class that provides the formatting functionality that
  15891. derived classes need.
  15892. </summary>
  15893. <remarks>
  15894. <para>
  15895. Conversion specifiers in a conversion patterns are parsed to
  15896. individual PatternConverters. Each of which is responsible for
  15897. converting a logging event in a converter specific manner.
  15898. </para>
  15899. </remarks>
  15900. <author>Nicko Cadell</author>
  15901. <author>Gert Driesen</author>
  15902. </member>
  15903. <member name="F:log4net.Util.PatternConverter.c_renderBufferSize">
  15904. <summary>
  15905. Initial buffer size
  15906. </summary>
  15907. </member>
  15908. <member name="F:log4net.Util.PatternConverter.c_renderBufferMaxCapacity">
  15909. <summary>
  15910. Maximum buffer size before it is recycled
  15911. </summary>
  15912. </member>
  15913. <member name="M:log4net.Util.PatternConverter.#ctor">
  15914. <summary>
  15915. Protected constructor
  15916. </summary>
  15917. <remarks>
  15918. <para>
  15919. Initializes a new instance of the <see cref="T:log4net.Util.PatternConverter"/> class.
  15920. </para>
  15921. </remarks>
  15922. </member>
  15923. <member name="M:log4net.Util.PatternConverter.Convert(System.IO.TextWriter,System.Object)">
  15924. <summary>
  15925. Evaluate this pattern converter and write the output to a writer.
  15926. </summary>
  15927. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  15928. <param name="state">The state object on which the pattern converter should be executed.</param>
  15929. <remarks>
  15930. <para>
  15931. Derived pattern converters must override this method in order to
  15932. convert conversion specifiers in the appropriate way.
  15933. </para>
  15934. </remarks>
  15935. </member>
  15936. <member name="M:log4net.Util.PatternConverter.SetNext(log4net.Util.PatternConverter)">
  15937. <summary>
  15938. Set the next pattern converter in the chains
  15939. </summary>
  15940. <param name="patternConverter">the pattern converter that should follow this converter in the chain</param>
  15941. <returns>the next converter</returns>
  15942. <remarks>
  15943. <para>
  15944. The PatternConverter can merge with its neighbor during this method (or a sub class).
  15945. Therefore the return value may or may not be the value of the argument passed in.
  15946. </para>
  15947. </remarks>
  15948. </member>
  15949. <member name="M:log4net.Util.PatternConverter.Format(System.IO.TextWriter,System.Object)">
  15950. <summary>
  15951. Write the pattern converter to the writer with appropriate formatting
  15952. </summary>
  15953. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  15954. <param name="state">The state object on which the pattern converter should be executed.</param>
  15955. <remarks>
  15956. <para>
  15957. This method calls <see cref="M:log4net.Util.PatternConverter.Convert(System.IO.TextWriter,System.Object)"/> to allow the subclass to perform
  15958. appropriate conversion of the pattern converter. If formatting options have
  15959. been specified via the <see cref="P:log4net.Util.PatternConverter.FormattingInfo"/> then this method will
  15960. apply those formattings before writing the output.
  15961. </para>
  15962. </remarks>
  15963. </member>
  15964. <member name="M:log4net.Util.PatternConverter.SpacePad(System.IO.TextWriter,System.Int32)">
  15965. <summary>
  15966. Fast space padding method.
  15967. </summary>
  15968. <param name="writer"><see cref="T:System.IO.TextWriter"/> to which the spaces will be appended.</param>
  15969. <param name="length">The number of spaces to be padded.</param>
  15970. <remarks>
  15971. <para>
  15972. Fast space padding method.
  15973. </para>
  15974. </remarks>
  15975. </member>
  15976. <member name="F:log4net.Util.PatternConverter.m_option">
  15977. <summary>
  15978. The option string to the converter
  15979. </summary>
  15980. </member>
  15981. <member name="M:log4net.Util.PatternConverter.WriteDictionary(System.IO.TextWriter,log4net.Repository.ILoggerRepository,System.Collections.IDictionary)">
  15982. <summary>
  15983. Write an dictionary to a <see cref="T:System.IO.TextWriter"/>
  15984. </summary>
  15985. <param name="writer">the writer to write to</param>
  15986. <param name="repository">a <see cref="T:log4net.Repository.ILoggerRepository"/> to use for object conversion</param>
  15987. <param name="value">the value to write to the writer</param>
  15988. <remarks>
  15989. <para>
  15990. Writes the <see cref="T:System.Collections.IDictionary"/> to a writer in the form:
  15991. </para>
  15992. <code>
  15993. {key1=value1, key2=value2, key3=value3}
  15994. </code>
  15995. <para>
  15996. If the <see cref="T:log4net.Repository.ILoggerRepository"/> specified
  15997. is not null then it is used to render the key and value to text, otherwise
  15998. the object's ToString method is called.
  15999. </para>
  16000. </remarks>
  16001. </member>
  16002. <member name="M:log4net.Util.PatternConverter.WriteObject(System.IO.TextWriter,log4net.Repository.ILoggerRepository,System.Object)">
  16003. <summary>
  16004. Write an object to a <see cref="T:System.IO.TextWriter"/>
  16005. </summary>
  16006. <param name="writer">the writer to write to</param>
  16007. <param name="repository">a <see cref="T:log4net.Repository.ILoggerRepository"/> to use for object conversion</param>
  16008. <param name="value">the value to write to the writer</param>
  16009. <remarks>
  16010. <para>
  16011. Writes the Object to a writer. If the <see cref="T:log4net.Repository.ILoggerRepository"/> specified
  16012. is not null then it is used to render the object to text, otherwise
  16013. the object's ToString method is called.
  16014. </para>
  16015. </remarks>
  16016. </member>
  16017. <member name="P:log4net.Util.PatternConverter.Next">
  16018. <summary>
  16019. Get the next pattern converter in the chain
  16020. </summary>
  16021. <value>
  16022. the next pattern converter in the chain
  16023. </value>
  16024. <remarks>
  16025. <para>
  16026. Get the next pattern converter in the chain
  16027. </para>
  16028. </remarks>
  16029. </member>
  16030. <member name="P:log4net.Util.PatternConverter.FormattingInfo">
  16031. <summary>
  16032. Gets or sets the formatting info for this converter
  16033. </summary>
  16034. <value>
  16035. The formatting info for this converter
  16036. </value>
  16037. <remarks>
  16038. <para>
  16039. Gets or sets the formatting info for this converter
  16040. </para>
  16041. </remarks>
  16042. </member>
  16043. <member name="P:log4net.Util.PatternConverter.Option">
  16044. <summary>
  16045. Gets or sets the option value for this converter
  16046. </summary>
  16047. <summary>
  16048. The option for this converter
  16049. </summary>
  16050. <remarks>
  16051. <para>
  16052. Gets or sets the option value for this converter
  16053. </para>
  16054. </remarks>
  16055. </member>
  16056. <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.#ctor">
  16057. <summary>
  16058. Initializes a new instance of the <see cref="T:log4net.Layout.Pattern.PatternLayoutConverter"/> class.
  16059. </summary>
  16060. </member>
  16061. <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16062. <summary>
  16063. Derived pattern converters must override this method in order to
  16064. convert conversion specifiers in the correct way.
  16065. </summary>
  16066. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16067. <param name="loggingEvent">The <see cref="T:log4net.Core.LoggingEvent"/> on which the pattern converter should be executed.</param>
  16068. </member>
  16069. <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.Convert(System.IO.TextWriter,System.Object)">
  16070. <summary>
  16071. Derived pattern converters must override this method in order to
  16072. convert conversion specifiers in the correct way.
  16073. </summary>
  16074. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16075. <param name="state">The state object on which the pattern converter should be executed.</param>
  16076. </member>
  16077. <member name="F:log4net.Layout.Pattern.PatternLayoutConverter.m_ignoresException">
  16078. <summary>
  16079. Flag indicating if this converter handles exceptions
  16080. </summary>
  16081. <remarks>
  16082. <c>false</c> if this converter handles exceptions
  16083. </remarks>
  16084. </member>
  16085. <member name="P:log4net.Layout.Pattern.PatternLayoutConverter.IgnoresException">
  16086. <summary>
  16087. Flag indicating if this converter handles the logging event exception
  16088. </summary>
  16089. <value><c>false</c> if this converter handles the logging event exception</value>
  16090. <remarks>
  16091. <para>
  16092. If this converter handles the exception object contained within
  16093. <see cref="T:log4net.Core.LoggingEvent"/>, then this property should be set to
  16094. <c>false</c>. Otherwise, if the layout ignores the exception
  16095. object, then the property should be set to <c>true</c>.
  16096. </para>
  16097. <para>
  16098. Set this value to override a this default setting. The default
  16099. value is <c>true</c>, this converter does not handle the exception.
  16100. </para>
  16101. </remarks>
  16102. </member>
  16103. <member name="M:log4net.Layout.Pattern.AppDomainPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16104. <summary>
  16105. Write the event appdomain name to the output
  16106. </summary>
  16107. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16108. <param name="loggingEvent">the event being logged</param>
  16109. <remarks>
  16110. <para>
  16111. Writes the <see cref="P:log4net.Core.LoggingEvent.Domain"/> to the output <paramref name="writer"/>.
  16112. </para>
  16113. </remarks>
  16114. </member>
  16115. <member name="T:log4net.Layout.Pattern.DatePatternConverter">
  16116. <summary>
  16117. Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format
  16118. the date of a <see cref="T:log4net.Core.LoggingEvent"/>.
  16119. </summary>
  16120. <remarks>
  16121. <para>
  16122. Render the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the writer as a string.
  16123. </para>
  16124. <para>
  16125. The value of the <see cref="P:log4net.Util.PatternConverter.Option"/> determines
  16126. the formatting of the date. The following values are allowed:
  16127. <list type="definition">
  16128. <listheader>
  16129. <term>Option value</term>
  16130. <description>Output</description>
  16131. </listheader>
  16132. <item>
  16133. <term>ISO8601</term>
  16134. <description>
  16135. Uses the <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/> formatter.
  16136. Formats using the <c>"yyyy-MM-dd HH:mm:ss,fff"</c> pattern.
  16137. </description>
  16138. </item>
  16139. <item>
  16140. <term>DATE</term>
  16141. <description>
  16142. Uses the <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> formatter.
  16143. Formats using the <c>"dd MMM yyyy HH:mm:ss,fff"</c> for example, <c>"06 Nov 1994 15:49:37,459"</c>.
  16144. </description>
  16145. </item>
  16146. <item>
  16147. <term>ABSOLUTE</term>
  16148. <description>
  16149. Uses the <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/> formatter.
  16150. Formats using the <c>"HH:mm:ss,yyyy"</c> for example, <c>"15:49:37,459"</c>.
  16151. </description>
  16152. </item>
  16153. <item>
  16154. <term>other</term>
  16155. <description>
  16156. Any other pattern string uses the <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/> formatter.
  16157. This formatter passes the pattern string to the <see cref="T:System.DateTime"/>
  16158. <see cref="M:System.DateTime.ToString(System.String)"/> method.
  16159. For details on valid patterns see
  16160. <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemglobalizationdatetimeformatinfoclasstopic.asp">DateTimeFormatInfo Class</a>.
  16161. </description>
  16162. </item>
  16163. </list>
  16164. </para>
  16165. <para>
  16166. The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> is in the local time zone and is rendered in that zone.
  16167. To output the time in Universal time see <see cref="T:log4net.Layout.Pattern.UtcDatePatternConverter"/>.
  16168. </para>
  16169. </remarks>
  16170. <author>Nicko Cadell</author>
  16171. </member>
  16172. <member name="F:log4net.Layout.Pattern.DatePatternConverter.m_dateFormatter">
  16173. <summary>
  16174. The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string
  16175. </summary>
  16176. <remarks>
  16177. <para>
  16178. The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string
  16179. </para>
  16180. </remarks>
  16181. </member>
  16182. <member name="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions">
  16183. <summary>
  16184. Initialize the converter pattern based on the <see cref="P:log4net.Util.PatternConverter.Option"/> property.
  16185. </summary>
  16186. <remarks>
  16187. <para>
  16188. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  16189. activation scheme. The <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> method must
  16190. be called on this object after the configuration properties have
  16191. been set. Until <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> is called this
  16192. object is in an undefined state and must not be used.
  16193. </para>
  16194. <para>
  16195. If any of the configuration properties are modified then
  16196. <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> must be called again.
  16197. </para>
  16198. </remarks>
  16199. </member>
  16200. <member name="M:log4net.Layout.Pattern.DatePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16201. <summary>
  16202. Convert the pattern into the rendered message
  16203. </summary>
  16204. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16205. <param name="loggingEvent">the event being logged</param>
  16206. <remarks>
  16207. <para>
  16208. Pass the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>
  16209. for it to render it to the writer.
  16210. </para>
  16211. <para>
  16212. The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> passed is in the local time zone.
  16213. </para>
  16214. </remarks>
  16215. </member>
  16216. <member name="T:log4net.Layout.Pattern.ExceptionPatternConverter">
  16217. <summary>
  16218. Write the exception text to the output
  16219. </summary>
  16220. <remarks>
  16221. <para>
  16222. If an exception object is stored in the logging event
  16223. it will be rendered into the pattern output with a
  16224. trailing newline.
  16225. </para>
  16226. <para>
  16227. If there is no exception then nothing will be output
  16228. and no trailing newline will be appended.
  16229. It is typical to put a newline before the exception
  16230. and to have the exception as the last data in the pattern.
  16231. </para>
  16232. </remarks>
  16233. <author>Nicko Cadell</author>
  16234. </member>
  16235. <member name="M:log4net.Layout.Pattern.ExceptionPatternConverter.#ctor">
  16236. <summary>
  16237. Default constructor
  16238. </summary>
  16239. </member>
  16240. <member name="M:log4net.Layout.Pattern.ExceptionPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16241. <summary>
  16242. Write the exception text to the output
  16243. </summary>
  16244. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16245. <param name="loggingEvent">the event being logged</param>
  16246. <remarks>
  16247. <para>
  16248. If an exception object is stored in the logging event
  16249. it will be rendered into the pattern output with a
  16250. trailing newline.
  16251. </para>
  16252. <para>
  16253. If there is no exception then nothing will be output
  16254. and no trailing newline will be appended.
  16255. It is typical to put a newline before the exception
  16256. and to have the exception as the last data in the pattern.
  16257. </para>
  16258. </remarks>
  16259. </member>
  16260. <member name="T:log4net.Layout.Pattern.FileLocationPatternConverter">
  16261. <summary>
  16262. Writes the caller location file name to the output
  16263. </summary>
  16264. <remarks>
  16265. <para>
  16266. Writes the value of the <see cref="P:log4net.Core.LocationInfo.FileName"/> for
  16267. the event to the output writer.
  16268. </para>
  16269. </remarks>
  16270. <author>Nicko Cadell</author>
  16271. </member>
  16272. <member name="M:log4net.Layout.Pattern.FileLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16273. <summary>
  16274. Write the caller location file name to the output
  16275. </summary>
  16276. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16277. <param name="loggingEvent">the event being logged</param>
  16278. <remarks>
  16279. <para>
  16280. Writes the value of the <see cref="P:log4net.Core.LocationInfo.FileName"/> for
  16281. the <paramref name="loggingEvent"/> to the output <paramref name="writer"/>.
  16282. </para>
  16283. </remarks>
  16284. </member>
  16285. <member name="T:log4net.Layout.Pattern.FullLocationPatternConverter">
  16286. <summary>
  16287. Write the caller location info to the output
  16288. </summary>
  16289. <remarks>
  16290. <para>
  16291. Writes the <see cref="P:log4net.Core.LocationInfo.FullInfo"/> to the output writer.
  16292. </para>
  16293. </remarks>
  16294. <author>Nicko Cadell</author>
  16295. </member>
  16296. <member name="M:log4net.Layout.Pattern.FullLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16297. <summary>
  16298. Write the caller location info to the output
  16299. </summary>
  16300. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16301. <param name="loggingEvent">the event being logged</param>
  16302. <remarks>
  16303. <para>
  16304. Writes the <see cref="P:log4net.Core.LocationInfo.FullInfo"/> to the output writer.
  16305. </para>
  16306. </remarks>
  16307. </member>
  16308. <member name="T:log4net.Layout.Pattern.IdentityPatternConverter">
  16309. <summary>
  16310. Writes the event identity to the output
  16311. </summary>
  16312. <remarks>
  16313. <para>
  16314. Writes the value of the <see cref="P:log4net.Core.LoggingEvent.Identity"/> to
  16315. the output writer.
  16316. </para>
  16317. </remarks>
  16318. <author>Daniel Cazzulino</author>
  16319. <author>Nicko Cadell</author>
  16320. </member>
  16321. <member name="M:log4net.Layout.Pattern.IdentityPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16322. <summary>
  16323. Writes the event identity to the output
  16324. </summary>
  16325. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16326. <param name="loggingEvent">the event being logged</param>
  16327. <remarks>
  16328. <para>
  16329. Writes the value of the <paramref name="loggingEvent"/>
  16330. <see cref="P:log4net.Core.LoggingEvent.Identity"/> to
  16331. the output <paramref name="writer"/>.
  16332. </para>
  16333. </remarks>
  16334. </member>
  16335. <member name="T:log4net.Layout.Pattern.LevelPatternConverter">
  16336. <summary>
  16337. Write the event level to the output
  16338. </summary>
  16339. <remarks>
  16340. <para>
  16341. Writes the display name of the event <see cref="P:log4net.Core.LoggingEvent.Level"/>
  16342. to the writer.
  16343. </para>
  16344. </remarks>
  16345. <author>Nicko Cadell</author>
  16346. </member>
  16347. <member name="M:log4net.Layout.Pattern.LevelPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16348. <summary>
  16349. Write the event level to the output
  16350. </summary>
  16351. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16352. <param name="loggingEvent">the event being logged</param>
  16353. <remarks>
  16354. <para>
  16355. Writes the <see cref="P:log4net.Core.Level.DisplayName"/> of the <paramref name="loggingEvent"/> <see cref="P:log4net.Core.LoggingEvent.Level"/>
  16356. to the <paramref name="writer"/>.
  16357. </para>
  16358. </remarks>
  16359. </member>
  16360. <member name="T:log4net.Layout.Pattern.LineLocationPatternConverter">
  16361. <summary>
  16362. Write the caller location line number to the output
  16363. </summary>
  16364. <remarks>
  16365. <para>
  16366. Writes the value of the <see cref="P:log4net.Core.LocationInfo.LineNumber"/> for
  16367. the event to the output writer.
  16368. </para>
  16369. </remarks>
  16370. <author>Nicko Cadell</author>
  16371. </member>
  16372. <member name="M:log4net.Layout.Pattern.LineLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16373. <summary>
  16374. Write the caller location line number to the output
  16375. </summary>
  16376. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16377. <param name="loggingEvent">the event being logged</param>
  16378. <remarks>
  16379. <para>
  16380. Writes the value of the <see cref="P:log4net.Core.LocationInfo.LineNumber"/> for
  16381. the <paramref name="loggingEvent"/> to the output <paramref name="writer"/>.
  16382. </para>
  16383. </remarks>
  16384. </member>
  16385. <member name="T:log4net.Layout.Pattern.LoggerPatternConverter">
  16386. <summary>
  16387. Converter for logger name
  16388. </summary>
  16389. <remarks>
  16390. <para>
  16391. Outputs the <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the event.
  16392. </para>
  16393. </remarks>
  16394. <author>Nicko Cadell</author>
  16395. </member>
  16396. <member name="T:log4net.Layout.Pattern.NamedPatternConverter">
  16397. <summary>
  16398. Converter to output and truncate <c>'.'</c> separated strings
  16399. </summary>
  16400. <remarks>
  16401. <para>
  16402. This abstract class supports truncating a <c>'.'</c> separated string
  16403. to show a specified number of elements from the right hand side.
  16404. This is used to truncate class names that are fully qualified.
  16405. </para>
  16406. <para>
  16407. Subclasses should override the <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)"/> method to
  16408. return the fully qualified string.
  16409. </para>
  16410. </remarks>
  16411. <author>Nicko Cadell</author>
  16412. </member>
  16413. <member name="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions">
  16414. <summary>
  16415. Initialize the converter
  16416. </summary>
  16417. <remarks>
  16418. <para>
  16419. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  16420. activation scheme. The <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> method must
  16421. be called on this object after the configuration properties have
  16422. been set. Until <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> is called this
  16423. object is in an undefined state and must not be used.
  16424. </para>
  16425. <para>
  16426. If any of the configuration properties are modified then
  16427. <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> must be called again.
  16428. </para>
  16429. </remarks>
  16430. </member>
  16431. <member name="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">
  16432. <summary>
  16433. Get the fully qualified string data
  16434. </summary>
  16435. <param name="loggingEvent">the event being logged</param>
  16436. <returns>the fully qualified name</returns>
  16437. <remarks>
  16438. <para>
  16439. Overridden by subclasses to get the fully qualified name before the
  16440. precision is applied to it.
  16441. </para>
  16442. <para>
  16443. Return the fully qualified <c>'.'</c> (dot/period) separated string.
  16444. </para>
  16445. </remarks>
  16446. </member>
  16447. <member name="M:log4net.Layout.Pattern.NamedPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16448. <summary>
  16449. Convert the pattern to the rendered message
  16450. </summary>
  16451. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16452. <param name="loggingEvent">the event being logged</param>
  16453. <remarks>
  16454. Render the <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)"/> to the precision
  16455. specified by the <see cref="P:log4net.Util.PatternConverter.Option"/> property.
  16456. </remarks>
  16457. </member>
  16458. <member name="M:log4net.Layout.Pattern.LoggerPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">
  16459. <summary>
  16460. Gets the fully qualified name of the logger
  16461. </summary>
  16462. <param name="loggingEvent">the event being logged</param>
  16463. <returns>The fully qualified logger name</returns>
  16464. <remarks>
  16465. <para>
  16466. Returns the <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the <paramref name="loggingEvent"/>.
  16467. </para>
  16468. </remarks>
  16469. </member>
  16470. <member name="T:log4net.Layout.Pattern.MessagePatternConverter">
  16471. <summary>
  16472. Writes the event message to the output
  16473. </summary>
  16474. <remarks>
  16475. <para>
  16476. Uses the <see cref="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)"/> method
  16477. to write out the event message.
  16478. </para>
  16479. </remarks>
  16480. <author>Nicko Cadell</author>
  16481. </member>
  16482. <member name="M:log4net.Layout.Pattern.MessagePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16483. <summary>
  16484. Writes the event message to the output
  16485. </summary>
  16486. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16487. <param name="loggingEvent">the event being logged</param>
  16488. <remarks>
  16489. <para>
  16490. Uses the <see cref="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)"/> method
  16491. to write out the event message.
  16492. </para>
  16493. </remarks>
  16494. </member>
  16495. <member name="T:log4net.Layout.Pattern.MethodLocationPatternConverter">
  16496. <summary>
  16497. Write the method name to the output
  16498. </summary>
  16499. <remarks>
  16500. <para>
  16501. Writes the caller location <see cref="P:log4net.Core.LocationInfo.MethodName"/> to
  16502. the output.
  16503. </para>
  16504. </remarks>
  16505. <author>Nicko Cadell</author>
  16506. </member>
  16507. <member name="M:log4net.Layout.Pattern.MethodLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16508. <summary>
  16509. Write the method name to the output
  16510. </summary>
  16511. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16512. <param name="loggingEvent">the event being logged</param>
  16513. <remarks>
  16514. <para>
  16515. Writes the caller location <see cref="P:log4net.Core.LocationInfo.MethodName"/> to
  16516. the output.
  16517. </para>
  16518. </remarks>
  16519. </member>
  16520. <member name="T:log4net.Layout.Pattern.NdcPatternConverter">
  16521. <summary>
  16522. Converter to include event NDC
  16523. </summary>
  16524. <remarks>
  16525. <para>
  16526. Outputs the value of the event property named <c>NDC</c>.
  16527. </para>
  16528. <para>
  16529. The <see cref="T:log4net.Layout.Pattern.PropertyPatternConverter"/> should be used instead.
  16530. </para>
  16531. </remarks>
  16532. <author>Nicko Cadell</author>
  16533. </member>
  16534. <member name="M:log4net.Layout.Pattern.NdcPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16535. <summary>
  16536. Write the event NDC to the output
  16537. </summary>
  16538. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16539. <param name="loggingEvent">the event being logged</param>
  16540. <remarks>
  16541. <para>
  16542. As the thread context stacks are now stored in named event properties
  16543. this converter simply looks up the value of the <c>NDC</c> property.
  16544. </para>
  16545. <para>
  16546. The <see cref="T:log4net.Layout.Pattern.PropertyPatternConverter"/> should be used instead.
  16547. </para>
  16548. </remarks>
  16549. </member>
  16550. <member name="T:log4net.Layout.Pattern.PropertyPatternConverter">
  16551. <summary>
  16552. Property pattern converter
  16553. </summary>
  16554. <remarks>
  16555. <para>
  16556. Writes out the value of a named property. The property name
  16557. should be set in the <see cref="P:log4net.Util.PatternConverter.Option"/>
  16558. property.
  16559. </para>
  16560. <para>
  16561. If the <see cref="P:log4net.Util.PatternConverter.Option"/> is set to <c>null</c>
  16562. then all the properties are written as key value pairs.
  16563. </para>
  16564. </remarks>
  16565. <author>Nicko Cadell</author>
  16566. </member>
  16567. <member name="M:log4net.Layout.Pattern.PropertyPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16568. <summary>
  16569. Write the property value to the output
  16570. </summary>
  16571. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16572. <param name="loggingEvent">the event being logged</param>
  16573. <remarks>
  16574. <para>
  16575. Writes out the value of a named property. The property name
  16576. should be set in the <see cref="P:log4net.Util.PatternConverter.Option"/>
  16577. property.
  16578. </para>
  16579. <para>
  16580. If the <see cref="P:log4net.Util.PatternConverter.Option"/> is set to <c>null</c>
  16581. then all the properties are written as key value pairs.
  16582. </para>
  16583. </remarks>
  16584. </member>
  16585. <member name="T:log4net.Layout.Pattern.RelativeTimePatternConverter">
  16586. <summary>
  16587. Converter to output the relative time of the event
  16588. </summary>
  16589. <remarks>
  16590. <para>
  16591. Converter to output the time of the event relative to the start of the program.
  16592. </para>
  16593. </remarks>
  16594. <author>Nicko Cadell</author>
  16595. </member>
  16596. <member name="M:log4net.Layout.Pattern.RelativeTimePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16597. <summary>
  16598. Write the relative time to the output
  16599. </summary>
  16600. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16601. <param name="loggingEvent">the event being logged</param>
  16602. <remarks>
  16603. <para>
  16604. Writes out the relative time of the event in milliseconds.
  16605. That is the number of milliseconds between the event <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/>
  16606. and the <see cref="P:log4net.Core.LoggingEvent.StartTime"/>.
  16607. </para>
  16608. </remarks>
  16609. </member>
  16610. <member name="M:log4net.Layout.Pattern.RelativeTimePatternConverter.TimeDifferenceInMillis(System.DateTime,System.DateTime)">
  16611. <summary>
  16612. Helper method to get the time difference between two DateTime objects
  16613. </summary>
  16614. <param name="start">start time (in the current local time zone)</param>
  16615. <param name="end">end time (in the current local time zone)</param>
  16616. <returns>the time difference in milliseconds</returns>
  16617. </member>
  16618. <member name="T:log4net.Layout.Pattern.ThreadPatternConverter">
  16619. <summary>
  16620. Converter to include event thread name
  16621. </summary>
  16622. <remarks>
  16623. <para>
  16624. Writes the <see cref="P:log4net.Core.LoggingEvent.ThreadName"/> to the output.
  16625. </para>
  16626. </remarks>
  16627. <author>Nicko Cadell</author>
  16628. </member>
  16629. <member name="M:log4net.Layout.Pattern.ThreadPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16630. <summary>
  16631. Write the ThreadName to the output
  16632. </summary>
  16633. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16634. <param name="loggingEvent">the event being logged</param>
  16635. <remarks>
  16636. <para>
  16637. Writes the <see cref="P:log4net.Core.LoggingEvent.ThreadName"/> to the <paramref name="writer"/>.
  16638. </para>
  16639. </remarks>
  16640. </member>
  16641. <member name="T:log4net.Layout.Pattern.TypeNamePatternConverter">
  16642. <summary>
  16643. Pattern converter for the class name
  16644. </summary>
  16645. <remarks>
  16646. <para>
  16647. Outputs the <see cref="P:log4net.Core.LocationInfo.ClassName"/> of the event.
  16648. </para>
  16649. </remarks>
  16650. <author>Nicko Cadell</author>
  16651. </member>
  16652. <member name="M:log4net.Layout.Pattern.TypeNamePatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">
  16653. <summary>
  16654. Gets the fully qualified name of the class
  16655. </summary>
  16656. <param name="loggingEvent">the event being logged</param>
  16657. <returns>The fully qualified type name for the caller location</returns>
  16658. <remarks>
  16659. <para>
  16660. Returns the <see cref="P:log4net.Core.LocationInfo.ClassName"/> of the <paramref name="loggingEvent"/>.
  16661. </para>
  16662. </remarks>
  16663. </member>
  16664. <member name="T:log4net.Layout.Pattern.UserNamePatternConverter">
  16665. <summary>
  16666. Converter to include event user name
  16667. </summary>
  16668. <author>Douglas de la Torre</author>
  16669. <author>Nicko Cadell</author>
  16670. </member>
  16671. <member name="M:log4net.Layout.Pattern.UserNamePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16672. <summary>
  16673. Convert the pattern to the rendered message
  16674. </summary>
  16675. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16676. <param name="loggingEvent">the event being logged</param>
  16677. </member>
  16678. <member name="T:log4net.Layout.Pattern.UtcDatePatternConverter">
  16679. <summary>
  16680. Write the TimeStamp to the output
  16681. </summary>
  16682. <remarks>
  16683. <para>
  16684. Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format
  16685. the date of a <see cref="T:log4net.Core.LoggingEvent"/>.
  16686. </para>
  16687. <para>
  16688. Uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/>
  16689. in Universal time.
  16690. </para>
  16691. <para>
  16692. See the <see cref="T:log4net.Layout.Pattern.DatePatternConverter"/> for details on the date pattern syntax.
  16693. </para>
  16694. </remarks>
  16695. <seealso cref="T:log4net.Layout.Pattern.DatePatternConverter"/>
  16696. <author>Nicko Cadell</author>
  16697. </member>
  16698. <member name="M:log4net.Layout.Pattern.UtcDatePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16699. <summary>
  16700. Write the TimeStamp to the output
  16701. </summary>
  16702. <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>
  16703. <param name="loggingEvent">the event being logged</param>
  16704. <remarks>
  16705. <para>
  16706. Pass the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>
  16707. for it to render it to the writer.
  16708. </para>
  16709. <para>
  16710. The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> passed is in the local time zone, this is converted
  16711. to Universal time before it is rendered.
  16712. </para>
  16713. </remarks>
  16714. <seealso cref="T:log4net.Layout.Pattern.DatePatternConverter"/>
  16715. </member>
  16716. <member name="T:log4net.Layout.ExceptionLayout">
  16717. <summary>
  16718. A Layout that renders only the Exception text from the logging event
  16719. </summary>
  16720. <remarks>
  16721. <para>
  16722. A Layout that renders only the Exception text from the logging event.
  16723. </para>
  16724. <para>
  16725. This Layout should only be used with appenders that utilize multiple
  16726. layouts (e.g. <see cref="T:log4net.Appender.AdoNetAppender"/>).
  16727. </para>
  16728. </remarks>
  16729. <author>Nicko Cadell</author>
  16730. <author>Gert Driesen</author>
  16731. </member>
  16732. <member name="T:log4net.Layout.LayoutSkeleton">
  16733. <summary>
  16734. Extend this abstract class to create your own log layout format.
  16735. </summary>
  16736. <remarks>
  16737. <para>
  16738. This is the base implementation of the <see cref="T:log4net.Layout.ILayout"/>
  16739. interface. Most layout objects should extend this class.
  16740. </para>
  16741. </remarks>
  16742. <remarks>
  16743. <note type="inheritinfo">
  16744. <para>
  16745. Subclasses must implement the <see cref="M:log4net.Layout.LayoutSkeleton.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/>
  16746. method.
  16747. </para>
  16748. <para>
  16749. Subclasses should set the <see cref="P:log4net.Layout.LayoutSkeleton.IgnoresException"/> in their default
  16750. constructor.
  16751. </para>
  16752. </note>
  16753. </remarks>
  16754. <author>Nicko Cadell</author>
  16755. <author>Gert Driesen</author>
  16756. </member>
  16757. <member name="T:log4net.Layout.ILayout">
  16758. <summary>
  16759. Interface implemented by layout objects
  16760. </summary>
  16761. <remarks>
  16762. <para>
  16763. An <see cref="T:log4net.Layout.ILayout"/> object is used to format a <see cref="T:log4net.Core.LoggingEvent"/>
  16764. as text. The <see cref="M:log4net.Layout.ILayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/> method is called by an
  16765. appender to transform the <see cref="T:log4net.Core.LoggingEvent"/> into a string.
  16766. </para>
  16767. <para>
  16768. The layout can also supply <see cref="P:log4net.Layout.ILayout.Header"/> and <see cref="P:log4net.Layout.ILayout.Footer"/>
  16769. text that is appender before any events and after all the events respectively.
  16770. </para>
  16771. </remarks>
  16772. <author>Nicko Cadell</author>
  16773. <author>Gert Driesen</author>
  16774. </member>
  16775. <member name="M:log4net.Layout.ILayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16776. <summary>
  16777. Implement this method to create your own layout format.
  16778. </summary>
  16779. <param name="writer">The TextWriter to write the formatted event to</param>
  16780. <param name="loggingEvent">The event to format</param>
  16781. <remarks>
  16782. <para>
  16783. This method is called by an appender to format
  16784. the <paramref name="loggingEvent"/> as text and output to a writer.
  16785. </para>
  16786. <para>
  16787. If the caller does not have a <see cref="T:System.IO.TextWriter"/> and prefers the
  16788. event to be formatted as a <see cref="T:System.String"/> then the following
  16789. code can be used to format the event into a <see cref="T:System.IO.StringWriter"/>.
  16790. </para>
  16791. <code lang="C#">
  16792. StringWriter writer = new StringWriter();
  16793. Layout.Format(writer, loggingEvent);
  16794. string formattedEvent = writer.ToString();
  16795. </code>
  16796. </remarks>
  16797. </member>
  16798. <member name="P:log4net.Layout.ILayout.ContentType">
  16799. <summary>
  16800. The content type output by this layout.
  16801. </summary>
  16802. <value>The content type</value>
  16803. <remarks>
  16804. <para>
  16805. The content type output by this layout.
  16806. </para>
  16807. <para>
  16808. This is a MIME type e.g. <c>"text/plain"</c>.
  16809. </para>
  16810. </remarks>
  16811. </member>
  16812. <member name="P:log4net.Layout.ILayout.Header">
  16813. <summary>
  16814. The header for the layout format.
  16815. </summary>
  16816. <value>the layout header</value>
  16817. <remarks>
  16818. <para>
  16819. The Header text will be appended before any logging events
  16820. are formatted and appended.
  16821. </para>
  16822. </remarks>
  16823. </member>
  16824. <member name="P:log4net.Layout.ILayout.Footer">
  16825. <summary>
  16826. The footer for the layout format.
  16827. </summary>
  16828. <value>the layout footer</value>
  16829. <remarks>
  16830. <para>
  16831. The Footer text will be appended after all the logging events
  16832. have been formatted and appended.
  16833. </para>
  16834. </remarks>
  16835. </member>
  16836. <member name="P:log4net.Layout.ILayout.IgnoresException">
  16837. <summary>
  16838. Flag indicating if this layout handle exceptions
  16839. </summary>
  16840. <value><c>false</c> if this layout handles exceptions</value>
  16841. <remarks>
  16842. <para>
  16843. If this layout handles the exception object contained within
  16844. <see cref="T:log4net.Core.LoggingEvent"/>, then the layout should return
  16845. <c>false</c>. Otherwise, if the layout ignores the exception
  16846. object, then the layout should return <c>true</c>.
  16847. </para>
  16848. </remarks>
  16849. </member>
  16850. <member name="F:log4net.Layout.LayoutSkeleton.m_header">
  16851. <summary>
  16852. The header text
  16853. </summary>
  16854. <remarks>
  16855. <para>
  16856. See <see cref="P:log4net.Layout.LayoutSkeleton.Header"/> for more information.
  16857. </para>
  16858. </remarks>
  16859. </member>
  16860. <member name="F:log4net.Layout.LayoutSkeleton.m_footer">
  16861. <summary>
  16862. The footer text
  16863. </summary>
  16864. <remarks>
  16865. <para>
  16866. See <see cref="P:log4net.Layout.LayoutSkeleton.Footer"/> for more information.
  16867. </para>
  16868. </remarks>
  16869. </member>
  16870. <member name="F:log4net.Layout.LayoutSkeleton.m_ignoresException">
  16871. <summary>
  16872. Flag indicating if this layout handles exceptions
  16873. </summary>
  16874. <remarks>
  16875. <para>
  16876. <c>false</c> if this layout handles exceptions
  16877. </para>
  16878. </remarks>
  16879. </member>
  16880. <member name="M:log4net.Layout.LayoutSkeleton.#ctor">
  16881. <summary>
  16882. Empty default constructor
  16883. </summary>
  16884. <remarks>
  16885. <para>
  16886. Empty default constructor
  16887. </para>
  16888. </remarks>
  16889. </member>
  16890. <member name="M:log4net.Layout.LayoutSkeleton.ActivateOptions">
  16891. <summary>
  16892. Activate component options
  16893. </summary>
  16894. <remarks>
  16895. <para>
  16896. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  16897. activation scheme. The <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> method must
  16898. be called on this object after the configuration properties have
  16899. been set. Until <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> is called this
  16900. object is in an undefined state and must not be used.
  16901. </para>
  16902. <para>
  16903. If any of the configuration properties are modified then
  16904. <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> must be called again.
  16905. </para>
  16906. <para>
  16907. This method must be implemented by the subclass.
  16908. </para>
  16909. </remarks>
  16910. </member>
  16911. <member name="M:log4net.Layout.LayoutSkeleton.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  16912. <summary>
  16913. Implement this method to create your own layout format.
  16914. </summary>
  16915. <param name="writer">The TextWriter to write the formatted event to</param>
  16916. <param name="loggingEvent">The event to format</param>
  16917. <remarks>
  16918. <para>
  16919. This method is called by an appender to format
  16920. the <paramref name="loggingEvent"/> as text.
  16921. </para>
  16922. </remarks>
  16923. </member>
  16924. <member name="P:log4net.Layout.LayoutSkeleton.ContentType">
  16925. <summary>
  16926. The content type output by this layout.
  16927. </summary>
  16928. <value>The content type is <c>"text/plain"</c></value>
  16929. <remarks>
  16930. <para>
  16931. The content type output by this layout.
  16932. </para>
  16933. <para>
  16934. This base class uses the value <c>"text/plain"</c>.
  16935. To change this value a subclass must override this
  16936. property.
  16937. </para>
  16938. </remarks>
  16939. </member>
  16940. <member name="P:log4net.Layout.LayoutSkeleton.Header">
  16941. <summary>
  16942. The header for the layout format.
  16943. </summary>
  16944. <value>the layout header</value>
  16945. <remarks>
  16946. <para>
  16947. The Header text will be appended before any logging events
  16948. are formatted and appended.
  16949. </para>
  16950. </remarks>
  16951. </member>
  16952. <member name="P:log4net.Layout.LayoutSkeleton.Footer">
  16953. <summary>
  16954. The footer for the layout format.
  16955. </summary>
  16956. <value>the layout footer</value>
  16957. <remarks>
  16958. <para>
  16959. The Footer text will be appended after all the logging events
  16960. have been formatted and appended.
  16961. </para>
  16962. </remarks>
  16963. </member>
  16964. <member name="P:log4net.Layout.LayoutSkeleton.IgnoresException">
  16965. <summary>
  16966. Flag indicating if this layout handles exceptions
  16967. </summary>
  16968. <value><c>false</c> if this layout handles exceptions</value>
  16969. <remarks>
  16970. <para>
  16971. If this layout handles the exception object contained within
  16972. <see cref="T:log4net.Core.LoggingEvent"/>, then the layout should return
  16973. <c>false</c>. Otherwise, if the layout ignores the exception
  16974. object, then the layout should return <c>true</c>.
  16975. </para>
  16976. <para>
  16977. Set this value to override a this default setting. The default
  16978. value is <c>true</c>, this layout does not handle the exception.
  16979. </para>
  16980. </remarks>
  16981. </member>
  16982. <member name="M:log4net.Layout.ExceptionLayout.#ctor">
  16983. <summary>
  16984. Default constructor
  16985. </summary>
  16986. <remarks>
  16987. <para>
  16988. Constructs a ExceptionLayout
  16989. </para>
  16990. </remarks>
  16991. </member>
  16992. <member name="M:log4net.Layout.ExceptionLayout.ActivateOptions">
  16993. <summary>
  16994. Activate component options
  16995. </summary>
  16996. <remarks>
  16997. <para>
  16998. Part of the <see cref="T:log4net.Core.IOptionHandler"/> component activation
  16999. framework.
  17000. </para>
  17001. <para>
  17002. This method does nothing as options become effective immediately.
  17003. </para>
  17004. </remarks>
  17005. </member>
  17006. <member name="M:log4net.Layout.ExceptionLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  17007. <summary>
  17008. Gets the exception text from the logging event
  17009. </summary>
  17010. <param name="writer">The TextWriter to write the formatted event to</param>
  17011. <param name="loggingEvent">the event being logged</param>
  17012. <remarks>
  17013. <para>
  17014. Write the exception string to the <see cref="T:System.IO.TextWriter"/>.
  17015. The exception string is retrieved from <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/>.
  17016. </para>
  17017. </remarks>
  17018. </member>
  17019. <member name="T:log4net.Layout.IRawLayout">
  17020. <summary>
  17021. Interface for raw layout objects
  17022. </summary>
  17023. <remarks>
  17024. <para>
  17025. Interface used to format a <see cref="T:log4net.Core.LoggingEvent"/>
  17026. to an object.
  17027. </para>
  17028. <para>
  17029. This interface should not be confused with the
  17030. <see cref="T:log4net.Layout.ILayout"/> interface. This interface is used in
  17031. only certain specialized situations where a raw object is
  17032. required rather than a formatted string. The <see cref="T:log4net.Layout.ILayout"/>
  17033. is not generally useful than this interface.
  17034. </para>
  17035. </remarks>
  17036. <author>Nicko Cadell</author>
  17037. <author>Gert Driesen</author>
  17038. </member>
  17039. <member name="M:log4net.Layout.IRawLayout.Format(log4net.Core.LoggingEvent)">
  17040. <summary>
  17041. Implement this method to create your own layout format.
  17042. </summary>
  17043. <param name="loggingEvent">The event to format</param>
  17044. <returns>returns the formatted event</returns>
  17045. <remarks>
  17046. <para>
  17047. Implement this method to create your own layout format.
  17048. </para>
  17049. </remarks>
  17050. </member>
  17051. <member name="T:log4net.Layout.Layout2RawLayoutAdapter">
  17052. <summary>
  17053. Adapts any <see cref="T:log4net.Layout.ILayout"/> to a <see cref="T:log4net.Layout.IRawLayout"/>
  17054. </summary>
  17055. <remarks>
  17056. <para>
  17057. Where an <see cref="T:log4net.Layout.IRawLayout"/> is required this adapter
  17058. allows a <see cref="T:log4net.Layout.ILayout"/> to be specified.
  17059. </para>
  17060. </remarks>
  17061. <author>Nicko Cadell</author>
  17062. <author>Gert Driesen</author>
  17063. </member>
  17064. <member name="F:log4net.Layout.Layout2RawLayoutAdapter.m_layout">
  17065. <summary>
  17066. The layout to adapt
  17067. </summary>
  17068. </member>
  17069. <member name="M:log4net.Layout.Layout2RawLayoutAdapter.#ctor(log4net.Layout.ILayout)">
  17070. <summary>
  17071. Construct a new adapter
  17072. </summary>
  17073. <param name="layout">the layout to adapt</param>
  17074. <remarks>
  17075. <para>
  17076. Create the adapter for the specified <paramref name="layout"/>.
  17077. </para>
  17078. </remarks>
  17079. </member>
  17080. <member name="M:log4net.Layout.Layout2RawLayoutAdapter.Format(log4net.Core.LoggingEvent)">
  17081. <summary>
  17082. Format the logging event as an object.
  17083. </summary>
  17084. <param name="loggingEvent">The event to format</param>
  17085. <returns>returns the formatted event</returns>
  17086. <remarks>
  17087. <para>
  17088. Format the logging event as an object.
  17089. </para>
  17090. <para>
  17091. Uses the <see cref="T:log4net.Layout.ILayout"/> object supplied to
  17092. the constructor to perform the formatting.
  17093. </para>
  17094. </remarks>
  17095. </member>
  17096. <member name="T:log4net.Layout.PatternLayout">
  17097. <summary>
  17098. A flexible layout configurable with pattern string.
  17099. </summary>
  17100. <remarks>
  17101. <para>
  17102. The goal of this class is to <see cref="M:log4net.Layout.PatternLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/> a
  17103. <see cref="T:log4net.Core.LoggingEvent"/> as a string. The results
  17104. depend on the <i>conversion pattern</i>.
  17105. </para>
  17106. <para>
  17107. The conversion pattern is closely related to the conversion
  17108. pattern of the printf function in C. A conversion pattern is
  17109. composed of literal text and format control expressions called
  17110. <i>conversion specifiers</i>.
  17111. </para>
  17112. <para>
  17113. <i>You are free to insert any literal text within the conversion
  17114. pattern.</i>
  17115. </para>
  17116. <para>
  17117. Each conversion specifier starts with a percent sign (%) and is
  17118. followed by optional <i>format modifiers</i> and a <i>conversion
  17119. pattern name</i>. The conversion pattern name specifies the type of
  17120. data, e.g. logger, level, date, thread name. The format
  17121. modifiers control such things as field width, padding, left and
  17122. right justification. The following is a simple example.
  17123. </para>
  17124. <para>
  17125. Let the conversion pattern be <b>"%-5level [%thread]: %message%newline"</b> and assume
  17126. that the log4net environment was set to use a PatternLayout. Then the
  17127. statements
  17128. </para>
  17129. <code lang="C#">
  17130. ILog log = LogManager.GetLogger(typeof(TestApp));
  17131. log.Debug("Message 1");
  17132. log.Warn("Message 2");
  17133. </code>
  17134. <para>would yield the output</para>
  17135. <code>
  17136. DEBUG [main]: Message 1
  17137. WARN [main]: Message 2
  17138. </code>
  17139. <para>
  17140. Note that there is no explicit separator between text and
  17141. conversion specifiers. The pattern parser knows when it has reached
  17142. the end of a conversion specifier when it reads a conversion
  17143. character. In the example above the conversion specifier
  17144. <b>%-5level</b> means the level of the logging event should be left
  17145. justified to a width of five characters.
  17146. </para>
  17147. <para>
  17148. The recognized conversion pattern names are:
  17149. </para>
  17150. <list type="table">
  17151. <listheader>
  17152. <term>Conversion Pattern Name</term>
  17153. <description>Effect</description>
  17154. </listheader>
  17155. <item>
  17156. <term>a</term>
  17157. <description>Equivalent to <b>appdomain</b></description>
  17158. </item>
  17159. <item>
  17160. <term>appdomain</term>
  17161. <description>
  17162. Used to output the friendly name of the AppDomain where the
  17163. logging event was generated.
  17164. </description>
  17165. </item>
  17166. <item>
  17167. <term>c</term>
  17168. <description>Equivalent to <b>logger</b></description>
  17169. </item>
  17170. <item>
  17171. <term>C</term>
  17172. <description>Equivalent to <b>type</b></description>
  17173. </item>
  17174. <item>
  17175. <term>class</term>
  17176. <description>Equivalent to <b>type</b></description>
  17177. </item>
  17178. <item>
  17179. <term>d</term>
  17180. <description>Equivalent to <b>date</b></description>
  17181. </item>
  17182. <item>
  17183. <term>date</term>
  17184. <description>
  17185. <para>
  17186. Used to output the date of the logging event in the local time zone.
  17187. To output the date in universal time use the <c>%utcdate</c> pattern.
  17188. The date conversion
  17189. specifier may be followed by a <i>date format specifier</i> enclosed
  17190. between braces. For example, <b>%date{HH:mm:ss,fff}</b> or
  17191. <b>%date{dd MMM yyyy HH:mm:ss,fff}</b>. If no date format specifier is
  17192. given then ISO8601 format is
  17193. assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).
  17194. </para>
  17195. <para>
  17196. The date format specifier admits the same syntax as the
  17197. time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.
  17198. </para>
  17199. <para>
  17200. For better results it is recommended to use the log4net date
  17201. formatters. These can be specified using one of the strings
  17202. "ABSOLUTE", "DATE" and "ISO8601" for specifying
  17203. <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>,
  17204. <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively
  17205. <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example,
  17206. <b>%date{ISO8601}</b> or <b>%date{ABSOLUTE}</b>.
  17207. </para>
  17208. <para>
  17209. These dedicated date formatters perform significantly
  17210. better than <see cref="M:System.DateTime.ToString(System.String)"/>.
  17211. </para>
  17212. </description>
  17213. </item>
  17214. <item>
  17215. <term>exception</term>
  17216. <description>
  17217. <para>
  17218. Used to output the exception passed in with the log message.
  17219. </para>
  17220. <para>
  17221. If an exception object is stored in the logging event
  17222. it will be rendered into the pattern output with a
  17223. trailing newline.
  17224. If there is no exception then nothing will be output
  17225. and no trailing newline will be appended.
  17226. It is typical to put a newline before the exception
  17227. and to have the exception as the last data in the pattern.
  17228. </para>
  17229. </description>
  17230. </item>
  17231. <item>
  17232. <term>F</term>
  17233. <description>Equivalent to <b>file</b></description>
  17234. </item>
  17235. <item>
  17236. <term>file</term>
  17237. <description>
  17238. <para>
  17239. Used to output the file name where the logging request was
  17240. issued.
  17241. </para>
  17242. <para>
  17243. <b>WARNING</b> Generating caller location information is
  17244. extremely slow. Its use should be avoided unless execution speed
  17245. is not an issue.
  17246. </para>
  17247. <para>
  17248. See the note below on the availability of caller location information.
  17249. </para>
  17250. </description>
  17251. </item>
  17252. <item>
  17253. <term>identity</term>
  17254. <description>
  17255. <para>
  17256. Used to output the user name for the currently active user
  17257. (Principal.Identity.Name).
  17258. </para>
  17259. <para>
  17260. <b>WARNING</b> Generating caller information is
  17261. extremely slow. Its use should be avoided unless execution speed
  17262. is not an issue.
  17263. </para>
  17264. </description>
  17265. </item>
  17266. <item>
  17267. <term>l</term>
  17268. <description>Equivalent to <b>location</b></description>
  17269. </item>
  17270. <item>
  17271. <term>L</term>
  17272. <description>Equivalent to <b>line</b></description>
  17273. </item>
  17274. <item>
  17275. <term>location</term>
  17276. <description>
  17277. <para>
  17278. Used to output location information of the caller which generated
  17279. the logging event.
  17280. </para>
  17281. <para>
  17282. The location information depends on the CLI implementation but
  17283. usually consists of the fully qualified name of the calling
  17284. method followed by the callers source the file name and line
  17285. number between parentheses.
  17286. </para>
  17287. <para>
  17288. The location information can be very useful. However, its
  17289. generation is <b>extremely</b> slow. Its use should be avoided
  17290. unless execution speed is not an issue.
  17291. </para>
  17292. <para>
  17293. See the note below on the availability of caller location information.
  17294. </para>
  17295. </description>
  17296. </item>
  17297. <item>
  17298. <term>level</term>
  17299. <description>
  17300. <para>
  17301. Used to output the level of the logging event.
  17302. </para>
  17303. </description>
  17304. </item>
  17305. <item>
  17306. <term>line</term>
  17307. <description>
  17308. <para>
  17309. Used to output the line number from where the logging request
  17310. was issued.
  17311. </para>
  17312. <para>
  17313. <b>WARNING</b> Generating caller location information is
  17314. extremely slow. Its use should be avoided unless execution speed
  17315. is not an issue.
  17316. </para>
  17317. <para>
  17318. See the note below on the availability of caller location information.
  17319. </para>
  17320. </description>
  17321. </item>
  17322. <item>
  17323. <term>logger</term>
  17324. <description>
  17325. <para>
  17326. Used to output the logger of the logging event. The
  17327. logger conversion specifier can be optionally followed by
  17328. <i>precision specifier</i>, that is a decimal constant in
  17329. brackets.
  17330. </para>
  17331. <para>
  17332. If a precision specifier is given, then only the corresponding
  17333. number of right most components of the logger name will be
  17334. printed. By default the logger name is printed in full.
  17335. </para>
  17336. <para>
  17337. For example, for the logger name "a.b.c" the pattern
  17338. <b>%logger{2}</b> will output "b.c".
  17339. </para>
  17340. </description>
  17341. </item>
  17342. <item>
  17343. <term>m</term>
  17344. <description>Equivalent to <b>message</b></description>
  17345. </item>
  17346. <item>
  17347. <term>M</term>
  17348. <description>Equivalent to <b>method</b></description>
  17349. </item>
  17350. <item>
  17351. <term>message</term>
  17352. <description>
  17353. <para>
  17354. Used to output the application supplied message associated with
  17355. the logging event.
  17356. </para>
  17357. </description>
  17358. </item>
  17359. <item>
  17360. <term>mdc</term>
  17361. <description>
  17362. <para>
  17363. The MDC (old name for the ThreadContext.Properties) is now part of the
  17364. combined event properties. This pattern is supported for compatibility
  17365. but is equivalent to <b>property</b>.
  17366. </para>
  17367. </description>
  17368. </item>
  17369. <item>
  17370. <term>method</term>
  17371. <description>
  17372. <para>
  17373. Used to output the method name where the logging request was
  17374. issued.
  17375. </para>
  17376. <para>
  17377. <b>WARNING</b> Generating caller location information is
  17378. extremely slow. Its use should be avoided unless execution speed
  17379. is not an issue.
  17380. </para>
  17381. <para>
  17382. See the note below on the availability of caller location information.
  17383. </para>
  17384. </description>
  17385. </item>
  17386. <item>
  17387. <term>n</term>
  17388. <description>Equivalent to <b>newline</b></description>
  17389. </item>
  17390. <item>
  17391. <term>newline</term>
  17392. <description>
  17393. <para>
  17394. Outputs the platform dependent line separator character or
  17395. characters.
  17396. </para>
  17397. <para>
  17398. This conversion pattern offers the same performance as using
  17399. non-portable line separator strings such as "\n", or "\r\n".
  17400. Thus, it is the preferred way of specifying a line separator.
  17401. </para>
  17402. </description>
  17403. </item>
  17404. <item>
  17405. <term>ndc</term>
  17406. <description>
  17407. <para>
  17408. Used to output the NDC (nested diagnostic context) associated
  17409. with the thread that generated the logging event.
  17410. </para>
  17411. </description>
  17412. </item>
  17413. <item>
  17414. <term>p</term>
  17415. <description>Equivalent to <b>level</b></description>
  17416. </item>
  17417. <item>
  17418. <term>P</term>
  17419. <description>Equivalent to <b>property</b></description>
  17420. </item>
  17421. <item>
  17422. <term>properties</term>
  17423. <description>Equivalent to <b>property</b></description>
  17424. </item>
  17425. <item>
  17426. <term>property</term>
  17427. <description>
  17428. <para>
  17429. Used to output the an event specific property. The key to
  17430. lookup must be specified within braces and directly following the
  17431. pattern specifier, e.g. <b>%property{user}</b> would include the value
  17432. from the property that is keyed by the string 'user'. Each property value
  17433. that is to be included in the log must be specified separately.
  17434. Properties are added to events by loggers or appenders. By default
  17435. the <c>log4net:HostName</c> property is set to the name of machine on
  17436. which the event was originally logged.
  17437. </para>
  17438. <para>
  17439. If no key is specified, e.g. <b>%property</b> then all the keys and their
  17440. values are printed in a comma separated list.
  17441. </para>
  17442. <para>
  17443. The properties of an event are combined from a number of different
  17444. contexts. These are listed below in the order in which they are searched.
  17445. </para>
  17446. <list type="definition">
  17447. <item>
  17448. <term>the event properties</term>
  17449. <description>
  17450. The event has <see cref="P:log4net.Core.LoggingEvent.Properties"/> that can be set. These
  17451. properties are specific to this event only.
  17452. </description>
  17453. </item>
  17454. <item>
  17455. <term>the thread properties</term>
  17456. <description>
  17457. The <see cref="P:log4net.ThreadContext.Properties"/> that are set on the current
  17458. thread. These properties are shared by all events logged on this thread.
  17459. </description>
  17460. </item>
  17461. <item>
  17462. <term>the global properties</term>
  17463. <description>
  17464. The <see cref="P:log4net.GlobalContext.Properties"/> that are set globally. These
  17465. properties are shared by all the threads in the AppDomain.
  17466. </description>
  17467. </item>
  17468. </list>
  17469. </description>
  17470. </item>
  17471. <item>
  17472. <term>r</term>
  17473. <description>Equivalent to <b>timestamp</b></description>
  17474. </item>
  17475. <item>
  17476. <term>t</term>
  17477. <description>Equivalent to <b>thread</b></description>
  17478. </item>
  17479. <item>
  17480. <term>timestamp</term>
  17481. <description>
  17482. <para>
  17483. Used to output the number of milliseconds elapsed since the start
  17484. of the application until the creation of the logging event.
  17485. </para>
  17486. </description>
  17487. </item>
  17488. <item>
  17489. <term>thread</term>
  17490. <description>
  17491. <para>
  17492. Used to output the name of the thread that generated the
  17493. logging event. Uses the thread number if no name is available.
  17494. </para>
  17495. </description>
  17496. </item>
  17497. <item>
  17498. <term>type</term>
  17499. <description>
  17500. <para>
  17501. Used to output the fully qualified type name of the caller
  17502. issuing the logging request. This conversion specifier
  17503. can be optionally followed by <i>precision specifier</i>, that
  17504. is a decimal constant in brackets.
  17505. </para>
  17506. <para>
  17507. If a precision specifier is given, then only the corresponding
  17508. number of right most components of the class name will be
  17509. printed. By default the class name is output in fully qualified form.
  17510. </para>
  17511. <para>
  17512. For example, for the class name "log4net.Layout.PatternLayout", the
  17513. pattern <b>%type{1}</b> will output "PatternLayout".
  17514. </para>
  17515. <para>
  17516. <b>WARNING</b> Generating the caller class information is
  17517. slow. Thus, its use should be avoided unless execution speed is
  17518. not an issue.
  17519. </para>
  17520. <para>
  17521. See the note below on the availability of caller location information.
  17522. </para>
  17523. </description>
  17524. </item>
  17525. <item>
  17526. <term>u</term>
  17527. <description>Equivalent to <b>identity</b></description>
  17528. </item>
  17529. <item>
  17530. <term>username</term>
  17531. <description>
  17532. <para>
  17533. Used to output the WindowsIdentity for the currently
  17534. active user.
  17535. </para>
  17536. <para>
  17537. <b>WARNING</b> Generating caller WindowsIdentity information is
  17538. extremely slow. Its use should be avoided unless execution speed
  17539. is not an issue.
  17540. </para>
  17541. </description>
  17542. </item>
  17543. <item>
  17544. <term>utcdate</term>
  17545. <description>
  17546. <para>
  17547. Used to output the date of the logging event in universal time.
  17548. The date conversion
  17549. specifier may be followed by a <i>date format specifier</i> enclosed
  17550. between braces. For example, <b>%utcdate{HH:mm:ss,fff}</b> or
  17551. <b>%utcdate{dd MMM yyyy HH:mm:ss,fff}</b>. If no date format specifier is
  17552. given then ISO8601 format is
  17553. assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).
  17554. </para>
  17555. <para>
  17556. The date format specifier admits the same syntax as the
  17557. time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.
  17558. </para>
  17559. <para>
  17560. For better results it is recommended to use the log4net date
  17561. formatters. These can be specified using one of the strings
  17562. "ABSOLUTE", "DATE" and "ISO8601" for specifying
  17563. <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>,
  17564. <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively
  17565. <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example,
  17566. <b>%utcdate{ISO8601}</b> or <b>%utcdate{ABSOLUTE}</b>.
  17567. </para>
  17568. <para>
  17569. These dedicated date formatters perform significantly
  17570. better than <see cref="M:System.DateTime.ToString(System.String)"/>.
  17571. </para>
  17572. </description>
  17573. </item>
  17574. <item>
  17575. <term>w</term>
  17576. <description>Equivalent to <b>username</b></description>
  17577. </item>
  17578. <item>
  17579. <term>x</term>
  17580. <description>Equivalent to <b>ndc</b></description>
  17581. </item>
  17582. <item>
  17583. <term>X</term>
  17584. <description>Equivalent to <b>mdc</b></description>
  17585. </item>
  17586. <item>
  17587. <term>%</term>
  17588. <description>
  17589. <para>
  17590. The sequence %% outputs a single percent sign.
  17591. </para>
  17592. </description>
  17593. </item>
  17594. </list>
  17595. <para>
  17596. The single letter patterns are deprecated in favor of the
  17597. longer more descriptive pattern names.
  17598. </para>
  17599. <para>
  17600. By default the relevant information is output as is. However,
  17601. with the aid of format modifiers it is possible to change the
  17602. minimum field width, the maximum field width and justification.
  17603. </para>
  17604. <para>
  17605. The optional format modifier is placed between the percent sign
  17606. and the conversion pattern name.
  17607. </para>
  17608. <para>
  17609. The first optional format modifier is the <i>left justification
  17610. flag</i> which is just the minus (-) character. Then comes the
  17611. optional <i>minimum field width</i> modifier. This is a decimal
  17612. constant that represents the minimum number of characters to
  17613. output. If the data item requires fewer characters, it is padded on
  17614. either the left or the right until the minimum width is
  17615. reached. The default is to pad on the left (right justify) but you
  17616. can specify right padding with the left justification flag. The
  17617. padding character is space. If the data item is larger than the
  17618. minimum field width, the field is expanded to accommodate the
  17619. data. The value is never truncated.
  17620. </para>
  17621. <para>
  17622. This behavior can be changed using the <i>maximum field
  17623. width</i> modifier which is designated by a period followed by a
  17624. decimal constant. If the data item is longer than the maximum
  17625. field, then the extra characters are removed from the
  17626. <i>beginning</i> of the data item and not from the end. For
  17627. example, it the maximum field width is eight and the data item is
  17628. ten characters long, then the first two characters of the data item
  17629. are dropped. This behavior deviates from the printf function in C
  17630. where truncation is done from the end.
  17631. </para>
  17632. <para>
  17633. Below are various format modifier examples for the logger
  17634. conversion specifier.
  17635. </para>
  17636. <div class="tablediv">
  17637. <table class="dtTABLE" cellspacing="0">
  17638. <tr>
  17639. <th>Format modifier</th>
  17640. <th>left justify</th>
  17641. <th>minimum width</th>
  17642. <th>maximum width</th>
  17643. <th>comment</th>
  17644. </tr>
  17645. <tr>
  17646. <td align="center">%20logger</td>
  17647. <td align="center">false</td>
  17648. <td align="center">20</td>
  17649. <td align="center">none</td>
  17650. <td>
  17651. <para>
  17652. Left pad with spaces if the logger name is less than 20
  17653. characters long.
  17654. </para>
  17655. </td>
  17656. </tr>
  17657. <tr>
  17658. <td align="center">%-20logger</td>
  17659. <td align="center">true</td>
  17660. <td align="center">20</td>
  17661. <td align="center">none</td>
  17662. <td>
  17663. <para>
  17664. Right pad with spaces if the logger
  17665. name is less than 20 characters long.
  17666. </para>
  17667. </td>
  17668. </tr>
  17669. <tr>
  17670. <td align="center">%.30logger</td>
  17671. <td align="center">NA</td>
  17672. <td align="center">none</td>
  17673. <td align="center">30</td>
  17674. <td>
  17675. <para>
  17676. Truncate from the beginning if the logger
  17677. name is longer than 30 characters.
  17678. </para>
  17679. </td>
  17680. </tr>
  17681. <tr>
  17682. <td align="center"><nobr>%20.30logger</nobr></td>
  17683. <td align="center">false</td>
  17684. <td align="center">20</td>
  17685. <td align="center">30</td>
  17686. <td>
  17687. <para>
  17688. Left pad with spaces if the logger name is shorter than 20
  17689. characters. However, if logger name is longer than 30 characters,
  17690. then truncate from the beginning.
  17691. </para>
  17692. </td>
  17693. </tr>
  17694. <tr>
  17695. <td align="center">%-20.30logger</td>
  17696. <td align="center">true</td>
  17697. <td align="center">20</td>
  17698. <td align="center">30</td>
  17699. <td>
  17700. <para>
  17701. Right pad with spaces if the logger name is shorter than 20
  17702. characters. However, if logger name is longer than 30 characters,
  17703. then truncate from the beginning.
  17704. </para>
  17705. </td>
  17706. </tr>
  17707. </table>
  17708. </div>
  17709. <para>
  17710. <b>Note about caller location information.</b><br/>
  17711. The following patterns <c>%type %file %line %method %location %class %C %F %L %l %M</c>
  17712. all generate caller location information.
  17713. Location information uses the <c>System.Diagnostics.StackTrace</c> class to generate
  17714. a call stack. The caller's information is then extracted from this stack.
  17715. </para>
  17716. <note type="caution">
  17717. <para>
  17718. The <c>System.Diagnostics.StackTrace</c> class is not supported on the
  17719. .NET Compact Framework 1.0 therefore caller location information is not
  17720. available on that framework.
  17721. </para>
  17722. </note>
  17723. <note type="caution">
  17724. <para>
  17725. The <c>System.Diagnostics.StackTrace</c> class has this to say about Release builds:
  17726. </para>
  17727. <para>
  17728. "StackTrace information will be most informative with Debug build configurations.
  17729. By default, Debug builds include debug symbols, while Release builds do not. The
  17730. debug symbols contain most of the file, method name, line number, and column
  17731. information used in constructing StackFrame and StackTrace objects. StackTrace
  17732. might not report as many method calls as expected, due to code transformations
  17733. that occur during optimization."
  17734. </para>
  17735. <para>
  17736. This means that in a Release build the caller information may be incomplete or may
  17737. not exist at all! Therefore caller location information cannot be relied upon in a Release build.
  17738. </para>
  17739. </note>
  17740. <para>
  17741. Additional pattern converters may be registered with a specific <see cref="T:log4net.Layout.PatternLayout"/>
  17742. instance using the <see cref="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)"/> method.
  17743. </para>
  17744. </remarks>
  17745. <example>
  17746. This is a more detailed pattern.
  17747. <code><b>%timestamp [%thread] %level %logger %ndc - %message%newline</b></code>
  17748. </example>
  17749. <example>
  17750. A similar pattern except that the relative time is
  17751. right padded if less than 6 digits, thread name is right padded if
  17752. less than 15 characters and truncated if longer and the logger
  17753. name is left padded if shorter than 30 characters and truncated if
  17754. longer.
  17755. <code><b>%-6timestamp [%15.15thread] %-5level %30.30logger %ndc - %message%newline</b></code>
  17756. </example>
  17757. <author>Nicko Cadell</author>
  17758. <author>Gert Driesen</author>
  17759. <author>Douglas de la Torre</author>
  17760. <author>Daniel Cazzulino</author>
  17761. </member>
  17762. <member name="F:log4net.Layout.PatternLayout.DefaultConversionPattern">
  17763. <summary>
  17764. Default pattern string for log output.
  17765. </summary>
  17766. <remarks>
  17767. <para>
  17768. Default pattern string for log output.
  17769. Currently set to the string <b>"%message%newline"</b>
  17770. which just prints the application supplied message.
  17771. </para>
  17772. </remarks>
  17773. </member>
  17774. <member name="F:log4net.Layout.PatternLayout.DetailConversionPattern">
  17775. <summary>
  17776. A detailed conversion pattern
  17777. </summary>
  17778. <remarks>
  17779. <para>
  17780. A conversion pattern which includes Time, Thread, Logger, and Nested Context.
  17781. Current value is <b>%timestamp [%thread] %level %logger %ndc - %message%newline</b>.
  17782. </para>
  17783. </remarks>
  17784. </member>
  17785. <member name="F:log4net.Layout.PatternLayout.s_globalRulesRegistry">
  17786. <summary>
  17787. Internal map of converter identifiers to converter types.
  17788. </summary>
  17789. <remarks>
  17790. <para>
  17791. This static map is overridden by the m_converterRegistry instance map
  17792. </para>
  17793. </remarks>
  17794. </member>
  17795. <member name="F:log4net.Layout.PatternLayout.m_pattern">
  17796. <summary>
  17797. the pattern
  17798. </summary>
  17799. </member>
  17800. <member name="F:log4net.Layout.PatternLayout.m_head">
  17801. <summary>
  17802. the head of the pattern converter chain
  17803. </summary>
  17804. </member>
  17805. <member name="F:log4net.Layout.PatternLayout.m_instanceRulesRegistry">
  17806. <summary>
  17807. patterns defined on this PatternLayout only
  17808. </summary>
  17809. </member>
  17810. <member name="M:log4net.Layout.PatternLayout.#cctor">
  17811. <summary>
  17812. Initialize the global registry
  17813. </summary>
  17814. <remarks>
  17815. <para>
  17816. Defines the builtin global rules.
  17817. </para>
  17818. </remarks>
  17819. </member>
  17820. <member name="M:log4net.Layout.PatternLayout.#ctor">
  17821. <summary>
  17822. Constructs a PatternLayout using the DefaultConversionPattern
  17823. </summary>
  17824. <remarks>
  17825. <para>
  17826. The default pattern just produces the application supplied message.
  17827. </para>
  17828. <para>
  17829. Note to Inheritors: This constructor calls the virtual method
  17830. <see cref="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)"/>. If you override this method be
  17831. aware that it will be called before your is called constructor.
  17832. </para>
  17833. <para>
  17834. As per the <see cref="T:log4net.Core.IOptionHandler"/> contract the <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/>
  17835. method must be called after the properties on this object have been
  17836. configured.
  17837. </para>
  17838. </remarks>
  17839. </member>
  17840. <member name="M:log4net.Layout.PatternLayout.#ctor(System.String)">
  17841. <summary>
  17842. Constructs a PatternLayout using the supplied conversion pattern
  17843. </summary>
  17844. <param name="pattern">the pattern to use</param>
  17845. <remarks>
  17846. <para>
  17847. Note to Inheritors: This constructor calls the virtual method
  17848. <see cref="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)"/>. If you override this method be
  17849. aware that it will be called before your is called constructor.
  17850. </para>
  17851. <para>
  17852. When using this constructor the <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> method
  17853. need not be called. This may not be the case when using a subclass.
  17854. </para>
  17855. </remarks>
  17856. </member>
  17857. <member name="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)">
  17858. <summary>
  17859. Create the pattern parser instance
  17860. </summary>
  17861. <param name="pattern">the pattern to parse</param>
  17862. <returns>The <see cref="T:log4net.Util.PatternParser"/> that will format the event</returns>
  17863. <remarks>
  17864. <para>
  17865. Creates the <see cref="T:log4net.Util.PatternParser"/> used to parse the conversion string. Sets the
  17866. global and instance rules on the <see cref="T:log4net.Util.PatternParser"/>.
  17867. </para>
  17868. </remarks>
  17869. </member>
  17870. <member name="M:log4net.Layout.PatternLayout.ActivateOptions">
  17871. <summary>
  17872. Initialize layout options
  17873. </summary>
  17874. <remarks>
  17875. <para>
  17876. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  17877. activation scheme. The <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> method must
  17878. be called on this object after the configuration properties have
  17879. been set. Until <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> is called this
  17880. object is in an undefined state and must not be used.
  17881. </para>
  17882. <para>
  17883. If any of the configuration properties are modified then
  17884. <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> must be called again.
  17885. </para>
  17886. </remarks>
  17887. </member>
  17888. <member name="M:log4net.Layout.PatternLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  17889. <summary>
  17890. Produces a formatted string as specified by the conversion pattern.
  17891. </summary>
  17892. <param name="loggingEvent">the event being logged</param>
  17893. <param name="writer">The TextWriter to write the formatted event to</param>
  17894. <remarks>
  17895. <para>
  17896. Parse the <see cref="T:log4net.Core.LoggingEvent"/> using the patter format
  17897. specified in the <see cref="P:log4net.Layout.PatternLayout.ConversionPattern"/> property.
  17898. </para>
  17899. </remarks>
  17900. </member>
  17901. <member name="M:log4net.Layout.PatternLayout.AddConverter(log4net.Layout.PatternLayout.ConverterInfo)">
  17902. <summary>
  17903. Add a converter to this PatternLayout
  17904. </summary>
  17905. <param name="converterInfo">the converter info</param>
  17906. <remarks>
  17907. <para>
  17908. This version of the method is used by the configurator.
  17909. Programmatic users should use the alternative <see cref="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)"/> method.
  17910. </para>
  17911. </remarks>
  17912. </member>
  17913. <member name="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)">
  17914. <summary>
  17915. Add a converter to this PatternLayout
  17916. </summary>
  17917. <param name="name">the name of the conversion pattern for this converter</param>
  17918. <param name="type">the type of the converter</param>
  17919. <remarks>
  17920. <para>
  17921. Add a named pattern converter to this instance. This
  17922. converter will be used in the formatting of the event.
  17923. This method must be called before <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/>.
  17924. </para>
  17925. <para>
  17926. The <paramref name="type"/> specified must extend the
  17927. <see cref="T:log4net.Util.PatternConverter"/> type.
  17928. </para>
  17929. </remarks>
  17930. </member>
  17931. <member name="P:log4net.Layout.PatternLayout.ConversionPattern">
  17932. <summary>
  17933. The pattern formatting string
  17934. </summary>
  17935. <remarks>
  17936. <para>
  17937. The <b>ConversionPattern</b> option. This is the string which
  17938. controls formatting and consists of a mix of literal content and
  17939. conversion specifiers.
  17940. </para>
  17941. </remarks>
  17942. </member>
  17943. <member name="T:log4net.Layout.PatternLayout.ConverterInfo">
  17944. <summary>
  17945. Wrapper class used to map converter names to converter types
  17946. </summary>
  17947. <remarks>
  17948. <para>
  17949. Pattern converter info class used during configuration to
  17950. pass to the <see cref="M:log4net.Layout.PatternLayout.AddConverter(log4net.Layout.PatternLayout.ConverterInfo)"/>
  17951. method.
  17952. </para>
  17953. </remarks>
  17954. </member>
  17955. <member name="M:log4net.Layout.PatternLayout.ConverterInfo.#ctor">
  17956. <summary>
  17957. default constructor
  17958. </summary>
  17959. </member>
  17960. <member name="P:log4net.Layout.PatternLayout.ConverterInfo.Name">
  17961. <summary>
  17962. Gets or sets the name of the conversion pattern
  17963. </summary>
  17964. <remarks>
  17965. <para>
  17966. The name of the pattern in the format string
  17967. </para>
  17968. </remarks>
  17969. </member>
  17970. <member name="P:log4net.Layout.PatternLayout.ConverterInfo.Type">
  17971. <summary>
  17972. Gets or sets the type of the converter
  17973. </summary>
  17974. <remarks>
  17975. <para>
  17976. The value specified must extend the
  17977. <see cref="T:log4net.Util.PatternConverter"/> type.
  17978. </para>
  17979. </remarks>
  17980. </member>
  17981. <member name="T:log4net.Layout.RawLayoutConverter">
  17982. <summary>
  17983. Type converter for the <see cref="T:log4net.Layout.IRawLayout"/> interface
  17984. </summary>
  17985. <remarks>
  17986. <para>
  17987. Used to convert objects to the <see cref="T:log4net.Layout.IRawLayout"/> interface.
  17988. Supports converting from the <see cref="T:log4net.Layout.ILayout"/> interface to
  17989. the <see cref="T:log4net.Layout.IRawLayout"/> interface using the <see cref="T:log4net.Layout.Layout2RawLayoutAdapter"/>.
  17990. </para>
  17991. </remarks>
  17992. <author>Nicko Cadell</author>
  17993. <author>Gert Driesen</author>
  17994. </member>
  17995. <member name="T:log4net.Util.TypeConverters.IConvertFrom">
  17996. <summary>
  17997. Interface supported by type converters
  17998. </summary>
  17999. <remarks>
  18000. <para>
  18001. This interface supports conversion from arbitrary types
  18002. to a single target type. See <see cref="T:log4net.Util.TypeConverters.TypeConverterAttribute"/>.
  18003. </para>
  18004. </remarks>
  18005. <author>Nicko Cadell</author>
  18006. <author>Gert Driesen</author>
  18007. </member>
  18008. <member name="M:log4net.Util.TypeConverters.IConvertFrom.CanConvertFrom(System.Type)">
  18009. <summary>
  18010. Can the source type be converted to the type supported by this object
  18011. </summary>
  18012. <param name="sourceType">the type to convert</param>
  18013. <returns>true if the conversion is possible</returns>
  18014. <remarks>
  18015. <para>
  18016. Test if the <paramref name="sourceType"/> can be converted to the
  18017. type supported by this converter.
  18018. </para>
  18019. </remarks>
  18020. </member>
  18021. <member name="M:log4net.Util.TypeConverters.IConvertFrom.ConvertFrom(System.Object)">
  18022. <summary>
  18023. Convert the source object to the type supported by this object
  18024. </summary>
  18025. <param name="source">the object to convert</param>
  18026. <returns>the converted object</returns>
  18027. <remarks>
  18028. <para>
  18029. Converts the <paramref name="source"/> to the type supported
  18030. by this converter.
  18031. </para>
  18032. </remarks>
  18033. </member>
  18034. <member name="M:log4net.Layout.RawLayoutConverter.CanConvertFrom(System.Type)">
  18035. <summary>
  18036. Can the sourceType be converted to an <see cref="T:log4net.Layout.IRawLayout"/>
  18037. </summary>
  18038. <param name="sourceType">the source to be to be converted</param>
  18039. <returns><c>true</c> if the source type can be converted to <see cref="T:log4net.Layout.IRawLayout"/></returns>
  18040. <remarks>
  18041. <para>
  18042. Test if the <paramref name="sourceType"/> can be converted to a
  18043. <see cref="T:log4net.Layout.IRawLayout"/>. Only <see cref="T:log4net.Layout.ILayout"/> is supported
  18044. as the <paramref name="sourceType"/>.
  18045. </para>
  18046. </remarks>
  18047. </member>
  18048. <member name="M:log4net.Layout.RawLayoutConverter.ConvertFrom(System.Object)">
  18049. <summary>
  18050. Convert the value to a <see cref="T:log4net.Layout.IRawLayout"/> object
  18051. </summary>
  18052. <param name="source">the value to convert</param>
  18053. <returns>the <see cref="T:log4net.Layout.IRawLayout"/> object</returns>
  18054. <remarks>
  18055. <para>
  18056. Convert the <paramref name="source"/> object to a
  18057. <see cref="T:log4net.Layout.IRawLayout"/> object. If the <paramref name="source"/> object
  18058. is a <see cref="T:log4net.Layout.ILayout"/> then the <see cref="T:log4net.Layout.Layout2RawLayoutAdapter"/>
  18059. is used to adapt between the two interfaces, otherwise an
  18060. exception is thrown.
  18061. </para>
  18062. </remarks>
  18063. </member>
  18064. <member name="T:log4net.Layout.RawPropertyLayout">
  18065. <summary>
  18066. Extract the value of a property from the <see cref="T:log4net.Core.LoggingEvent"/>
  18067. </summary>
  18068. <remarks>
  18069. <para>
  18070. Extract the value of a property from the <see cref="T:log4net.Core.LoggingEvent"/>
  18071. </para>
  18072. </remarks>
  18073. <author>Nicko Cadell</author>
  18074. </member>
  18075. <member name="M:log4net.Layout.RawPropertyLayout.#ctor">
  18076. <summary>
  18077. Constructs a RawPropertyLayout
  18078. </summary>
  18079. </member>
  18080. <member name="M:log4net.Layout.RawPropertyLayout.Format(log4net.Core.LoggingEvent)">
  18081. <summary>
  18082. Lookup the property for <see cref="P:log4net.Layout.RawPropertyLayout.Key"/>
  18083. </summary>
  18084. <param name="loggingEvent">The event to format</param>
  18085. <returns>returns property value</returns>
  18086. <remarks>
  18087. <para>
  18088. Looks up and returns the object value of the property
  18089. named <see cref="P:log4net.Layout.RawPropertyLayout.Key"/>. If there is no property defined
  18090. with than name then <c>null</c> will be returned.
  18091. </para>
  18092. </remarks>
  18093. </member>
  18094. <member name="P:log4net.Layout.RawPropertyLayout.Key">
  18095. <summary>
  18096. The name of the value to lookup in the LoggingEvent Properties collection.
  18097. </summary>
  18098. <value>
  18099. Value to lookup in the LoggingEvent Properties collection
  18100. </value>
  18101. <remarks>
  18102. <para>
  18103. String name of the property to lookup in the <see cref="T:log4net.Core.LoggingEvent"/>.
  18104. </para>
  18105. </remarks>
  18106. </member>
  18107. <member name="T:log4net.Layout.RawTimeStampLayout">
  18108. <summary>
  18109. Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>
  18110. </summary>
  18111. <remarks>
  18112. <para>
  18113. Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>
  18114. </para>
  18115. </remarks>
  18116. <author>Nicko Cadell</author>
  18117. <author>Gert Driesen</author>
  18118. </member>
  18119. <member name="M:log4net.Layout.RawTimeStampLayout.#ctor">
  18120. <summary>
  18121. Constructs a RawTimeStampLayout
  18122. </summary>
  18123. </member>
  18124. <member name="M:log4net.Layout.RawTimeStampLayout.Format(log4net.Core.LoggingEvent)">
  18125. <summary>
  18126. Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.
  18127. </summary>
  18128. <param name="loggingEvent">The event to format</param>
  18129. <returns>returns the time stamp</returns>
  18130. <remarks>
  18131. <para>
  18132. Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.
  18133. </para>
  18134. <para>
  18135. The time stamp is in local time. To format the time stamp
  18136. in universal time use <see cref="T:log4net.Layout.RawUtcTimeStampLayout"/>.
  18137. </para>
  18138. </remarks>
  18139. </member>
  18140. <member name="T:log4net.Layout.RawUtcTimeStampLayout">
  18141. <summary>
  18142. Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>
  18143. </summary>
  18144. <remarks>
  18145. <para>
  18146. Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>
  18147. </para>
  18148. </remarks>
  18149. <author>Nicko Cadell</author>
  18150. <author>Gert Driesen</author>
  18151. </member>
  18152. <member name="M:log4net.Layout.RawUtcTimeStampLayout.#ctor">
  18153. <summary>
  18154. Constructs a RawUtcTimeStampLayout
  18155. </summary>
  18156. </member>
  18157. <member name="M:log4net.Layout.RawUtcTimeStampLayout.Format(log4net.Core.LoggingEvent)">
  18158. <summary>
  18159. Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.
  18160. </summary>
  18161. <param name="loggingEvent">The event to format</param>
  18162. <returns>returns the time stamp</returns>
  18163. <remarks>
  18164. <para>
  18165. Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.
  18166. </para>
  18167. <para>
  18168. The time stamp is in universal time. To format the time stamp
  18169. in local time use <see cref="T:log4net.Layout.RawTimeStampLayout"/>.
  18170. </para>
  18171. </remarks>
  18172. </member>
  18173. <member name="T:log4net.Layout.SimpleLayout">
  18174. <summary>
  18175. A very simple layout
  18176. </summary>
  18177. <remarks>
  18178. <para>
  18179. SimpleLayout consists of the level of the log statement,
  18180. followed by " - " and then the log message itself. For example,
  18181. <code>
  18182. DEBUG - Hello world
  18183. </code>
  18184. </para>
  18185. </remarks>
  18186. <author>Nicko Cadell</author>
  18187. <author>Gert Driesen</author>
  18188. </member>
  18189. <member name="M:log4net.Layout.SimpleLayout.#ctor">
  18190. <summary>
  18191. Constructs a SimpleLayout
  18192. </summary>
  18193. </member>
  18194. <member name="M:log4net.Layout.SimpleLayout.ActivateOptions">
  18195. <summary>
  18196. Initialize layout options
  18197. </summary>
  18198. <remarks>
  18199. <para>
  18200. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  18201. activation scheme. The <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> method must
  18202. be called on this object after the configuration properties have
  18203. been set. Until <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> is called this
  18204. object is in an undefined state and must not be used.
  18205. </para>
  18206. <para>
  18207. If any of the configuration properties are modified then
  18208. <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> must be called again.
  18209. </para>
  18210. </remarks>
  18211. </member>
  18212. <member name="M:log4net.Layout.SimpleLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  18213. <summary>
  18214. Produces a simple formatted output.
  18215. </summary>
  18216. <param name="loggingEvent">the event being logged</param>
  18217. <param name="writer">The TextWriter to write the formatted event to</param>
  18218. <remarks>
  18219. <para>
  18220. Formats the event as the level of the even,
  18221. followed by " - " and then the log message itself. The
  18222. output is terminated by a newline.
  18223. </para>
  18224. </remarks>
  18225. </member>
  18226. <member name="T:log4net.Layout.XmlLayout">
  18227. <summary>
  18228. Layout that formats the log events as XML elements.
  18229. </summary>
  18230. <remarks>
  18231. <para>
  18232. The output of the <see cref="T:log4net.Layout.XmlLayout"/> consists of a series of
  18233. log4net:event elements. It does not output a complete well-formed XML
  18234. file. The output is designed to be included as an <em>external entity</em>
  18235. in a separate file to form a correct XML file.
  18236. </para>
  18237. <para>
  18238. For example, if <c>abc</c> is the name of the file where
  18239. the <see cref="T:log4net.Layout.XmlLayout"/> output goes, then a well-formed XML file would
  18240. be:
  18241. </para>
  18242. <code lang="XML">
  18243. &lt;?xml version="1.0" ?&gt;
  18244. &lt;!DOCTYPE log4net:events SYSTEM "log4net-events.dtd" [&lt;!ENTITY data SYSTEM "abc"&gt;]&gt;
  18245. &lt;log4net:events version="1.2" xmlns:log4net="http://logging.apache.org/log4net/schemas/log4net-events-1.2&gt;
  18246. &amp;data;
  18247. &lt;/log4net:events&gt;
  18248. </code>
  18249. <para>
  18250. This approach enforces the independence of the <see cref="T:log4net.Layout.XmlLayout"/>
  18251. and the appender where it is embedded.
  18252. </para>
  18253. <para>
  18254. The <c>version</c> attribute helps components to correctly
  18255. interpret output generated by <see cref="T:log4net.Layout.XmlLayout"/>. The value of
  18256. this attribute should be "1.2" for release 1.2 and later.
  18257. </para>
  18258. <para>
  18259. Alternatively the <c>Header</c> and <c>Footer</c> properties can be
  18260. configured to output the correct XML header, open tag and close tag.
  18261. When setting the <c>Header</c> and <c>Footer</c> properties it is essential
  18262. that the underlying data store not be appendable otherwise the data
  18263. will become invalid XML.
  18264. </para>
  18265. </remarks>
  18266. <author>Nicko Cadell</author>
  18267. <author>Gert Driesen</author>
  18268. </member>
  18269. <member name="T:log4net.Layout.XmlLayoutBase">
  18270. <summary>
  18271. Layout that formats the log events as XML elements.
  18272. </summary>
  18273. <remarks>
  18274. <para>
  18275. This is an abstract class that must be subclassed by an implementation
  18276. to conform to a specific schema.
  18277. </para>
  18278. <para>
  18279. Deriving classes must implement the <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method.
  18280. </para>
  18281. </remarks>
  18282. <author>Nicko Cadell</author>
  18283. <author>Gert Driesen</author>
  18284. </member>
  18285. <member name="M:log4net.Layout.XmlLayoutBase.#ctor">
  18286. <summary>
  18287. Protected constructor to support subclasses
  18288. </summary>
  18289. <remarks>
  18290. <para>
  18291. Initializes a new instance of the <see cref="T:log4net.Layout.XmlLayoutBase"/> class
  18292. with no location info.
  18293. </para>
  18294. </remarks>
  18295. </member>
  18296. <member name="M:log4net.Layout.XmlLayoutBase.#ctor(System.Boolean)">
  18297. <summary>
  18298. Protected constructor to support subclasses
  18299. </summary>
  18300. <remarks>
  18301. <para>
  18302. The <paramref name="locationInfo" /> parameter determines whether
  18303. location information will be output by the layout. If
  18304. <paramref name="locationInfo" /> is set to <c>true</c>, then the
  18305. file name and line number of the statement at the origin of the log
  18306. statement will be output.
  18307. </para>
  18308. <para>
  18309. If you are embedding this layout within an SMTPAppender
  18310. then make sure to set the <b>LocationInfo</b> option of that
  18311. appender as well.
  18312. </para>
  18313. </remarks>
  18314. </member>
  18315. <member name="M:log4net.Layout.XmlLayoutBase.ActivateOptions">
  18316. <summary>
  18317. Initialize layout options
  18318. </summary>
  18319. <remarks>
  18320. <para>
  18321. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  18322. activation scheme. The <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> method must
  18323. be called on this object after the configuration properties have
  18324. been set. Until <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> is called this
  18325. object is in an undefined state and must not be used.
  18326. </para>
  18327. <para>
  18328. If any of the configuration properties are modified then
  18329. <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> must be called again.
  18330. </para>
  18331. </remarks>
  18332. </member>
  18333. <member name="M:log4net.Layout.XmlLayoutBase.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">
  18334. <summary>
  18335. Produces a formatted string.
  18336. </summary>
  18337. <param name="loggingEvent">The event being logged.</param>
  18338. <param name="writer">The TextWriter to write the formatted event to</param>
  18339. <remarks>
  18340. <para>
  18341. Format the <see cref="T:log4net.Core.LoggingEvent"/> and write it to the <see cref="T:System.IO.TextWriter"/>.
  18342. </para>
  18343. <para>
  18344. This method creates an <see cref="T:System.Xml.XmlTextWriter"/> that writes to the
  18345. <paramref name="writer"/>. The <see cref="T:System.Xml.XmlTextWriter"/> is passed
  18346. to the <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method. Subclasses should override the
  18347. <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method rather than this method.
  18348. </para>
  18349. </remarks>
  18350. </member>
  18351. <member name="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">
  18352. <summary>
  18353. Does the actual writing of the XML.
  18354. </summary>
  18355. <param name="writer">The writer to use to output the event to.</param>
  18356. <param name="loggingEvent">The event to write.</param>
  18357. <remarks>
  18358. <para>
  18359. Subclasses should override this method to format
  18360. the <see cref="T:log4net.Core.LoggingEvent"/> as XML.
  18361. </para>
  18362. </remarks>
  18363. </member>
  18364. <member name="F:log4net.Layout.XmlLayoutBase.m_locationInfo">
  18365. <summary>
  18366. Flag to indicate if location information should be included in
  18367. the XML events.
  18368. </summary>
  18369. </member>
  18370. <member name="F:log4net.Layout.XmlLayoutBase.m_protectCloseTextWriter">
  18371. <summary>
  18372. Writer adapter that ignores Close
  18373. </summary>
  18374. </member>
  18375. <member name="F:log4net.Layout.XmlLayoutBase.m_invalidCharReplacement">
  18376. <summary>
  18377. The string to replace invalid chars with
  18378. </summary>
  18379. </member>
  18380. <member name="P:log4net.Layout.XmlLayoutBase.LocationInfo">
  18381. <summary>
  18382. Gets a value indicating whether to include location information in
  18383. the XML events.
  18384. </summary>
  18385. <value>
  18386. <c>true</c> if location information should be included in the XML
  18387. events; otherwise, <c>false</c>.
  18388. </value>
  18389. <remarks>
  18390. <para>
  18391. If <see cref="P:log4net.Layout.XmlLayoutBase.LocationInfo"/> is set to <c>true</c>, then the file
  18392. name and line number of the statement at the origin of the log
  18393. statement will be output.
  18394. </para>
  18395. <para>
  18396. If you are embedding this layout within an <c>SMTPAppender</c>
  18397. then make sure to set the <b>LocationInfo</b> option of that
  18398. appender as well.
  18399. </para>
  18400. </remarks>
  18401. </member>
  18402. <member name="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement">
  18403. <summary>
  18404. The string to replace characters that can not be expressed in XML with.
  18405. <remarks>
  18406. <para>
  18407. Not all characters may be expressed in XML. This property contains the
  18408. string to replace those that can not with. This defaults to a ?. Set it
  18409. to the empty string to simply remove offending characters. For more
  18410. details on the allowed character ranges see http://www.w3.org/TR/REC-xml/#charsets
  18411. Character replacement will occur in the log message, the property names
  18412. and the property values.
  18413. </para>
  18414. </remarks>
  18415. </summary>
  18416. </member>
  18417. <member name="P:log4net.Layout.XmlLayoutBase.ContentType">
  18418. <summary>
  18419. Gets the content type output by this layout.
  18420. </summary>
  18421. <value>
  18422. As this is the XML layout, the value is always <c>"text/xml"</c>.
  18423. </value>
  18424. <remarks>
  18425. <para>
  18426. As this is the XML layout, the value is always <c>"text/xml"</c>.
  18427. </para>
  18428. </remarks>
  18429. </member>
  18430. <member name="M:log4net.Layout.XmlLayout.#ctor">
  18431. <summary>
  18432. Constructs an XmlLayout
  18433. </summary>
  18434. </member>
  18435. <member name="M:log4net.Layout.XmlLayout.#ctor(System.Boolean)">
  18436. <summary>
  18437. Constructs an XmlLayout.
  18438. </summary>
  18439. <remarks>
  18440. <para>
  18441. The <b>LocationInfo</b> option takes a boolean value. By
  18442. default, it is set to false which means there will be no location
  18443. information output by this layout. If the the option is set to
  18444. true, then the file name and line number of the statement
  18445. at the origin of the log statement will be output.
  18446. </para>
  18447. <para>
  18448. If you are embedding this layout within an SmtpAppender
  18449. then make sure to set the <b>LocationInfo</b> option of that
  18450. appender as well.
  18451. </para>
  18452. </remarks>
  18453. </member>
  18454. <member name="M:log4net.Layout.XmlLayout.ActivateOptions">
  18455. <summary>
  18456. Initialize layout options
  18457. </summary>
  18458. <remarks>
  18459. <para>
  18460. This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object
  18461. activation scheme. The <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> method must
  18462. be called on this object after the configuration properties have
  18463. been set. Until <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> is called this
  18464. object is in an undefined state and must not be used.
  18465. </para>
  18466. <para>
  18467. If any of the configuration properties are modified then
  18468. <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> must be called again.
  18469. </para>
  18470. <para>
  18471. Builds a cache of the element names
  18472. </para>
  18473. </remarks>
  18474. </member>
  18475. <member name="M:log4net.Layout.XmlLayout.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">
  18476. <summary>
  18477. Does the actual writing of the XML.
  18478. </summary>
  18479. <param name="writer">The writer to use to output the event to.</param>
  18480. <param name="loggingEvent">The event to write.</param>
  18481. <remarks>
  18482. <para>
  18483. Override the base class <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method
  18484. to write the <see cref="T:log4net.Core.LoggingEvent"/> to the <see cref="T:System.Xml.XmlWriter"/>.
  18485. </para>
  18486. </remarks>
  18487. </member>
  18488. <member name="F:log4net.Layout.XmlLayout.m_prefix">
  18489. <summary>
  18490. The prefix to use for all generated element names
  18491. </summary>
  18492. </member>
  18493. <member name="P:log4net.Layout.XmlLayout.Prefix">
  18494. <summary>
  18495. The prefix to use for all element names
  18496. </summary>
  18497. <remarks>
  18498. <para>
  18499. The default prefix is <b>log4net</b>. Set this property
  18500. to change the prefix. If the prefix is set to an empty string
  18501. then no prefix will be written.
  18502. </para>
  18503. </remarks>
  18504. </member>
  18505. <member name="P:log4net.Layout.XmlLayout.Base64EncodeMessage">
  18506. <summary>
  18507. Set whether or not to base64 encode the message.
  18508. </summary>
  18509. <remarks>
  18510. <para>
  18511. By default the log message will be written as text to the xml
  18512. output. This can cause problems when the message contains binary
  18513. data. By setting this to true the contents of the message will be
  18514. base64 encoded. If this is set then invalid character replacement
  18515. (see <see cref="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement"/>) will not be performed
  18516. on the log message.
  18517. </para>
  18518. </remarks>
  18519. </member>
  18520. <member name="P:log4net.Layout.XmlLayout.Base64EncodeProperties">
  18521. <summary>
  18522. Set whether or not to base64 encode the property values.
  18523. </summary>
  18524. <remarks>
  18525. <para>
  18526. By default the properties will be written as text to the xml
  18527. output. This can cause problems when one or more properties contain
  18528. binary data. By setting this to true the values of the properties
  18529. will be base64 encoded. If this is set then invalid character replacement
  18530. (see <see cref="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement"/>) will not be performed
  18531. on the property values.
  18532. </para>
  18533. </remarks>
  18534. </member>
  18535. <member name="T:log4net.Layout.XmlLayoutSchemaLog4j">
  18536. <summary>
  18537. Layout that formats the log events as XML elements compatible with the log4j schema
  18538. </summary>
  18539. <remarks>
  18540. <para>
  18541. Formats the log events according to the http://logging.apache.org/log4j schema.
  18542. </para>
  18543. </remarks>
  18544. <author>Nicko Cadell</author>
  18545. </member>
  18546. <member name="F:log4net.Layout.XmlLayoutSchemaLog4j.s_date1970">
  18547. <summary>
  18548. The 1st of January 1970 in UTC
  18549. </summary>
  18550. </member>
  18551. <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.#ctor">
  18552. <summary>
  18553. Constructs an XMLLayoutSchemaLog4j
  18554. </summary>
  18555. </member>
  18556. <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.#ctor(System.Boolean)">
  18557. <summary>
  18558. Constructs an XMLLayoutSchemaLog4j.
  18559. </summary>
  18560. <remarks>
  18561. <para>
  18562. The <b>LocationInfo</b> option takes a boolean value. By
  18563. default, it is set to false which means there will be no location
  18564. information output by this layout. If the the option is set to
  18565. true, then the file name and line number of the statement
  18566. at the origin of the log statement will be output.
  18567. </para>
  18568. <para>
  18569. If you are embedding this layout within an SMTPAppender
  18570. then make sure to set the <b>LocationInfo</b> option of that
  18571. appender as well.
  18572. </para>
  18573. </remarks>
  18574. </member>
  18575. <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">
  18576. <summary>
  18577. Actually do the writing of the xml
  18578. </summary>
  18579. <param name="writer">the writer to use</param>
  18580. <param name="loggingEvent">the event to write</param>
  18581. <remarks>
  18582. <para>
  18583. Generate XML that is compatible with the log4j schema.
  18584. </para>
  18585. </remarks>
  18586. </member>
  18587. <member name="P:log4net.Layout.XmlLayoutSchemaLog4j.Version">
  18588. <summary>
  18589. The version of the log4j schema to use.
  18590. </summary>
  18591. <remarks>
  18592. <para>
  18593. Only version 1.2 of the log4j schema is supported.
  18594. </para>
  18595. </remarks>
  18596. </member>
  18597. <member name="T:log4net.ObjectRenderer.DefaultRenderer">
  18598. <summary>
  18599. The default object Renderer.
  18600. </summary>
  18601. <remarks>
  18602. <para>
  18603. The default renderer supports rendering objects and collections to strings.
  18604. </para>
  18605. <para>
  18606. See the <see cref="M:log4net.ObjectRenderer.DefaultRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)"/> method for details of the output.
  18607. </para>
  18608. </remarks>
  18609. <author>Nicko Cadell</author>
  18610. <author>Gert Driesen</author>
  18611. </member>
  18612. <member name="T:log4net.ObjectRenderer.IObjectRenderer">
  18613. <summary>
  18614. Implement this interface in order to render objects as strings
  18615. </summary>
  18616. <remarks>
  18617. <para>
  18618. Certain types require special case conversion to
  18619. string form. This conversion is done by an object renderer.
  18620. Object renderers implement the <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>
  18621. interface.
  18622. </para>
  18623. </remarks>
  18624. <author>Nicko Cadell</author>
  18625. <author>Gert Driesen</author>
  18626. </member>
  18627. <member name="M:log4net.ObjectRenderer.IObjectRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)">
  18628. <summary>
  18629. Render the object <paramref name="obj"/> to a string
  18630. </summary>
  18631. <param name="rendererMap">The map used to lookup renderers</param>
  18632. <param name="obj">The object to render</param>
  18633. <param name="writer">The writer to render to</param>
  18634. <remarks>
  18635. <para>
  18636. Render the object <paramref name="obj"/> to a
  18637. string.
  18638. </para>
  18639. <para>
  18640. The <paramref name="rendererMap"/> parameter is
  18641. provided to lookup and render other objects. This is
  18642. very useful where <paramref name="obj"/> contains
  18643. nested objects of unknown type. The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)"/>
  18644. method can be used to render these objects.
  18645. </para>
  18646. </remarks>
  18647. </member>
  18648. <member name="M:log4net.ObjectRenderer.DefaultRenderer.#ctor">
  18649. <summary>
  18650. Default constructor
  18651. </summary>
  18652. <remarks>
  18653. <para>
  18654. Default constructor
  18655. </para>
  18656. </remarks>
  18657. </member>
  18658. <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)">
  18659. <summary>
  18660. Render the object <paramref name="obj"/> to a string
  18661. </summary>
  18662. <param name="rendererMap">The map used to lookup renderers</param>
  18663. <param name="obj">The object to render</param>
  18664. <param name="writer">The writer to render to</param>
  18665. <remarks>
  18666. <para>
  18667. Render the object <paramref name="obj"/> to a string.
  18668. </para>
  18669. <para>
  18670. The <paramref name="rendererMap"/> parameter is
  18671. provided to lookup and render other objects. This is
  18672. very useful where <paramref name="obj"/> contains
  18673. nested objects of unknown type. The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)"/>
  18674. method can be used to render these objects.
  18675. </para>
  18676. <para>
  18677. The default renderer supports rendering objects to strings as follows:
  18678. </para>
  18679. <list type="table">
  18680. <listheader>
  18681. <term>Value</term>
  18682. <description>Rendered String</description>
  18683. </listheader>
  18684. <item>
  18685. <term><c>null</c></term>
  18686. <description>
  18687. <para>"(null)"</para>
  18688. </description>
  18689. </item>
  18690. <item>
  18691. <term><see cref="T:System.Array"/></term>
  18692. <description>
  18693. <para>
  18694. For a one dimensional array this is the
  18695. array type name, an open brace, followed by a comma
  18696. separated list of the elements (using the appropriate
  18697. renderer), followed by a close brace.
  18698. </para>
  18699. <para>
  18700. For example: <c>int[] {1, 2, 3}</c>.
  18701. </para>
  18702. <para>
  18703. If the array is not one dimensional the
  18704. <c>Array.ToString()</c> is returned.
  18705. </para>
  18706. </description>
  18707. </item>
  18708. <item>
  18709. <term><see cref="T:System.Collections.IEnumerable"/>, <see cref="T:System.Collections.ICollection"/> &amp; <see cref="T:System.Collections.IEnumerator"/></term>
  18710. <description>
  18711. <para>
  18712. Rendered as an open brace, followed by a comma
  18713. separated list of the elements (using the appropriate
  18714. renderer), followed by a close brace.
  18715. </para>
  18716. <para>
  18717. For example: <c>{a, b, c}</c>.
  18718. </para>
  18719. <para>
  18720. All collection classes that implement <see cref="T:System.Collections.ICollection"/> its subclasses,
  18721. or generic equivalents all implement the <see cref="T:System.Collections.IEnumerable"/> interface.
  18722. </para>
  18723. </description>
  18724. </item>
  18725. <item>
  18726. <term><see cref="T:System.Collections.DictionaryEntry"/></term>
  18727. <description>
  18728. <para>
  18729. Rendered as the key, an equals sign ('='), and the value (using the appropriate
  18730. renderer).
  18731. </para>
  18732. <para>
  18733. For example: <c>key=value</c>.
  18734. </para>
  18735. </description>
  18736. </item>
  18737. <item>
  18738. <term>other</term>
  18739. <description>
  18740. <para><c>Object.ToString()</c></para>
  18741. </description>
  18742. </item>
  18743. </list>
  18744. </remarks>
  18745. </member>
  18746. <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderArray(log4net.ObjectRenderer.RendererMap,System.Array,System.IO.TextWriter)">
  18747. <summary>
  18748. Render the array argument into a string
  18749. </summary>
  18750. <param name="rendererMap">The map used to lookup renderers</param>
  18751. <param name="array">the array to render</param>
  18752. <param name="writer">The writer to render to</param>
  18753. <remarks>
  18754. <para>
  18755. For a one dimensional array this is the
  18756. array type name, an open brace, followed by a comma
  18757. separated list of the elements (using the appropriate
  18758. renderer), followed by a close brace. For example:
  18759. <c>int[] {1, 2, 3}</c>.
  18760. </para>
  18761. <para>
  18762. If the array is not one dimensional the
  18763. <c>Array.ToString()</c> is returned.
  18764. </para>
  18765. </remarks>
  18766. </member>
  18767. <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderEnumerator(log4net.ObjectRenderer.RendererMap,System.Collections.IEnumerator,System.IO.TextWriter)">
  18768. <summary>
  18769. Render the enumerator argument into a string
  18770. </summary>
  18771. <param name="rendererMap">The map used to lookup renderers</param>
  18772. <param name="enumerator">the enumerator to render</param>
  18773. <param name="writer">The writer to render to</param>
  18774. <remarks>
  18775. <para>
  18776. Rendered as an open brace, followed by a comma
  18777. separated list of the elements (using the appropriate
  18778. renderer), followed by a close brace. For example:
  18779. <c>{a, b, c}</c>.
  18780. </para>
  18781. </remarks>
  18782. </member>
  18783. <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderDictionaryEntry(log4net.ObjectRenderer.RendererMap,System.Collections.DictionaryEntry,System.IO.TextWriter)">
  18784. <summary>
  18785. Render the DictionaryEntry argument into a string
  18786. </summary>
  18787. <param name="rendererMap">The map used to lookup renderers</param>
  18788. <param name="entry">the DictionaryEntry to render</param>
  18789. <param name="writer">The writer to render to</param>
  18790. <remarks>
  18791. <para>
  18792. Render the key, an equals sign ('='), and the value (using the appropriate
  18793. renderer). For example: <c>key=value</c>.
  18794. </para>
  18795. </remarks>
  18796. </member>
  18797. <member name="T:log4net.ObjectRenderer.RendererMap">
  18798. <summary>
  18799. Map class objects to an <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>.
  18800. </summary>
  18801. <remarks>
  18802. <para>
  18803. Maintains a mapping between types that require special
  18804. rendering and the <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> that
  18805. is used to render them.
  18806. </para>
  18807. <para>
  18808. The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)"/> method is used to render an
  18809. <c>object</c> using the appropriate renderers defined in this map.
  18810. </para>
  18811. </remarks>
  18812. <author>Nicko Cadell</author>
  18813. <author>Gert Driesen</author>
  18814. </member>
  18815. <member name="M:log4net.ObjectRenderer.RendererMap.#ctor">
  18816. <summary>
  18817. Default Constructor
  18818. </summary>
  18819. <remarks>
  18820. <para>
  18821. Default constructor.
  18822. </para>
  18823. </remarks>
  18824. </member>
  18825. <member name="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)">
  18826. <summary>
  18827. Render <paramref name="obj"/> using the appropriate renderer.
  18828. </summary>
  18829. <param name="obj">the object to render to a string</param>
  18830. <returns>the object rendered as a string</returns>
  18831. <remarks>
  18832. <para>
  18833. This is a convenience method used to render an object to a string.
  18834. The alternative method <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)"/>
  18835. should be used when streaming output to a <see cref="T:System.IO.TextWriter"/>.
  18836. </para>
  18837. </remarks>
  18838. </member>
  18839. <member name="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)">
  18840. <summary>
  18841. Render <paramref name="obj"/> using the appropriate renderer.
  18842. </summary>
  18843. <param name="obj">the object to render to a string</param>
  18844. <param name="writer">The writer to render to</param>
  18845. <remarks>
  18846. <para>
  18847. Find the appropriate renderer for the type of the
  18848. <paramref name="obj"/> parameter. This is accomplished by calling the
  18849. <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/> method. Once a renderer is found, it is
  18850. applied on the object <paramref name="obj"/> and the result is returned
  18851. as a <see cref="T:System.String"/>.
  18852. </para>
  18853. </remarks>
  18854. </member>
  18855. <member name="M:log4net.ObjectRenderer.RendererMap.Get(System.Object)">
  18856. <summary>
  18857. Gets the renderer for the specified object type
  18858. </summary>
  18859. <param name="obj">the object to lookup the renderer for</param>
  18860. <returns>the renderer for <paramref name="obj"/></returns>
  18861. <remarks>
  18862. <param>
  18863. Gets the renderer for the specified object type.
  18864. </param>
  18865. <param>
  18866. Syntactic sugar method that calls <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/>
  18867. with the type of the object parameter.
  18868. </param>
  18869. </remarks>
  18870. </member>
  18871. <member name="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)">
  18872. <summary>
  18873. Gets the renderer for the specified type
  18874. </summary>
  18875. <param name="type">the type to lookup the renderer for</param>
  18876. <returns>the renderer for the specified type</returns>
  18877. <remarks>
  18878. <para>
  18879. Returns the renderer for the specified type.
  18880. If no specific renderer has been defined the
  18881. <see cref="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer"/> will be returned.
  18882. </para>
  18883. </remarks>
  18884. </member>
  18885. <member name="M:log4net.ObjectRenderer.RendererMap.SearchTypeAndInterfaces(System.Type)">
  18886. <summary>
  18887. Internal function to recursively search interfaces
  18888. </summary>
  18889. <param name="type">the type to lookup the renderer for</param>
  18890. <returns>the renderer for the specified type</returns>
  18891. </member>
  18892. <member name="M:log4net.ObjectRenderer.RendererMap.Clear">
  18893. <summary>
  18894. Clear the map of renderers
  18895. </summary>
  18896. <remarks>
  18897. <para>
  18898. Clear the custom renderers defined by using
  18899. <see cref="M:log4net.ObjectRenderer.RendererMap.Put(System.Type,log4net.ObjectRenderer.IObjectRenderer)"/>. The <see cref="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer"/>
  18900. cannot be removed.
  18901. </para>
  18902. </remarks>
  18903. </member>
  18904. <member name="M:log4net.ObjectRenderer.RendererMap.Put(System.Type,log4net.ObjectRenderer.IObjectRenderer)">
  18905. <summary>
  18906. Register an <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> for <paramref name="typeToRender"/>.
  18907. </summary>
  18908. <param name="typeToRender">the type that will be rendered by <paramref name="renderer"/></param>
  18909. <param name="renderer">the renderer for <paramref name="typeToRender"/></param>
  18910. <remarks>
  18911. <para>
  18912. Register an object renderer for a specific source type.
  18913. This renderer will be returned from a call to <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/>
  18914. specifying the same <paramref name="typeToRender"/> as an argument.
  18915. </para>
  18916. </remarks>
  18917. </member>
  18918. <member name="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer">
  18919. <summary>
  18920. Get the default renderer instance
  18921. </summary>
  18922. <value>the default renderer</value>
  18923. <remarks>
  18924. <para>
  18925. Get the default renderer
  18926. </para>
  18927. </remarks>
  18928. </member>
  18929. <member name="T:log4net.Plugin.IPlugin">
  18930. <summary>
  18931. Interface implemented by logger repository plugins.
  18932. </summary>
  18933. <remarks>
  18934. <para>
  18935. Plugins define additional behavior that can be associated
  18936. with a <see cref="T:log4net.Repository.ILoggerRepository"/>.
  18937. The <see cref="T:log4net.Plugin.PluginMap"/> held by the <see cref="P:log4net.Repository.ILoggerRepository.PluginMap"/>
  18938. property is used to store the plugins for a repository.
  18939. </para>
  18940. <para>
  18941. The <c>log4net.Config.PluginAttribute</c> can be used to
  18942. attach plugins to repositories created using configuration
  18943. attributes.
  18944. </para>
  18945. </remarks>
  18946. <author>Nicko Cadell</author>
  18947. <author>Gert Driesen</author>
  18948. </member>
  18949. <member name="M:log4net.Plugin.IPlugin.Attach(log4net.Repository.ILoggerRepository)">
  18950. <summary>
  18951. Attaches the plugin to the specified <see cref="T:log4net.Repository.ILoggerRepository"/>.
  18952. </summary>
  18953. <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>
  18954. <remarks>
  18955. <para>
  18956. A plugin may only be attached to a single repository.
  18957. </para>
  18958. <para>
  18959. This method is called when the plugin is attached to the repository.
  18960. </para>
  18961. </remarks>
  18962. </member>
  18963. <member name="M:log4net.Plugin.IPlugin.Shutdown">
  18964. <summary>
  18965. Is called when the plugin is to shutdown.
  18966. </summary>
  18967. <remarks>
  18968. <para>
  18969. This method is called to notify the plugin that
  18970. it should stop operating and should detach from
  18971. the repository.
  18972. </para>
  18973. </remarks>
  18974. </member>
  18975. <member name="P:log4net.Plugin.IPlugin.Name">
  18976. <summary>
  18977. Gets the name of the plugin.
  18978. </summary>
  18979. <value>
  18980. The name of the plugin.
  18981. </value>
  18982. <remarks>
  18983. <para>
  18984. Plugins are stored in the <see cref="T:log4net.Plugin.PluginMap"/>
  18985. keyed by name. Each plugin instance attached to a
  18986. repository must be a unique name.
  18987. </para>
  18988. </remarks>
  18989. </member>
  18990. <member name="T:log4net.Plugin.PluginCollection">
  18991. <summary>
  18992. A strongly-typed collection of <see cref="T:log4net.Plugin.IPlugin"/> objects.
  18993. </summary>
  18994. <author>Nicko Cadell</author>
  18995. </member>
  18996. <member name="M:log4net.Plugin.PluginCollection.ReadOnly(log4net.Plugin.PluginCollection)">
  18997. <summary>
  18998. Creates a read-only wrapper for a <c>PluginCollection</c> instance.
  18999. </summary>
  19000. <param name="list">list to create a readonly wrapper arround</param>
  19001. <returns>
  19002. A <c>PluginCollection</c> wrapper that is read-only.
  19003. </returns>
  19004. </member>
  19005. <member name="M:log4net.Plugin.PluginCollection.#ctor">
  19006. <summary>
  19007. Initializes a new instance of the <c>PluginCollection</c> class
  19008. that is empty and has the default initial capacity.
  19009. </summary>
  19010. </member>
  19011. <member name="M:log4net.Plugin.PluginCollection.#ctor(System.Int32)">
  19012. <summary>
  19013. Initializes a new instance of the <c>PluginCollection</c> class
  19014. that has the specified initial capacity.
  19015. </summary>
  19016. <param name="capacity">
  19017. The number of elements that the new <c>PluginCollection</c> is initially capable of storing.
  19018. </param>
  19019. </member>
  19020. <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.PluginCollection)">
  19021. <summary>
  19022. Initializes a new instance of the <c>PluginCollection</c> class
  19023. that contains elements copied from the specified <c>PluginCollection</c>.
  19024. </summary>
  19025. <param name="c">The <c>PluginCollection</c> whose elements are copied to the new collection.</param>
  19026. </member>
  19027. <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.IPlugin[])">
  19028. <summary>
  19029. Initializes a new instance of the <c>PluginCollection</c> class
  19030. that contains elements copied from the specified <see cref="T:log4net.Plugin.IPlugin"/> array.
  19031. </summary>
  19032. <param name="a">The <see cref="T:log4net.Plugin.IPlugin"/> array whose elements are copied to the new list.</param>
  19033. </member>
  19034. <member name="M:log4net.Plugin.PluginCollection.#ctor(System.Collections.ICollection)">
  19035. <summary>
  19036. Initializes a new instance of the <c>PluginCollection</c> class
  19037. that contains elements copied from the specified <see cref="T:log4net.Plugin.IPlugin"/> collection.
  19038. </summary>
  19039. <param name="col">The <see cref="T:log4net.Plugin.IPlugin"/> collection whose elements are copied to the new list.</param>
  19040. </member>
  19041. <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.PluginCollection.Tag)">
  19042. <summary>
  19043. Allow subclasses to avoid our default constructors
  19044. </summary>
  19045. <param name="tag"></param>
  19046. <exclude/>
  19047. </member>
  19048. <member name="M:log4net.Plugin.PluginCollection.CopyTo(log4net.Plugin.IPlugin[])">
  19049. <summary>
  19050. Copies the entire <c>PluginCollection</c> to a one-dimensional
  19051. <see cref="T:log4net.Plugin.IPlugin"/> array.
  19052. </summary>
  19053. <param name="array">The one-dimensional <see cref="T:log4net.Plugin.IPlugin"/> array to copy to.</param>
  19054. </member>
  19055. <member name="M:log4net.Plugin.PluginCollection.CopyTo(log4net.Plugin.IPlugin[],System.Int32)">
  19056. <summary>
  19057. Copies the entire <c>PluginCollection</c> to a one-dimensional
  19058. <see cref="T:log4net.Plugin.IPlugin"/> array, starting at the specified index of the target array.
  19059. </summary>
  19060. <param name="array">The one-dimensional <see cref="T:log4net.Plugin.IPlugin"/> array to copy to.</param>
  19061. <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>
  19062. </member>
  19063. <member name="M:log4net.Plugin.PluginCollection.Add(log4net.Plugin.IPlugin)">
  19064. <summary>
  19065. Adds a <see cref="T:log4net.Plugin.IPlugin"/> to the end of the <c>PluginCollection</c>.
  19066. </summary>
  19067. <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to be added to the end of the <c>PluginCollection</c>.</param>
  19068. <returns>The index at which the value has been added.</returns>
  19069. </member>
  19070. <member name="M:log4net.Plugin.PluginCollection.Clear">
  19071. <summary>
  19072. Removes all elements from the <c>PluginCollection</c>.
  19073. </summary>
  19074. </member>
  19075. <member name="M:log4net.Plugin.PluginCollection.Clone">
  19076. <summary>
  19077. Creates a shallow copy of the <see cref="T:log4net.Plugin.PluginCollection"/>.
  19078. </summary>
  19079. <returns>A new <see cref="T:log4net.Plugin.PluginCollection"/> with a shallow copy of the collection data.</returns>
  19080. </member>
  19081. <member name="M:log4net.Plugin.PluginCollection.Contains(log4net.Plugin.IPlugin)">
  19082. <summary>
  19083. Determines whether a given <see cref="T:log4net.Plugin.IPlugin"/> is in the <c>PluginCollection</c>.
  19084. </summary>
  19085. <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to check for.</param>
  19086. <returns><c>true</c> if <paramref name="item"/> is found in the <c>PluginCollection</c>; otherwise, <c>false</c>.</returns>
  19087. </member>
  19088. <member name="M:log4net.Plugin.PluginCollection.IndexOf(log4net.Plugin.IPlugin)">
  19089. <summary>
  19090. Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Plugin.IPlugin"/>
  19091. in the <c>PluginCollection</c>.
  19092. </summary>
  19093. <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to locate in the <c>PluginCollection</c>.</param>
  19094. <returns>
  19095. The zero-based index of the first occurrence of <paramref name="item"/>
  19096. in the entire <c>PluginCollection</c>, if found; otherwise, -1.
  19097. </returns>
  19098. </member>
  19099. <member name="M:log4net.Plugin.PluginCollection.Insert(System.Int32,log4net.Plugin.IPlugin)">
  19100. <summary>
  19101. Inserts an element into the <c>PluginCollection</c> at the specified index.
  19102. </summary>
  19103. <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>
  19104. <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to insert.</param>
  19105. <exception cref="T:System.ArgumentOutOfRangeException">
  19106. <para><paramref name="index"/> is less than zero</para>
  19107. <para>-or-</para>
  19108. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>
  19109. </exception>
  19110. </member>
  19111. <member name="M:log4net.Plugin.PluginCollection.Remove(log4net.Plugin.IPlugin)">
  19112. <summary>
  19113. Removes the first occurrence of a specific <see cref="T:log4net.Plugin.IPlugin"/> from the <c>PluginCollection</c>.
  19114. </summary>
  19115. <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to remove from the <c>PluginCollection</c>.</param>
  19116. <exception cref="T:System.ArgumentException">
  19117. The specified <see cref="T:log4net.Plugin.IPlugin"/> was not found in the <c>PluginCollection</c>.
  19118. </exception>
  19119. </member>
  19120. <member name="M:log4net.Plugin.PluginCollection.RemoveAt(System.Int32)">
  19121. <summary>
  19122. Removes the element at the specified index of the <c>PluginCollection</c>.
  19123. </summary>
  19124. <param name="index">The zero-based index of the element to remove.</param>
  19125. <exception cref="T:System.ArgumentOutOfRangeException">
  19126. <para><paramref name="index"/> is less than zero.</para>
  19127. <para>-or-</para>
  19128. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>
  19129. </exception>
  19130. </member>
  19131. <member name="M:log4net.Plugin.PluginCollection.GetEnumerator">
  19132. <summary>
  19133. Returns an enumerator that can iterate through the <c>PluginCollection</c>.
  19134. </summary>
  19135. <returns>An <see cref="T:log4net.Plugin.PluginCollection.Enumerator"/> for the entire <c>PluginCollection</c>.</returns>
  19136. </member>
  19137. <member name="M:log4net.Plugin.PluginCollection.AddRange(log4net.Plugin.PluginCollection)">
  19138. <summary>
  19139. Adds the elements of another <c>PluginCollection</c> to the current <c>PluginCollection</c>.
  19140. </summary>
  19141. <param name="x">The <c>PluginCollection</c> whose elements should be added to the end of the current <c>PluginCollection</c>.</param>
  19142. <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>
  19143. </member>
  19144. <member name="M:log4net.Plugin.PluginCollection.AddRange(log4net.Plugin.IPlugin[])">
  19145. <summary>
  19146. Adds the elements of a <see cref="T:log4net.Plugin.IPlugin"/> array to the current <c>PluginCollection</c>.
  19147. </summary>
  19148. <param name="x">The <see cref="T:log4net.Plugin.IPlugin"/> array whose elements should be added to the end of the <c>PluginCollection</c>.</param>
  19149. <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>
  19150. </member>
  19151. <member name="M:log4net.Plugin.PluginCollection.AddRange(System.Collections.ICollection)">
  19152. <summary>
  19153. Adds the elements of a <see cref="T:log4net.Plugin.IPlugin"/> collection to the current <c>PluginCollection</c>.
  19154. </summary>
  19155. <param name="col">The <see cref="T:log4net.Plugin.IPlugin"/> collection whose elements should be added to the end of the <c>PluginCollection</c>.</param>
  19156. <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>
  19157. </member>
  19158. <member name="M:log4net.Plugin.PluginCollection.TrimToSize">
  19159. <summary>
  19160. Sets the capacity to the actual number of elements.
  19161. </summary>
  19162. </member>
  19163. <member name="M:log4net.Plugin.PluginCollection.ValidateIndex(System.Int32)">
  19164. <exception cref="T:System.ArgumentOutOfRangeException">
  19165. <para><paramref name="index"/> is less than zero.</para>
  19166. <para>-or-</para>
  19167. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>
  19168. </exception>
  19169. </member>
  19170. <member name="M:log4net.Plugin.PluginCollection.ValidateIndex(System.Int32,System.Boolean)">
  19171. <exception cref="T:System.ArgumentOutOfRangeException">
  19172. <para><paramref name="index"/> is less than zero.</para>
  19173. <para>-or-</para>
  19174. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>
  19175. </exception>
  19176. </member>
  19177. <member name="P:log4net.Plugin.PluginCollection.Count">
  19178. <summary>
  19179. Gets the number of elements actually contained in the <c>PluginCollection</c>.
  19180. </summary>
  19181. </member>
  19182. <member name="P:log4net.Plugin.PluginCollection.IsSynchronized">
  19183. <summary>
  19184. Gets a value indicating whether access to the collection is synchronized (thread-safe).
  19185. </summary>
  19186. <returns>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</returns>
  19187. </member>
  19188. <member name="P:log4net.Plugin.PluginCollection.SyncRoot">
  19189. <summary>
  19190. Gets an object that can be used to synchronize access to the collection.
  19191. </summary>
  19192. <value>
  19193. An object that can be used to synchronize access to the collection.
  19194. </value>
  19195. </member>
  19196. <member name="P:log4net.Plugin.PluginCollection.Item(System.Int32)">
  19197. <summary>
  19198. Gets or sets the <see cref="T:log4net.Plugin.IPlugin"/> at the specified index.
  19199. </summary>
  19200. <value>
  19201. The <see cref="T:log4net.Plugin.IPlugin"/> at the specified index.
  19202. </value>
  19203. <param name="index">The zero-based index of the element to get or set.</param>
  19204. <exception cref="T:System.ArgumentOutOfRangeException">
  19205. <para><paramref name="index"/> is less than zero.</para>
  19206. <para>-or-</para>
  19207. <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>
  19208. </exception>
  19209. </member>
  19210. <member name="P:log4net.Plugin.PluginCollection.IsFixedSize">
  19211. <summary>
  19212. Gets a value indicating whether the collection has a fixed size.
  19213. </summary>
  19214. <value><c>true</c> if the collection has a fixed size; otherwise, <c>false</c>. The default is <c>false</c>.</value>
  19215. </member>
  19216. <member name="P:log4net.Plugin.PluginCollection.IsReadOnly">
  19217. <summary>
  19218. Gets a value indicating whether the IList is read-only.
  19219. </summary>
  19220. <value><c>true</c> if the collection is read-only; otherwise, <c>false</c>. The default is <c>false</c>.</value>
  19221. </member>
  19222. <member name="P:log4net.Plugin.PluginCollection.Capacity">
  19223. <summary>
  19224. Gets or sets the number of elements the <c>PluginCollection</c> can contain.
  19225. </summary>
  19226. <value>
  19227. The number of elements the <c>PluginCollection</c> can contain.
  19228. </value>
  19229. </member>
  19230. <member name="T:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator">
  19231. <summary>
  19232. Supports type-safe iteration over a <see cref="T:log4net.Plugin.PluginCollection"/>.
  19233. </summary>
  19234. <exclude/>
  19235. </member>
  19236. <member name="M:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.MoveNext">
  19237. <summary>
  19238. Advances the enumerator to the next element in the collection.
  19239. </summary>
  19240. <returns>
  19241. <c>true</c> if the enumerator was successfully advanced to the next element;
  19242. <c>false</c> if the enumerator has passed the end of the collection.
  19243. </returns>
  19244. <exception cref="T:System.InvalidOperationException">
  19245. The collection was modified after the enumerator was created.
  19246. </exception>
  19247. </member>
  19248. <member name="M:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.Reset">
  19249. <summary>
  19250. Sets the enumerator to its initial position, before the first element in the collection.
  19251. </summary>
  19252. </member>
  19253. <member name="P:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.Current">
  19254. <summary>
  19255. Gets the current element in the collection.
  19256. </summary>
  19257. </member>
  19258. <member name="T:log4net.Plugin.PluginCollection.Tag">
  19259. <summary>
  19260. Type visible only to our subclasses
  19261. Used to access protected constructor
  19262. </summary>
  19263. <exclude/>
  19264. </member>
  19265. <member name="F:log4net.Plugin.PluginCollection.Tag.Default">
  19266. <summary>
  19267. A value
  19268. </summary>
  19269. </member>
  19270. <member name="T:log4net.Plugin.PluginCollection.Enumerator">
  19271. <summary>
  19272. Supports simple iteration over a <see cref="T:log4net.Plugin.PluginCollection"/>.
  19273. </summary>
  19274. <exclude/>
  19275. </member>
  19276. <member name="M:log4net.Plugin.PluginCollection.Enumerator.#ctor(log4net.Plugin.PluginCollection)">
  19277. <summary>
  19278. Initializes a new instance of the <c>Enumerator</c> class.
  19279. </summary>
  19280. <param name="tc"></param>
  19281. </member>
  19282. <member name="M:log4net.Plugin.PluginCollection.Enumerator.MoveNext">
  19283. <summary>
  19284. Advances the enumerator to the next element in the collection.
  19285. </summary>
  19286. <returns>
  19287. <c>true</c> if the enumerator was successfully advanced to the next element;
  19288. <c>false</c> if the enumerator has passed the end of the collection.
  19289. </returns>
  19290. <exception cref="T:System.InvalidOperationException">
  19291. The collection was modified after the enumerator was created.
  19292. </exception>
  19293. </member>
  19294. <member name="M:log4net.Plugin.PluginCollection.Enumerator.Reset">
  19295. <summary>
  19296. Sets the enumerator to its initial position, before the first element in the collection.
  19297. </summary>
  19298. </member>
  19299. <member name="P:log4net.Plugin.PluginCollection.Enumerator.Current">
  19300. <summary>
  19301. Gets the current element in the collection.
  19302. </summary>
  19303. <value>
  19304. The current element in the collection.
  19305. </value>
  19306. </member>
  19307. <member name="T:log4net.Plugin.PluginCollection.ReadOnlyPluginCollection">
  19308. <exclude/>
  19309. </member>
  19310. <member name="T:log4net.Plugin.PluginMap">
  19311. <summary>
  19312. Map of repository plugins.
  19313. </summary>
  19314. <remarks>
  19315. <para>
  19316. This class is a name keyed map of the plugins that are
  19317. attached to a repository.
  19318. </para>
  19319. </remarks>
  19320. <author>Nicko Cadell</author>
  19321. <author>Gert Driesen</author>
  19322. </member>
  19323. <member name="M:log4net.Plugin.PluginMap.#ctor(log4net.Repository.ILoggerRepository)">
  19324. <summary>
  19325. Constructor
  19326. </summary>
  19327. <param name="repository">The repository that the plugins should be attached to.</param>
  19328. <remarks>
  19329. <para>
  19330. Initialize a new instance of the <see cref="T:log4net.Plugin.PluginMap"/> class with a
  19331. repository that the plugins should be attached to.
  19332. </para>
  19333. </remarks>
  19334. </member>
  19335. <member name="M:log4net.Plugin.PluginMap.Add(log4net.Plugin.IPlugin)">
  19336. <summary>
  19337. Adds a <see cref="T:log4net.Plugin.IPlugin"/> to the map.
  19338. </summary>
  19339. <param name="plugin">The <see cref="T:log4net.Plugin.IPlugin"/> to add to the map.</param>
  19340. <remarks>
  19341. <para>
  19342. The <see cref="T:log4net.Plugin.IPlugin"/> will be attached to the repository when added.
  19343. </para>
  19344. <para>
  19345. If there already exists a plugin with the same name
  19346. attached to the repository then the old plugin will
  19347. be <see cref="M:log4net.Plugin.IPlugin.Shutdown"/> and replaced with
  19348. the new plugin.
  19349. </para>
  19350. </remarks>
  19351. </member>
  19352. <member name="M:log4net.Plugin.PluginMap.Remove(log4net.Plugin.IPlugin)">
  19353. <summary>
  19354. Removes a <see cref="T:log4net.Plugin.IPlugin"/> from the map.
  19355. </summary>
  19356. <param name="plugin">The <see cref="T:log4net.Plugin.IPlugin"/> to remove from the map.</param>
  19357. <remarks>
  19358. <para>
  19359. Remove a specific plugin from this map.
  19360. </para>
  19361. </remarks>
  19362. </member>
  19363. <member name="P:log4net.Plugin.PluginMap.Item(System.String)">
  19364. <summary>
  19365. Gets a <see cref="T:log4net.Plugin.IPlugin"/> by name.
  19366. </summary>
  19367. <param name="name">The name of the <see cref="T:log4net.Plugin.IPlugin"/> to lookup.</param>
  19368. <returns>
  19369. The <see cref="T:log4net.Plugin.IPlugin"/> from the map with the name specified, or
  19370. <c>null</c> if no plugin is found.
  19371. </returns>
  19372. <remarks>
  19373. <para>
  19374. Lookup a plugin by name. If the plugin is not found <c>null</c>
  19375. will be returned.
  19376. </para>
  19377. </remarks>
  19378. </member>
  19379. <member name="P:log4net.Plugin.PluginMap.AllPlugins">
  19380. <summary>
  19381. Gets all possible plugins as a list of <see cref="T:log4net.Plugin.IPlugin"/> objects.
  19382. </summary>
  19383. <value>All possible plugins as a list of <see cref="T:log4net.Plugin.IPlugin"/> objects.</value>
  19384. <remarks>
  19385. <para>
  19386. Get a collection of all the plugins defined in this map.
  19387. </para>
  19388. </remarks>
  19389. </member>
  19390. <member name="T:log4net.Plugin.PluginSkeleton">
  19391. <summary>
  19392. Base implementation of <see cref="T:log4net.Plugin.IPlugin"/>
  19393. </summary>
  19394. <remarks>
  19395. <para>
  19396. Default abstract implementation of the <see cref="T:log4net.Plugin.IPlugin"/>
  19397. interface. This base class can be used by implementors
  19398. of the <see cref="T:log4net.Plugin.IPlugin"/> interface.
  19399. </para>
  19400. </remarks>
  19401. <author>Nicko Cadell</author>
  19402. <author>Gert Driesen</author>
  19403. </member>
  19404. <member name="M:log4net.Plugin.PluginSkeleton.#ctor(System.String)">
  19405. <summary>
  19406. Constructor
  19407. </summary>
  19408. <param name="name">the name of the plugin</param>
  19409. <remarks>
  19410. Initializes a new Plugin with the specified name.
  19411. </remarks>
  19412. </member>
  19413. <member name="M:log4net.Plugin.PluginSkeleton.Attach(log4net.Repository.ILoggerRepository)">
  19414. <summary>
  19415. Attaches this plugin to a <see cref="T:log4net.Repository.ILoggerRepository"/>.
  19416. </summary>
  19417. <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>
  19418. <remarks>
  19419. <para>
  19420. A plugin may only be attached to a single repository.
  19421. </para>
  19422. <para>
  19423. This method is called when the plugin is attached to the repository.
  19424. </para>
  19425. </remarks>
  19426. </member>
  19427. <member name="M:log4net.Plugin.PluginSkeleton.Shutdown">
  19428. <summary>
  19429. Is called when the plugin is to shutdown.
  19430. </summary>
  19431. <remarks>
  19432. <para>
  19433. This method is called to notify the plugin that
  19434. it should stop operating and should detach from
  19435. the repository.
  19436. </para>
  19437. </remarks>
  19438. </member>
  19439. <member name="F:log4net.Plugin.PluginSkeleton.m_name">
  19440. <summary>
  19441. The name of this plugin.
  19442. </summary>
  19443. </member>
  19444. <member name="F:log4net.Plugin.PluginSkeleton.m_repository">
  19445. <summary>
  19446. The repository this plugin is attached to.
  19447. </summary>
  19448. </member>
  19449. <member name="P:log4net.Plugin.PluginSkeleton.Name">
  19450. <summary>
  19451. Gets or sets the name of the plugin.
  19452. </summary>
  19453. <value>
  19454. The name of the plugin.
  19455. </value>
  19456. <remarks>
  19457. <para>
  19458. Plugins are stored in the <see cref="T:log4net.Plugin.PluginMap"/>
  19459. keyed by name. Each plugin instance attached to a
  19460. repository must be a unique name.
  19461. </para>
  19462. <para>
  19463. The name of the plugin must not change one the
  19464. plugin has been attached to a repository.
  19465. </para>
  19466. </remarks>
  19467. </member>
  19468. <member name="P:log4net.Plugin.PluginSkeleton.LoggerRepository">
  19469. <summary>
  19470. The repository for this plugin
  19471. </summary>
  19472. <value>
  19473. The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin is attached to.
  19474. </value>
  19475. <remarks>
  19476. <para>
  19477. Gets or sets the <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin is
  19478. attached to.
  19479. </para>
  19480. </remarks>
  19481. </member>
  19482. <member name="T:log4net.Plugin.RemoteLoggingServerPlugin">
  19483. <summary>
  19484. Plugin that listens for events from the <see cref="T:log4net.Appender.RemotingAppender"/>
  19485. </summary>
  19486. <remarks>
  19487. <para>
  19488. This plugin publishes an instance of <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>
  19489. on a specified <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/>. This listens for logging events delivered from
  19490. a remote <see cref="T:log4net.Appender.RemotingAppender"/>.
  19491. </para>
  19492. <para>
  19493. When an event is received it is relogged within the attached repository
  19494. as if it had been raised locally.
  19495. </para>
  19496. </remarks>
  19497. <author>Nicko Cadell</author>
  19498. <author>Gert Driesen</author>
  19499. </member>
  19500. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.#ctor">
  19501. <summary>
  19502. Default constructor
  19503. </summary>
  19504. <remarks>
  19505. <para>
  19506. Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin"/> class.
  19507. </para>
  19508. <para>
  19509. The <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/> property must be set.
  19510. </para>
  19511. </remarks>
  19512. </member>
  19513. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.#ctor(System.String)">
  19514. <summary>
  19515. Construct with sink Uri.
  19516. </summary>
  19517. <param name="sinkUri">The name to publish the sink under in the remoting infrastructure.
  19518. See <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/> for more details.</param>
  19519. <remarks>
  19520. <para>
  19521. Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin"/> class
  19522. with specified name.
  19523. </para>
  19524. </remarks>
  19525. </member>
  19526. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.Attach(log4net.Repository.ILoggerRepository)">
  19527. <summary>
  19528. Attaches this plugin to a <see cref="T:log4net.Repository.ILoggerRepository"/>.
  19529. </summary>
  19530. <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>
  19531. <remarks>
  19532. <para>
  19533. A plugin may only be attached to a single repository.
  19534. </para>
  19535. <para>
  19536. This method is called when the plugin is attached to the repository.
  19537. </para>
  19538. </remarks>
  19539. </member>
  19540. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.Shutdown">
  19541. <summary>
  19542. Is called when the plugin is to shutdown.
  19543. </summary>
  19544. <remarks>
  19545. <para>
  19546. When the plugin is shutdown the remote logging
  19547. sink is disconnected.
  19548. </para>
  19549. </remarks>
  19550. </member>
  19551. <member name="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri">
  19552. <summary>
  19553. Gets or sets the URI of this sink.
  19554. </summary>
  19555. <value>
  19556. The URI of this sink.
  19557. </value>
  19558. <remarks>
  19559. <para>
  19560. This is the name under which the object is marshaled.
  19561. <see cref="M:System.Runtime.Remoting.RemotingServices.Marshal(System.MarshalByRefObject,System.String,System.Type)"/>
  19562. </para>
  19563. </remarks>
  19564. </member>
  19565. <member name="T:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl">
  19566. <summary>
  19567. Delivers <see cref="T:log4net.Core.LoggingEvent"/> objects to a remote sink.
  19568. </summary>
  19569. <remarks>
  19570. <para>
  19571. Internal class used to listen for logging events
  19572. and deliver them to the local repository.
  19573. </para>
  19574. </remarks>
  19575. </member>
  19576. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.#ctor(log4net.Repository.ILoggerRepository)">
  19577. <summary>
  19578. Constructor
  19579. </summary>
  19580. <param name="repository">The repository to log to.</param>
  19581. <remarks>
  19582. <para>
  19583. Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl"/> for the
  19584. specified <see cref="T:log4net.Repository.ILoggerRepository"/>.
  19585. </para>
  19586. </remarks>
  19587. </member>
  19588. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.LogEvents(log4net.Core.LoggingEvent[])">
  19589. <summary>
  19590. Logs the events to the repository.
  19591. </summary>
  19592. <param name="events">The events to log.</param>
  19593. <remarks>
  19594. <para>
  19595. The events passed are logged to the <see cref="T:log4net.Repository.ILoggerRepository"/>
  19596. </para>
  19597. </remarks>
  19598. </member>
  19599. <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.InitializeLifetimeService">
  19600. <summary>
  19601. Obtains a lifetime service object to control the lifetime
  19602. policy for this instance.
  19603. </summary>
  19604. <returns><c>null</c> to indicate that this instance should live forever.</returns>
  19605. <remarks>
  19606. <para>
  19607. Obtains a lifetime service object to control the lifetime
  19608. policy for this instance. This object should live forever
  19609. therefore this implementation returns <c>null</c>.
  19610. </para>
  19611. </remarks>
  19612. </member>
  19613. <member name="F:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.m_repository">
  19614. <summary>
  19615. The underlying <see cref="T:log4net.Repository.ILoggerRepository"/> that events should
  19616. be logged to.
  19617. </summary>
  19618. </member>
  19619. <member name="T:log4net.Repository.Hierarchy.DefaultLoggerFactory">
  19620. <summary>
  19621. Default implementation of <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>
  19622. </summary>
  19623. <remarks>
  19624. <para>
  19625. This default implementation of the <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>
  19626. interface is used to create the default subclass
  19627. of the <see cref="T:log4net.Repository.Hierarchy.Logger"/> object.
  19628. </para>
  19629. </remarks>
  19630. <author>Nicko Cadell</author>
  19631. <author>Gert Driesen</author>
  19632. </member>
  19633. <member name="T:log4net.Repository.Hierarchy.ILoggerFactory">
  19634. <summary>
  19635. Interface abstracts creation of <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances
  19636. </summary>
  19637. <remarks>
  19638. <para>
  19639. This interface is used by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to
  19640. create new <see cref="T:log4net.Repository.Hierarchy.Logger"/> objects.
  19641. </para>
  19642. <para>
  19643. The <see cref="M:log4net.Repository.Hierarchy.ILoggerFactory.CreateLogger(System.String)"/> method is called
  19644. to create a named <see cref="T:log4net.Repository.Hierarchy.Logger"/>.
  19645. </para>
  19646. <para>
  19647. Implement this interface to create new subclasses of <see cref="T:log4net.Repository.Hierarchy.Logger"/>.
  19648. </para>
  19649. </remarks>
  19650. <author>Nicko Cadell</author>
  19651. <author>Gert Driesen</author>
  19652. </member>
  19653. <member name="M:log4net.Repository.Hierarchy.ILoggerFactory.CreateLogger(System.String)">
  19654. <summary>
  19655. Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance
  19656. </summary>
  19657. <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>
  19658. <returns>The <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance for the specified name.</returns>
  19659. <remarks>
  19660. <para>
  19661. Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance with the
  19662. specified name.
  19663. </para>
  19664. <para>
  19665. Called by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to create
  19666. new named <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances.
  19667. </para>
  19668. <para>
  19669. If the <paramref name="name"/> is <c>null</c> then the root logger
  19670. must be returned.
  19671. </para>
  19672. </remarks>
  19673. </member>
  19674. <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.#ctor">
  19675. <summary>
  19676. Default constructor
  19677. </summary>
  19678. <remarks>
  19679. <para>
  19680. Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory"/> class.
  19681. </para>
  19682. </remarks>
  19683. </member>
  19684. <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.CreateLogger(System.String)">
  19685. <summary>
  19686. Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance
  19687. </summary>
  19688. <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>
  19689. <returns>The <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance for the specified name.</returns>
  19690. <remarks>
  19691. <para>
  19692. Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance with the
  19693. specified name.
  19694. </para>
  19695. <para>
  19696. Called by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to create
  19697. new named <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances.
  19698. </para>
  19699. <para>
  19700. If the <paramref name="name"/> is <c>null</c> then the root logger
  19701. must be returned.
  19702. </para>
  19703. </remarks>
  19704. </member>
  19705. <member name="T:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl">
  19706. <summary>
  19707. Default internal subclass of <see cref="T:log4net.Repository.Hierarchy.Logger"/>
  19708. </summary>
  19709. <remarks>
  19710. <para>
  19711. This subclass has no additional behavior over the
  19712. <see cref="T:log4net.Repository.Hierarchy.Logger"/> class but does allow instances
  19713. to be created.
  19714. </para>
  19715. </remarks>
  19716. </member>
  19717. <member name="T:log4net.Repository.Hierarchy.Logger">
  19718. <summary>
  19719. Implementation of <see cref="T:log4net.Core.ILogger"/> used by <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>
  19720. </summary>
  19721. <remarks>
  19722. <para>
  19723. Internal class used to provide implementation of <see cref="T:log4net.Core.ILogger"/>
  19724. interface. Applications should use <see cref="T:log4net.LogManager"/> to get
  19725. logger instances.
  19726. </para>
  19727. <para>
  19728. This is one of the central classes in the log4net implementation. One of the
  19729. distinctive features of log4net are hierarchical loggers and their
  19730. evaluation. The <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/> organizes the <see cref="T:log4net.Repository.Hierarchy.Logger"/>
  19731. instances into a rooted tree hierarchy.
  19732. </para>
  19733. <para>
  19734. The <see cref="T:log4net.Repository.Hierarchy.Logger"/> class is abstract. Only concrete subclasses of
  19735. <see cref="T:log4net.Repository.Hierarchy.Logger"/> can be created. The <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>
  19736. is used to create instances of this type for the <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>.
  19737. </para>
  19738. </remarks>
  19739. <author>Nicko Cadell</author>
  19740. <author>Gert Driesen</author>
  19741. <author>Aspi Havewala</author>
  19742. <author>Douglas de la Torre</author>
  19743. </member>
  19744. <member name="M:log4net.Repository.Hierarchy.Logger.#ctor(System.String)">
  19745. <summary>
  19746. This constructor created a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance and
  19747. sets its name.
  19748. </summary>
  19749. <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>
  19750. <remarks>
  19751. <para>
  19752. This constructor is protected and designed to be used by
  19753. a subclass that is not abstract.
  19754. </para>
  19755. <para>
  19756. Loggers are constructed by <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>
  19757. objects. See <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory"/> for the default
  19758. logger creator.
  19759. </para>
  19760. </remarks>
  19761. </member>
  19762. <member name="M:log4net.Repository.Hierarchy.Logger.AddAppender(log4net.Appender.IAppender)">
  19763. <summary>
  19764. Add <paramref name="newAppender"/> to the list of appenders of this
  19765. Logger instance.
  19766. </summary>
  19767. <param name="newAppender">An appender to add to this logger</param>
  19768. <remarks>
  19769. <para>
  19770. Add <paramref name="newAppender"/> to the list of appenders of this
  19771. Logger instance.
  19772. </para>
  19773. <para>
  19774. If <paramref name="newAppender"/> is already in the list of
  19775. appenders, then it won't be added again.
  19776. </para>
  19777. </remarks>
  19778. </member>
  19779. <member name="M:log4net.Repository.Hierarchy.Logger.GetAppender(System.String)">
  19780. <summary>
  19781. Look for the appender named as <c>name</c>
  19782. </summary>
  19783. <param name="name">The name of the appender to lookup</param>
  19784. <returns>The appender with the name specified, or <c>null</c>.</returns>
  19785. <remarks>
  19786. <para>
  19787. Returns the named appender, or null if the appender is not found.
  19788. </para>
  19789. </remarks>
  19790. </member>
  19791. <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAllAppenders">
  19792. <summary>
  19793. Remove all previously added appenders from this Logger instance.
  19794. </summary>
  19795. <remarks>
  19796. <para>
  19797. Remove all previously added appenders from this Logger instance.
  19798. </para>
  19799. <para>
  19800. This is useful when re-reading configuration information.
  19801. </para>
  19802. </remarks>
  19803. </member>
  19804. <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAppender(log4net.Appender.IAppender)">
  19805. <summary>
  19806. Remove the appender passed as parameter form the list of appenders.
  19807. </summary>
  19808. <param name="appender">The appender to remove</param>
  19809. <returns>The appender removed from the list</returns>
  19810. <remarks>
  19811. <para>
  19812. Remove the appender passed as parameter form the list of appenders.
  19813. The appender removed is not closed.
  19814. If you are discarding the appender you must call
  19815. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  19816. </para>
  19817. </remarks>
  19818. </member>
  19819. <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAppender(System.String)">
  19820. <summary>
  19821. Remove the appender passed as parameter form the list of appenders.
  19822. </summary>
  19823. <param name="name">The name of the appender to remove</param>
  19824. <returns>The appender removed from the list</returns>
  19825. <remarks>
  19826. <para>
  19827. Remove the named appender passed as parameter form the list of appenders.
  19828. The appender removed is not closed.
  19829. If you are discarding the appender you must call
  19830. <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.
  19831. </para>
  19832. </remarks>
  19833. </member>
  19834. <member name="M:log4net.Repository.Hierarchy.Logger.Log(System.Type,log4net.Core.Level,System.Object,System.Exception)">
  19835. <summary>
  19836. This generic form is intended to be used by wrappers.
  19837. </summary>
  19838. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  19839. the stack boundary into the logging system for this call.</param>
  19840. <param name="level">The level of the message to be logged.</param>
  19841. <param name="message">The message object to log.</param>
  19842. <param name="exception">The exception to log, including its stack trace.</param>
  19843. <remarks>
  19844. <para>
  19845. Generate a logging event for the specified <paramref name="level"/> using
  19846. the <paramref name="message"/> and <paramref name="exception"/>.
  19847. </para>
  19848. <para>
  19849. This method must not throw any exception to the caller.
  19850. </para>
  19851. </remarks>
  19852. </member>
  19853. <member name="M:log4net.Repository.Hierarchy.Logger.Log(log4net.Core.LoggingEvent)">
  19854. <summary>
  19855. This is the most generic printing method that is intended to be used
  19856. by wrappers.
  19857. </summary>
  19858. <param name="logEvent">The event being logged.</param>
  19859. <remarks>
  19860. <para>
  19861. Logs the specified logging event through this logger.
  19862. </para>
  19863. <para>
  19864. This method must not throw any exception to the caller.
  19865. </para>
  19866. </remarks>
  19867. </member>
  19868. <member name="M:log4net.Repository.Hierarchy.Logger.IsEnabledFor(log4net.Core.Level)">
  19869. <summary>
  19870. Checks if this logger is enabled for a given <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> passed as parameter.
  19871. </summary>
  19872. <param name="level">The level to check.</param>
  19873. <returns>
  19874. <c>true</c> if this logger is enabled for <c>level</c>, otherwise <c>false</c>.
  19875. </returns>
  19876. <remarks>
  19877. <para>
  19878. Test if this logger is going to log events of the specified <paramref name="level"/>.
  19879. </para>
  19880. <para>
  19881. This method must not throw any exception to the caller.
  19882. </para>
  19883. </remarks>
  19884. </member>
  19885. <member name="M:log4net.Repository.Hierarchy.Logger.CallAppenders(log4net.Core.LoggingEvent)">
  19886. <summary>
  19887. Deliver the <see cref="T:log4net.Core.LoggingEvent"/> to the attached appenders.
  19888. </summary>
  19889. <param name="loggingEvent">The event to log.</param>
  19890. <remarks>
  19891. <para>
  19892. Call the appenders in the hierarchy starting at
  19893. <c>this</c>. If no appenders could be found, emit a
  19894. warning.
  19895. </para>
  19896. <para>
  19897. This method calls all the appenders inherited from the
  19898. hierarchy circumventing any evaluation of whether to log or not
  19899. to log the particular log request.
  19900. </para>
  19901. </remarks>
  19902. </member>
  19903. <member name="M:log4net.Repository.Hierarchy.Logger.CloseNestedAppenders">
  19904. <summary>
  19905. Closes all attached appenders implementing the <see cref="T:log4net.Core.IAppenderAttachable"/> interface.
  19906. </summary>
  19907. <remarks>
  19908. <para>
  19909. Used to ensure that the appenders are correctly shutdown.
  19910. </para>
  19911. </remarks>
  19912. </member>
  19913. <member name="M:log4net.Repository.Hierarchy.Logger.Log(log4net.Core.Level,System.Object,System.Exception)">
  19914. <summary>
  19915. This is the most generic printing method. This generic form is intended to be used by wrappers
  19916. </summary>
  19917. <param name="level">The level of the message to be logged.</param>
  19918. <param name="message">The message object to log.</param>
  19919. <param name="exception">The exception to log, including its stack trace.</param>
  19920. <remarks>
  19921. <para>
  19922. Generate a logging event for the specified <paramref name="level"/> using
  19923. the <paramref name="message"/>.
  19924. </para>
  19925. </remarks>
  19926. </member>
  19927. <member name="M:log4net.Repository.Hierarchy.Logger.ForcedLog(System.Type,log4net.Core.Level,System.Object,System.Exception)">
  19928. <summary>
  19929. Creates a new logging event and logs the event without further checks.
  19930. </summary>
  19931. <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is
  19932. the stack boundary into the logging system for this call.</param>
  19933. <param name="level">The level of the message to be logged.</param>
  19934. <param name="message">The message object to log.</param>
  19935. <param name="exception">The exception to log, including its stack trace.</param>
  19936. <remarks>
  19937. <para>
  19938. Generates a logging event and delivers it to the attached
  19939. appenders.
  19940. </para>
  19941. </remarks>
  19942. </member>
  19943. <member name="M:log4net.Repository.Hierarchy.Logger.ForcedLog(log4net.Core.LoggingEvent)">
  19944. <summary>
  19945. Creates a new logging event and logs the event without further checks.
  19946. </summary>
  19947. <param name="logEvent">The event being logged.</param>
  19948. <remarks>
  19949. <para>
  19950. Delivers the logging event to the attached appenders.
  19951. </para>
  19952. </remarks>
  19953. </member>
  19954. <member name="F:log4net.Repository.Hierarchy.Logger.ThisDeclaringType">
  19955. <summary>
  19956. The fully qualified type of the Logger class.
  19957. </summary>
  19958. </member>
  19959. <member name="F:log4net.Repository.Hierarchy.Logger.m_name">
  19960. <summary>
  19961. The name of this logger.
  19962. </summary>
  19963. </member>
  19964. <member name="F:log4net.Repository.Hierarchy.Logger.m_level">
  19965. <summary>
  19966. The assigned level of this logger.
  19967. </summary>
  19968. <remarks>
  19969. <para>
  19970. The <c>level</c> variable need not be
  19971. assigned a value in which case it is inherited
  19972. form the hierarchy.
  19973. </para>
  19974. </remarks>
  19975. </member>
  19976. <member name="F:log4net.Repository.Hierarchy.Logger.m_parent">
  19977. <summary>
  19978. The parent of this logger.
  19979. </summary>
  19980. <remarks>
  19981. <para>
  19982. The parent of this logger.
  19983. All loggers have at least one ancestor which is the root logger.
  19984. </para>
  19985. </remarks>
  19986. </member>
  19987. <member name="F:log4net.Repository.Hierarchy.Logger.m_hierarchy">
  19988. <summary>
  19989. Loggers need to know what Hierarchy they are in.
  19990. </summary>
  19991. <remarks>
  19992. <para>
  19993. Loggers need to know what Hierarchy they are in.
  19994. The hierarchy that this logger is a member of is stored
  19995. here.
  19996. </para>
  19997. </remarks>
  19998. </member>
  19999. <member name="F:log4net.Repository.Hierarchy.Logger.m_appenderAttachedImpl">
  20000. <summary>
  20001. Helper implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface
  20002. </summary>
  20003. </member>
  20004. <member name="F:log4net.Repository.Hierarchy.Logger.m_additive">
  20005. <summary>
  20006. Flag indicating if child loggers inherit their parents appenders
  20007. </summary>
  20008. <remarks>
  20009. <para>
  20010. Additivity is set to true by default, that is children inherit
  20011. the appenders of their ancestors by default. If this variable is
  20012. set to <c>false</c> then the appenders found in the
  20013. ancestors of this logger are not used. However, the children
  20014. of this logger will inherit its appenders, unless the children
  20015. have their additivity flag set to <c>false</c> too. See
  20016. the user manual for more details.
  20017. </para>
  20018. </remarks>
  20019. </member>
  20020. <member name="F:log4net.Repository.Hierarchy.Logger.m_appenderLock">
  20021. <summary>
  20022. Lock to protect AppenderAttachedImpl variable m_appenderAttachedImpl
  20023. </summary>
  20024. </member>
  20025. <member name="P:log4net.Repository.Hierarchy.Logger.Parent">
  20026. <summary>
  20027. Gets or sets the parent logger in the hierarchy.
  20028. </summary>
  20029. <value>
  20030. The parent logger in the hierarchy.
  20031. </value>
  20032. <remarks>
  20033. <para>
  20034. Part of the Composite pattern that makes the hierarchy.
  20035. The hierarchy is parent linked rather than child linked.
  20036. </para>
  20037. </remarks>
  20038. </member>
  20039. <member name="P:log4net.Repository.Hierarchy.Logger.Additivity">
  20040. <summary>
  20041. Gets or sets a value indicating if child loggers inherit their parent's appenders.
  20042. </summary>
  20043. <value>
  20044. <c>true</c> if child loggers inherit their parent's appenders.
  20045. </value>
  20046. <remarks>
  20047. <para>
  20048. Additivity is set to <c>true</c> by default, that is children inherit
  20049. the appenders of their ancestors by default. If this variable is
  20050. set to <c>false</c> then the appenders found in the
  20051. ancestors of this logger are not used. However, the children
  20052. of this logger will inherit its appenders, unless the children
  20053. have their additivity flag set to <c>false</c> too. See
  20054. the user manual for more details.
  20055. </para>
  20056. </remarks>
  20057. </member>
  20058. <member name="P:log4net.Repository.Hierarchy.Logger.EffectiveLevel">
  20059. <summary>
  20060. Gets the effective level for this logger.
  20061. </summary>
  20062. <returns>The nearest level in the logger hierarchy.</returns>
  20063. <remarks>
  20064. <para>
  20065. Starting from this logger, searches the logger hierarchy for a
  20066. non-null level and returns it. Otherwise, returns the level of the
  20067. root logger.
  20068. </para>
  20069. <para>The Logger class is designed so that this method executes as
  20070. quickly as possible.</para>
  20071. </remarks>
  20072. </member>
  20073. <member name="P:log4net.Repository.Hierarchy.Logger.Hierarchy">
  20074. <summary>
  20075. Gets or sets the <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/> where this
  20076. <c>Logger</c> instance is attached to.
  20077. </summary>
  20078. <value>The hierarchy that this logger belongs to.</value>
  20079. <remarks>
  20080. <para>
  20081. This logger must be attached to a single <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>.
  20082. </para>
  20083. </remarks>
  20084. </member>
  20085. <member name="P:log4net.Repository.Hierarchy.Logger.Level">
  20086. <summary>
  20087. Gets or sets the assigned <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/>, if any, for this Logger.
  20088. </summary>
  20089. <value>
  20090. The <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> of this logger.
  20091. </value>
  20092. <remarks>
  20093. <para>
  20094. The assigned <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> can be <c>null</c>.
  20095. </para>
  20096. </remarks>
  20097. </member>
  20098. <member name="P:log4net.Repository.Hierarchy.Logger.Appenders">
  20099. <summary>
  20100. Get the appenders contained in this logger as an
  20101. <see cref="T:System.Collections.ICollection"/>.
  20102. </summary>
  20103. <returns>A collection of the appenders in this logger</returns>
  20104. <remarks>
  20105. <para>
  20106. Get the appenders contained in this logger as an
  20107. <see cref="T:System.Collections.ICollection"/>. If no appenders
  20108. can be found, then a <see cref="T:log4net.Util.EmptyCollection"/> is returned.
  20109. </para>
  20110. </remarks>
  20111. </member>
  20112. <member name="P:log4net.Repository.Hierarchy.Logger.Name">
  20113. <summary>
  20114. Gets the logger name.
  20115. </summary>
  20116. <value>
  20117. The name of the logger.
  20118. </value>
  20119. <remarks>
  20120. <para>
  20121. The name of this logger
  20122. </para>
  20123. </remarks>
  20124. </member>
  20125. <member name="P:log4net.Repository.Hierarchy.Logger.Repository">
  20126. <summary>
  20127. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this
  20128. <c>Logger</c> instance is attached to.
  20129. </summary>
  20130. <value>
  20131. The <see cref="T:log4net.Repository.ILoggerRepository"/> that this logger belongs to.
  20132. </value>
  20133. <remarks>
  20134. <para>
  20135. Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this
  20136. <c>Logger</c> instance is attached to.
  20137. </para>
  20138. </remarks>
  20139. </member>
  20140. <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl.#ctor(System.String)">
  20141. <summary>
  20142. Construct a new Logger
  20143. </summary>
  20144. <param name="name">the name of the logger</param>
  20145. <remarks>
  20146. <para>
  20147. Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl"/> class
  20148. with the specified name.
  20149. </para>
  20150. </remarks>
  20151. </member>
  20152. <member name="T:log4net.Repository.Hierarchy.LoggerCreationEventHandler">
  20153. <summary>
  20154. Delegate used to handle logger creation event notifications.
  20155. </summary>
  20156. <param name="sender">The <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> in which the <see cref="T:log4net.Repository.Hierarchy.Logger"/> has been created.</param>
  20157. <param name="e">The <see cref="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs"/> event args that hold the <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance that has been created.</param>
  20158. <remarks>
  20159. <para>
  20160. Delegate used to handle logger creation event notifications.
  20161. </para>
  20162. </remarks>
  20163. </member>
  20164. <member name="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs">
  20165. <summary>
  20166. Provides data for the <see cref="E:log4net.Repository.Hierarchy.Hierarchy.LoggerCreatedEvent"/> event.
  20167. </summary>
  20168. <remarks>
  20169. <para>
  20170. A <see cref="E:log4net.Repository.Hierarchy.Hierarchy.LoggerCreatedEvent"/> event is raised every time a
  20171. <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> is created.
  20172. </para>
  20173. </remarks>
  20174. </member>
  20175. <member name="F:log4net.Repository.Hierarchy.LoggerCreationEventArgs.m_log">
  20176. <summary>
  20177. The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> created
  20178. </summary>
  20179. </member>
  20180. <member name="M:log4net.Repository.Hierarchy.LoggerCreationEventArgs.#ctor(log4net.Repository.Hierarchy.Logger)">
  20181. <summary>
  20182. Constructor
  20183. </summary>
  20184. <param name="log">The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.</param>
  20185. <remarks>
  20186. <para>
  20187. Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs"/> event argument
  20188. class,with the specified <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/>.
  20189. </para>
  20190. </remarks>
  20191. </member>
  20192. <member name="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger">
  20193. <summary>
  20194. Gets the <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.
  20195. </summary>
  20196. <value>
  20197. The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.
  20198. </value>
  20199. <remarks>
  20200. <para>
  20201. The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.
  20202. </para>
  20203. </remarks>
  20204. </member>
  20205. <member name="T:log4net.Repository.Hierarchy.Hierarchy">
  20206. <summary>
  20207. Hierarchical organization of loggers
  20208. </summary>
  20209. <remarks>
  20210. <para>
  20211. <i>The casual user should not have to deal with this class
  20212. directly.</i>
  20213. </para>
  20214. <para>
  20215. This class is specialized in retrieving loggers by name and
  20216. also maintaining the logger hierarchy. Implements the
  20217. <see cref="T:log4net.Repository.ILoggerRepository"/> interface.
  20218. </para>
  20219. <para>
  20220. The structure of the logger hierarchy is maintained by the
  20221. <see cref="M:log4net.Repository.Hierarchy.Hierarchy.GetLogger(System.String)"/> method. The hierarchy is such that children
  20222. link to their parent but parents do not have any references to their
  20223. children. Moreover, loggers can be instantiated in any order, in
  20224. particular descendant before ancestor.
  20225. </para>
  20226. <para>
  20227. In case a descendant is created before a particular ancestor,
  20228. then it creates a provision node for the ancestor and adds itself
  20229. to the provision node. Other descendants of the same ancestor add
  20230. themselves to the previously created provision node.
  20231. </para>
  20232. </remarks>
  20233. <author>Nicko Cadell</author>
  20234. <author>Gert Driesen</author>
  20235. </member>
  20236. <member name="T:log4net.Repository.LoggerRepositorySkeleton">
  20237. <summary>
  20238. Base implementation of <see cref="T:log4net.Repository.ILoggerRepository"/>
  20239. </summary>
  20240. <remarks>
  20241. <para>
  20242. Default abstract implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface.
  20243. </para>
  20244. <para>
  20245. Skeleton implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface.
  20246. All <see cref="T:log4net.Repository.ILoggerRepository"/> types can extend this type.
  20247. </para>
  20248. </remarks>
  20249. <author>Nicko Cadell</author>
  20250. <author>Gert Driesen</author>
  20251. </member>
  20252. <member name="T:log4net.Repository.ILoggerRepository">
  20253. <summary>
  20254. Interface implemented by logger repositories.
  20255. </summary>
  20256. <remarks>
  20257. <para>
  20258. This interface is implemented by logger repositories. e.g.
  20259. <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.
  20260. </para>
  20261. <para>
  20262. This interface is used by the <see cref="T:log4net.LogManager"/>
  20263. to obtain <see cref="T:log4net.ILog"/> interfaces.
  20264. </para>
  20265. </remarks>
  20266. <author>Nicko Cadell</author>
  20267. <author>Gert Driesen</author>
  20268. </member>
  20269. <member name="M:log4net.Repository.ILoggerRepository.Exists(System.String)">
  20270. <summary>
  20271. Check if the named logger exists in the repository. If so return
  20272. its reference, otherwise returns <c>null</c>.
  20273. </summary>
  20274. <param name="name">The name of the logger to lookup</param>
  20275. <returns>The Logger object with the name specified</returns>
  20276. <remarks>
  20277. <para>
  20278. If the names logger exists it is returned, otherwise
  20279. <c>null</c> is returned.
  20280. </para>
  20281. </remarks>
  20282. </member>
  20283. <member name="M:log4net.Repository.ILoggerRepository.GetCurrentLoggers">
  20284. <summary>
  20285. Returns all the currently defined loggers as an Array.
  20286. </summary>
  20287. <returns>All the defined loggers</returns>
  20288. <remarks>
  20289. <para>
  20290. Returns all the currently defined loggers as an Array.
  20291. </para>
  20292. </remarks>
  20293. </member>
  20294. <member name="M:log4net.Repository.ILoggerRepository.GetLogger(System.String)">
  20295. <summary>
  20296. Returns a named logger instance
  20297. </summary>
  20298. <param name="name">The name of the logger to retrieve</param>
  20299. <returns>The logger object with the name specified</returns>
  20300. <remarks>
  20301. <para>
  20302. Returns a named logger instance.
  20303. </para>
  20304. <para>
  20305. If a logger of that name already exists, then it will be
  20306. returned. Otherwise, a new logger will be instantiated and
  20307. then linked with its existing ancestors as well as children.
  20308. </para>
  20309. </remarks>
  20310. </member>
  20311. <member name="M:log4net.Repository.ILoggerRepository.Shutdown">
  20312. <summary>Shutdown the repository</summary>
  20313. <remarks>
  20314. <para>
  20315. Shutting down a repository will <i>safely</i> close and remove
  20316. all appenders in all loggers including the root logger.
  20317. </para>
  20318. <para>
  20319. Some appenders need to be closed before the
  20320. application exists. Otherwise, pending logging events might be
  20321. lost.
  20322. </para>
  20323. <para>
  20324. The <see cref="M:log4net.Repository.ILoggerRepository.Shutdown"/> method is careful to close nested
  20325. appenders before closing regular appenders. This is allows
  20326. configurations where a regular appender is attached to a logger
  20327. and again to a nested appender.
  20328. </para>
  20329. </remarks>
  20330. </member>
  20331. <member name="M:log4net.Repository.ILoggerRepository.ResetConfiguration">
  20332. <summary>
  20333. Reset the repositories configuration to a default state
  20334. </summary>
  20335. <remarks>
  20336. <para>
  20337. Reset all values contained in this instance to their
  20338. default state.
  20339. </para>
  20340. <para>
  20341. Existing loggers are not removed. They are just reset.
  20342. </para>
  20343. <para>
  20344. This method should be used sparingly and with care as it will
  20345. block all logging until it is completed.
  20346. </para>
  20347. </remarks>
  20348. </member>
  20349. <member name="M:log4net.Repository.ILoggerRepository.Log(log4net.Core.LoggingEvent)">
  20350. <summary>
  20351. Log the <see cref="T:log4net.Core.LoggingEvent"/> through this repository.
  20352. </summary>
  20353. <param name="logEvent">the event to log</param>
  20354. <remarks>
  20355. <para>
  20356. This method should not normally be used to log.
  20357. The <see cref="T:log4net.ILog"/> interface should be used
  20358. for routine logging. This interface can be obtained
  20359. using the <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method.
  20360. </para>
  20361. <para>
  20362. The <c>logEvent</c> is delivered to the appropriate logger and
  20363. that logger is then responsible for logging the event.
  20364. </para>
  20365. </remarks>
  20366. </member>
  20367. <member name="M:log4net.Repository.ILoggerRepository.GetAppenders">
  20368. <summary>
  20369. Returns all the Appenders that are configured as an Array.
  20370. </summary>
  20371. <returns>All the Appenders</returns>
  20372. <remarks>
  20373. <para>
  20374. Returns all the Appenders that are configured as an Array.
  20375. </para>
  20376. </remarks>
  20377. </member>
  20378. <member name="P:log4net.Repository.ILoggerRepository.Name">
  20379. <summary>
  20380. The name of the repository
  20381. </summary>
  20382. <value>
  20383. The name of the repository
  20384. </value>
  20385. <remarks>
  20386. <para>
  20387. The name of the repository.
  20388. </para>
  20389. </remarks>
  20390. </member>
  20391. <member name="P:log4net.Repository.ILoggerRepository.RendererMap">
  20392. <summary>
  20393. RendererMap accesses the object renderer map for this repository.
  20394. </summary>
  20395. <value>
  20396. RendererMap accesses the object renderer map for this repository.
  20397. </value>
  20398. <remarks>
  20399. <para>
  20400. RendererMap accesses the object renderer map for this repository.
  20401. </para>
  20402. <para>
  20403. The RendererMap holds a mapping between types and
  20404. <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> objects.
  20405. </para>
  20406. </remarks>
  20407. </member>
  20408. <member name="P:log4net.Repository.ILoggerRepository.PluginMap">
  20409. <summary>
  20410. The plugin map for this repository.
  20411. </summary>
  20412. <value>
  20413. The plugin map for this repository.
  20414. </value>
  20415. <remarks>
  20416. <para>
  20417. The plugin map holds the <see cref="T:log4net.Plugin.IPlugin"/> instances
  20418. that have been attached to this repository.
  20419. </para>
  20420. </remarks>
  20421. </member>
  20422. <member name="P:log4net.Repository.ILoggerRepository.LevelMap">
  20423. <summary>
  20424. Get the level map for the Repository.
  20425. </summary>
  20426. <remarks>
  20427. <para>
  20428. Get the level map for the Repository.
  20429. </para>
  20430. <para>
  20431. The level map defines the mappings between
  20432. level names and <see cref="T:log4net.Core.Level"/> objects in
  20433. this repository.
  20434. </para>
  20435. </remarks>
  20436. </member>
  20437. <member name="P:log4net.Repository.ILoggerRepository.Threshold">
  20438. <summary>
  20439. The threshold for all events in this repository
  20440. </summary>
  20441. <value>
  20442. The threshold for all events in this repository
  20443. </value>
  20444. <remarks>
  20445. <para>
  20446. The threshold for all events in this repository.
  20447. </para>
  20448. </remarks>
  20449. </member>
  20450. <member name="P:log4net.Repository.ILoggerRepository.Configured">
  20451. <summary>
  20452. Flag indicates if this repository has been configured.
  20453. </summary>
  20454. <value>
  20455. Flag indicates if this repository has been configured.
  20456. </value>
  20457. <remarks>
  20458. <para>
  20459. Flag indicates if this repository has been configured.
  20460. </para>
  20461. </remarks>
  20462. </member>
  20463. <member name="E:log4net.Repository.ILoggerRepository.ShutdownEvent">
  20464. <summary>
  20465. Event to notify that the repository has been shutdown.
  20466. </summary>
  20467. <value>
  20468. Event to notify that the repository has been shutdown.
  20469. </value>
  20470. <remarks>
  20471. <para>
  20472. Event raised when the repository has been shutdown.
  20473. </para>
  20474. </remarks>
  20475. </member>
  20476. <member name="E:log4net.Repository.ILoggerRepository.ConfigurationReset">
  20477. <summary>
  20478. Event to notify that the repository has had its configuration reset.
  20479. </summary>
  20480. <value>
  20481. Event to notify that the repository has had its configuration reset.
  20482. </value>
  20483. <remarks>
  20484. <para>
  20485. Event raised when the repository's configuration has been
  20486. reset to default.
  20487. </para>
  20488. </remarks>
  20489. </member>
  20490. <member name="E:log4net.Repository.ILoggerRepository.ConfigurationChanged">
  20491. <summary>
  20492. Event to notify that the repository has had its configuration changed.
  20493. </summary>
  20494. <value>
  20495. Event to notify that the repository has had its configuration changed.
  20496. </value>
  20497. <remarks>
  20498. <para>
  20499. Event raised when the repository's configuration has been changed.
  20500. </para>
  20501. </remarks>
  20502. </member>
  20503. <member name="P:log4net.Repository.ILoggerRepository.Properties">
  20504. <summary>
  20505. Repository specific properties
  20506. </summary>
  20507. <value>
  20508. Repository specific properties
  20509. </value>
  20510. <remarks>
  20511. <para>
  20512. These properties can be specified on a repository specific basis.
  20513. </para>
  20514. </remarks>
  20515. </member>
  20516. <member name="M:log4net.Repository.LoggerRepositorySkeleton.#ctor">
  20517. <summary>
  20518. Default Constructor
  20519. </summary>
  20520. <remarks>
  20521. <para>
  20522. Initializes the repository with default (empty) properties.
  20523. </para>
  20524. </remarks>
  20525. </member>
  20526. <member name="M:log4net.Repository.LoggerRepositorySkeleton.#ctor(log4net.Util.PropertiesDictionary)">
  20527. <summary>
  20528. Construct the repository using specific properties
  20529. </summary>
  20530. <param name="properties">the properties to set for this repository</param>
  20531. <remarks>
  20532. <para>
  20533. Initializes the repository with specified properties.
  20534. </para>
  20535. </remarks>
  20536. </member>
  20537. <member name="M:log4net.Repository.LoggerRepositorySkeleton.Exists(System.String)">
  20538. <summary>
  20539. Test if logger exists
  20540. </summary>
  20541. <param name="name">The name of the logger to lookup</param>
  20542. <returns>The Logger object with the name specified</returns>
  20543. <remarks>
  20544. <para>
  20545. Check if the named logger exists in the repository. If so return
  20546. its reference, otherwise returns <c>null</c>.
  20547. </para>
  20548. </remarks>
  20549. </member>
  20550. <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetCurrentLoggers">
  20551. <summary>
  20552. Returns all the currently defined loggers in the repository
  20553. </summary>
  20554. <returns>All the defined loggers</returns>
  20555. <remarks>
  20556. <para>
  20557. Returns all the currently defined loggers in the repository as an Array.
  20558. </para>
  20559. </remarks>
  20560. </member>
  20561. <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetLogger(System.String)">
  20562. <summary>
  20563. Return a new logger instance
  20564. </summary>
  20565. <param name="name">The name of the logger to retrieve</param>
  20566. <returns>The logger object with the name specified</returns>
  20567. <remarks>
  20568. <para>
  20569. Return a new logger instance.
  20570. </para>
  20571. <para>
  20572. If a logger of that name already exists, then it will be
  20573. returned. Otherwise, a new logger will be instantiated and
  20574. then linked with its existing ancestors as well as children.
  20575. </para>
  20576. </remarks>
  20577. </member>
  20578. <member name="M:log4net.Repository.LoggerRepositorySkeleton.Shutdown">
  20579. <summary>
  20580. Shutdown the repository
  20581. </summary>
  20582. <remarks>
  20583. <para>
  20584. Shutdown the repository. Can be overridden in a subclass.
  20585. This base class implementation notifies the <see cref="E:log4net.Repository.LoggerRepositorySkeleton.ShutdownEvent"/>
  20586. listeners and all attached plugins of the shutdown event.
  20587. </para>
  20588. </remarks>
  20589. </member>
  20590. <member name="M:log4net.Repository.LoggerRepositorySkeleton.ResetConfiguration">
  20591. <summary>
  20592. Reset the repositories configuration to a default state
  20593. </summary>
  20594. <remarks>
  20595. <para>
  20596. Reset all values contained in this instance to their
  20597. default state.
  20598. </para>
  20599. <para>
  20600. Existing loggers are not removed. They are just reset.
  20601. </para>
  20602. <para>
  20603. This method should be used sparingly and with care as it will
  20604. block all logging until it is completed.
  20605. </para>
  20606. </remarks>
  20607. </member>
  20608. <member name="M:log4net.Repository.LoggerRepositorySkeleton.Log(log4net.Core.LoggingEvent)">
  20609. <summary>
  20610. Log the logEvent through this repository.
  20611. </summary>
  20612. <param name="logEvent">the event to log</param>
  20613. <remarks>
  20614. <para>
  20615. This method should not normally be used to log.
  20616. The <see cref="T:log4net.ILog"/> interface should be used
  20617. for routine logging. This interface can be obtained
  20618. using the <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method.
  20619. </para>
  20620. <para>
  20621. The <c>logEvent</c> is delivered to the appropriate logger and
  20622. that logger is then responsible for logging the event.
  20623. </para>
  20624. </remarks>
  20625. </member>
  20626. <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetAppenders">
  20627. <summary>
  20628. Returns all the Appenders that are configured as an Array.
  20629. </summary>
  20630. <returns>All the Appenders</returns>
  20631. <remarks>
  20632. <para>
  20633. Returns all the Appenders that are configured as an Array.
  20634. </para>
  20635. </remarks>
  20636. </member>
  20637. <member name="M:log4net.Repository.LoggerRepositorySkeleton.AddRenderer(System.Type,log4net.ObjectRenderer.IObjectRenderer)">
  20638. <summary>
  20639. Adds an object renderer for a specific class.
  20640. </summary>
  20641. <param name="typeToRender">The type that will be rendered by the renderer supplied.</param>
  20642. <param name="rendererInstance">The object render