log4r 1.1.2 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. data/README +2 -2
  2. data/Rakefile +3 -3
  3. data/TODO +0 -34
  4. data/examples/filelog.rb +25 -0
  5. data/examples/logs/TestSize000001.log +576 -0
  6. data/examples/logs/TestSize000002.log +567 -0
  7. data/examples/logs/TestSize000003.log +552 -0
  8. data/examples/logs/TestSize000004.log +552 -0
  9. data/examples/logs/TestSize000005.log +552 -0
  10. data/examples/logs/TestSize000006.log +552 -0
  11. data/examples/logs/TestSize000007.log +552 -0
  12. data/examples/logs/TestSize000008.log +552 -0
  13. data/examples/logs/TestSize000009.log +552 -0
  14. data/examples/logs/TestSize000010.log +552 -0
  15. data/examples/logs/TestSize000011.log +552 -0
  16. data/examples/logs/TestSize000012.log +552 -0
  17. data/examples/logs/TestSize000013.log +552 -0
  18. data/examples/logs/TestSize000014.log +552 -0
  19. data/examples/logs/TestSize000015.log +552 -0
  20. data/examples/logs/TestSize000016.log +552 -0
  21. data/examples/logs/TestSize000017.log +552 -0
  22. data/examples/logs/TestSize000018.log +552 -0
  23. data/examples/logs/TestSize000019.log +535 -0
  24. data/examples/logs/TestSize000020.log +534 -0
  25. data/examples/logs/TestSize000021.log +534 -0
  26. data/examples/logs/TestSize000022.log +534 -0
  27. data/examples/logs/TestSize000023.log +534 -0
  28. data/examples/logs/TestSize000024.log +534 -0
  29. data/examples/logs/TestSize000025.log +534 -0
  30. data/examples/logs/TestSize000026.log +534 -0
  31. data/examples/logs/TestSize000027.log +534 -0
  32. data/examples/logs/TestSize000028.log +534 -0
  33. data/examples/logs/TestSize000029.log +534 -0
  34. data/examples/logs/TestSize000030.log +534 -0
  35. data/examples/logs/TestSize000031.log +534 -0
  36. data/examples/logs/TestSize000032.log +534 -0
  37. data/examples/logs/TestSize000033.log +534 -0
  38. data/examples/logs/TestSize000034.log +534 -0
  39. data/examples/logs/TestSize000035.log +534 -0
  40. data/examples/logs/TestSize000036.log +534 -0
  41. data/examples/logs/TestSize000037.log +534 -0
  42. data/examples/logs/TestSize000038.log +534 -0
  43. data/examples/logs/TestSize000039.log +534 -0
  44. data/examples/logs/TestSize000040.log +534 -0
  45. data/examples/logs/TestSize000041.log +534 -0
  46. data/examples/logs/TestSize000042.log +534 -0
  47. data/examples/logs/TestSize000043.log +534 -0
  48. data/examples/logs/TestSize000044.log +534 -0
  49. data/examples/logs/TestSize000045.log +534 -0
  50. data/examples/logs/TestSize000046.log +534 -0
  51. data/examples/logs/TestSize000047.log +534 -0
  52. data/examples/logs/TestSize000048.log +534 -0
  53. data/examples/logs/TestSize000049.log +534 -0
  54. data/examples/logs/TestSize000050.log +534 -0
  55. data/examples/logs/TestSize000051.log +534 -0
  56. data/examples/logs/TestSize000052.log +534 -0
  57. data/examples/logs/TestSize000053.log +534 -0
  58. data/examples/logs/TestSize000054.log +534 -0
  59. data/examples/logs/TestSize000055.log +534 -0
  60. data/examples/logs/TestSize000056.log +534 -0
  61. data/examples/logs/TestSize000057.log +534 -0
  62. data/examples/logs/TestSize000058.log +534 -0
  63. data/examples/logs/TestSize000059.log +534 -0
  64. data/examples/logs/TestSize000060.log +534 -0
  65. data/examples/logs/TestSize000061.log +534 -0
  66. data/examples/logs/TestSize000062.log +534 -0
  67. data/examples/logs/TestSize000063.log +534 -0
  68. data/examples/logs/TestSize000064.log +534 -0
  69. data/examples/logs/TestSize000065.log +534 -0
  70. data/examples/logs/TestSize000066.log +534 -0
  71. data/examples/logs/TestSize000067.log +534 -0
  72. data/examples/logs/TestSize000068.log +534 -0
  73. data/examples/logs/TestSize000069.log +534 -0
  74. data/examples/logs/TestSize000070.log +534 -0
  75. data/examples/logs/TestSize000071.log +534 -0
  76. data/examples/logs/TestSize000072.log +534 -0
  77. data/examples/logs/TestSize000073.log +534 -0
  78. data/examples/logs/TestSize000074.log +534 -0
  79. data/examples/logs/TestSize000075.log +534 -0
  80. data/examples/logs/TestSize000076.log +534 -0
  81. data/examples/logs/TestSize000077.log +534 -0
  82. data/examples/logs/TestSize000078.log +534 -0
  83. data/examples/logs/TestSize000079.log +534 -0
  84. data/examples/logs/TestSize000080.log +534 -0
  85. data/examples/logs/TestSize000081.log +534 -0
  86. data/examples/logs/TestSize000082.log +534 -0
  87. data/examples/logs/TestSize000083.log +534 -0
  88. data/examples/logs/TestSize000084.log +534 -0
  89. data/examples/logs/TestSize000085.log +534 -0
  90. data/examples/logs/TestSize000086.log +534 -0
  91. data/examples/logs/TestSize000087.log +534 -0
  92. data/examples/logs/TestSize000088.log +534 -0
  93. data/examples/logs/TestSize000089.log +534 -0
  94. data/examples/logs/TestSize000090.log +534 -0
  95. data/examples/logs/TestSize000091.log +534 -0
  96. data/examples/logs/TestSize000092.log +534 -0
  97. data/examples/logs/TestSize000093.log +534 -0
  98. data/examples/logs/TestSize000094.log +534 -0
  99. data/examples/logs/TestSize000095.log +534 -0
  100. data/examples/logs/TestSize000096.log +534 -0
  101. data/examples/logs/TestSize000097.log +534 -0
  102. data/examples/logs/TestSize000098.log +534 -0
  103. data/examples/logs/TestSize000099.log +534 -0
  104. data/examples/logs/TestSize000100.log +534 -0
  105. data/examples/logs/TestSize000101.log +534 -0
  106. data/examples/logs/TestSize000102.log +534 -0
  107. data/examples/logs/TestSize000103.log +534 -0
  108. data/examples/logs/TestSize000104.log +534 -0
  109. data/examples/logs/TestSize000105.log +534 -0
  110. data/examples/logs/TestSize000106.log +534 -0
  111. data/examples/logs/TestSize000107.log +534 -0
  112. data/examples/logs/TestSize000108.log +534 -0
  113. data/examples/logs/TestSize000109.log +534 -0
  114. data/examples/logs/TestSize000110.log +534 -0
  115. data/examples/logs/TestSize000111.log +534 -0
  116. data/examples/logs/TestSize000112.log +534 -0
  117. data/examples/logs/TestSize000113.log +534 -0
  118. data/examples/logs/TestSize000114.log +534 -0
  119. data/examples/logs/TestSize000115.log +534 -0
  120. data/examples/logs/TestSize000116.log +534 -0
  121. data/examples/logs/TestSize000117.log +534 -0
  122. data/examples/logs/TestSize000118.log +534 -0
  123. data/examples/logs/TestSize000119.log +534 -0
  124. data/examples/logs/TestSize000120.log +534 -0
  125. data/examples/logs/TestSize000121.log +534 -0
  126. data/examples/logs/TestSize000122.log +534 -0
  127. data/examples/logs/TestSize000123.log +534 -0
  128. data/examples/logs/TestSize000124.log +534 -0
  129. data/examples/logs/TestSize000125.log +534 -0
  130. data/examples/logs/TestSize000126.log +534 -0
  131. data/examples/logs/TestSize000127.log +534 -0
  132. data/examples/logs/TestSize000128.log +534 -0
  133. data/examples/logs/TestSize000129.log +534 -0
  134. data/examples/logs/TestSize000130.log +534 -0
  135. data/examples/logs/TestSize000131.log +534 -0
  136. data/examples/logs/TestSize000132.log +534 -0
  137. data/examples/logs/TestSize000133.log +534 -0
  138. data/examples/logs/TestSize000134.log +534 -0
  139. data/examples/logs/TestSize000135.log +534 -0
  140. data/examples/logs/TestSize000136.log +534 -0
  141. data/examples/logs/TestSize000137.log +534 -0
  142. data/examples/logs/TestSize000138.log +534 -0
  143. data/examples/logs/TestSize000139.log +534 -0
  144. data/examples/logs/TestSize000140.log +534 -0
  145. data/examples/logs/TestSize000141.log +534 -0
  146. data/examples/logs/TestSize000142.log +534 -0
  147. data/examples/logs/TestSize000143.log +534 -0
  148. data/examples/logs/TestSize000144.log +534 -0
  149. data/examples/logs/TestSize000145.log +534 -0
  150. data/examples/logs/TestSize000146.log +534 -0
  151. data/examples/logs/TestSize000147.log +534 -0
  152. data/examples/logs/TestSize000148.log +534 -0
  153. data/examples/logs/TestSize000149.log +534 -0
  154. data/examples/logs/TestSize000150.log +534 -0
  155. data/examples/logs/TestSize000151.log +534 -0
  156. data/examples/logs/TestSize000152.log +534 -0
  157. data/examples/logs/TestSize000153.log +534 -0
  158. data/examples/logs/TestSize000154.log +534 -0
  159. data/examples/logs/TestSize000155.log +534 -0
  160. data/examples/logs/TestSize000156.log +534 -0
  161. data/examples/logs/TestSize000157.log +534 -0
  162. data/examples/logs/TestSize000158.log +534 -0
  163. data/examples/logs/TestSize000159.log +534 -0
  164. data/examples/logs/TestSize000160.log +534 -0
  165. data/examples/logs/TestSize000161.log +534 -0
  166. data/examples/logs/TestSize000162.log +534 -0
  167. data/examples/logs/TestSize000163.log +534 -0
  168. data/examples/logs/TestSize000164.log +534 -0
  169. data/examples/logs/TestSize000165.log +534 -0
  170. data/examples/logs/TestSize000166.log +534 -0
  171. data/examples/logs/TestSize000167.log +534 -0
  172. data/examples/logs/TestSize000168.log +534 -0
  173. data/examples/logs/TestSize000169.log +534 -0
  174. data/examples/logs/TestSize000170.log +534 -0
  175. data/examples/logs/TestSize000171.log +534 -0
  176. data/examples/logs/TestSize000172.log +534 -0
  177. data/examples/logs/TestSize000173.log +534 -0
  178. data/examples/logs/TestSize000174.log +534 -0
  179. data/examples/logs/TestSize000175.log +534 -0
  180. data/examples/logs/TestSize000176.log +534 -0
  181. data/examples/logs/TestSize000177.log +534 -0
  182. data/examples/logs/TestSize000178.log +534 -0
  183. data/examples/logs/TestSize000179.log +534 -0
  184. data/examples/logs/TestSize000180.log +534 -0
  185. data/examples/logs/TestSize000181.log +534 -0
  186. data/examples/logs/TestSize000182.log +534 -0
  187. data/examples/logs/TestSize000183.log +534 -0
  188. data/examples/logs/TestSize000184.log +534 -0
  189. data/examples/logs/TestSize000185.log +534 -0
  190. data/examples/logs/TestSize000186.log +534 -0
  191. data/examples/logs/TestSize000187.log +312 -0
  192. data/examples/logs/TestTime000001.log +11 -0
  193. data/examples/logs/TestTime000002.log +10 -0
  194. data/examples/logs/TestTime000003.log +10 -0
  195. data/examples/logs/TestTime000004.log +10 -0
  196. data/examples/logs/TestTime000005.log +10 -0
  197. data/examples/logs/TestTime000006.log +10 -0
  198. data/examples/logs/TestTime000007.log +10 -0
  199. data/examples/logs/TestTime000008.log +10 -0
  200. data/examples/logs/TestTime000009.log +10 -0
  201. data/examples/logs/TestTime000010.log +9 -0
  202. data/src/log4r.rb +5 -2
  203. data/src/log4r/GDC.rb +40 -0
  204. data/src/log4r/MDC.rb +59 -0
  205. data/src/log4r/NDC.rb +87 -0
  206. data/src/log4r/formatter/patternformatter.rb +11 -6
  207. data/src/log4r/outputter/bob.patch +25 -0
  208. data/src/log4r/outputter/emailoutputter.rb.orig +118 -0
  209. data/src/log4r/outputter/emailoutputter.rb.rej +46 -0
  210. data/src/log4r/outputter/fileoutputter.rb +12 -5
  211. data/src/log4r/outputter/rollingfileoutputter.rb +8 -3
  212. data/src/log4r/outputter/win32eventoutputter.rb +136 -0
  213. data/src/log4r/rdoc/GDC +14 -0
  214. data/src/log4r/rdoc/MDC +16 -0
  215. data/src/log4r/rdoc/NDC +41 -0
  216. data/src/log4r/rdoc/win32eventoutputter +7 -0
  217. data/src/log4r/repository.rb +73 -52
  218. data/src/log4r/yamlconfigurator.rb +0 -0
  219. data/tests/testGDC.rb +26 -0
  220. data/tests/testMDC.rb +21 -0
  221. data/tests/testNDC.rb +27 -0
  222. data/tests/testthreads.rb +23 -0
  223. metadata +215 -98
  224. data/src/doc/Log4r.html +0 -392
  225. data/src/doc/Log4r/BasicFormatter.html +0 -370
  226. data/src/doc/Log4r/ConfigError.html +0 -207
  227. data/src/doc/Log4r/Configurator.html +0 -1050
  228. data/src/doc/Log4r/DateFileOutputter.html +0 -454
  229. data/src/doc/Log4r/DefaultFormatter.html +0 -205
  230. data/src/doc/Log4r/EmailOutputter.html +0 -636
  231. data/src/doc/Log4r/FileOutputter.html +0 -321
  232. data/src/doc/Log4r/Formatter.html +0 -291
  233. data/src/doc/Log4r/IOOutputter.html +0 -392
  234. data/src/doc/Log4r/Log4rConfig.html +0 -193
  235. data/src/doc/Log4r/Log4rTools.html +0 -370
  236. data/src/doc/Log4r/LogEvent.html +0 -360
  237. data/src/doc/Log4r/LogServer.html +0 -322
  238. data/src/doc/Log4r/Logger.html +0 -1132
  239. data/src/doc/Log4r/Logger/LoggerFactory.html +0 -200
  240. data/src/doc/Log4r/Logger/Repository.html +0 -207
  241. data/src/doc/Log4r/ObjectFormatter.html +0 -262
  242. data/src/doc/Log4r/Outputter.html +0 -910
  243. data/src/doc/Log4r/Outputter/OutputterFactory.html +0 -200
  244. data/src/doc/Log4r/Outputter/consoleoutputters_rb.html +0 -57
  245. data/src/doc/Log4r/Outputter/datefileoutputter_rb.html +0 -93
  246. data/src/doc/Log4r/Outputter/emailoutputter_rb.html +0 -179
  247. data/src/doc/Log4r/Outputter/fileoutputter_rb.html +0 -64
  248. data/src/doc/Log4r/Outputter/iooutputter_rb.html +0 -59
  249. data/src/doc/Log4r/Outputter/outputter_rb.html +0 -222
  250. data/src/doc/Log4r/Outputter/outputterfactory_rb.html +0 -62
  251. data/src/doc/Log4r/Outputter/remoteoutputter_rb.html +0 -59
  252. data/src/doc/Log4r/Outputter/rollingfileoutputter_rb.html +0 -66
  253. data/src/doc/Log4r/Outputter/staticoutputter_rb.html +0 -55
  254. data/src/doc/Log4r/Outputter/syslogoutputter_rb.html +0 -110
  255. data/src/doc/Log4r/Outputter/tst_rb.html +0 -54
  256. data/src/doc/Log4r/PatternFormatter.html +0 -422
  257. data/src/doc/Log4r/ROMPClient.html +0 -193
  258. data/src/doc/Log4r/ROMPServer.html +0 -193
  259. data/src/doc/Log4r/RemoteOutputter.html +0 -384
  260. data/src/doc/Log4r/RollingFileOutputter.html +0 -528
  261. data/src/doc/Log4r/RootLogger.html +0 -512
  262. data/src/doc/Log4r/SimpleFormatter.html +0 -258
  263. data/src/doc/Log4r/StderrOutputter.html +0 -250
  264. data/src/doc/Log4r/StdoutOutputter.html +0 -250
  265. data/src/doc/Log4r/SyslogOutputter.html +0 -533
  266. data/src/doc/Log4r/YamlConfigurator.html +0 -948
  267. data/src/doc/Log4r/base_rb.html +0 -57
  268. data/src/doc/Log4r/config_rb.html +0 -76
  269. data/src/doc/Log4r/configurator_rb.html +0 -370
  270. data/src/doc/Log4r/formatter/formatter_rb.html +0 -121
  271. data/src/doc/Log4r/formatter/patternformatter_rb.html +0 -233
  272. data/src/doc/Log4r/lib/drbloader_rb.html +0 -57
  273. data/src/doc/Log4r/lib/xmlloader_rb.html +0 -57
  274. data/src/doc/Log4r/logevent_rb.html +0 -55
  275. data/src/doc/Log4r/logger_rb.html +0 -293
  276. data/src/doc/Log4r/loggerfactory_rb.html +0 -66
  277. data/src/doc/Log4r/logserver_rb.html +0 -161
  278. data/src/doc/Log4r/rdoc/configurator.html +0 -444
  279. data/src/doc/Log4r/rdoc/emailoutputter.html +0 -261
  280. data/src/doc/Log4r/rdoc/formatter.html +0 -200
  281. data/src/doc/Log4r/rdoc/log4r.html +0 -268
  282. data/src/doc/Log4r/rdoc/logger.html +0 -364
  283. data/src/doc/Log4r/rdoc/logserver.html +0 -247
  284. data/src/doc/Log4r/rdoc/outputter.html +0 -295
  285. data/src/doc/Log4r/rdoc/patternformatter.html +0 -313
  286. data/src/doc/Log4r/rdoc/syslogoutputter.html +0 -179
  287. data/src/doc/Log4r/rdoc/yamlconfigurator.html +0 -169
  288. data/src/doc/Log4r/repository_rb.html +0 -62
  289. data/src/doc/Log4r/staticlogger_rb.html +0 -55
  290. data/src/doc/Log4r/yamlconfigurator_rb.html +0 -95
  291. data/src/doc/REXML.html +0 -193
  292. data/src/doc/created.rid +0 -1
  293. data/src/doc/images/brick.png +0 -0
  294. data/src/doc/images/brick_link.png +0 -0
  295. data/src/doc/images/bug.png +0 -0
  296. data/src/doc/images/bullet_black.png +0 -0
  297. data/src/doc/images/bullet_toggle_minus.png +0 -0
  298. data/src/doc/images/bullet_toggle_plus.png +0 -0
  299. data/src/doc/images/date.png +0 -0
  300. data/src/doc/images/find.png +0 -0
  301. data/src/doc/images/loadingAnimation.gif +0 -0
  302. data/src/doc/images/macFFBgHack.png +0 -0
  303. data/src/doc/images/package.png +0 -0
  304. data/src/doc/images/page_green.png +0 -0
  305. data/src/doc/images/page_white_text.png +0 -0
  306. data/src/doc/images/page_white_width.png +0 -0
  307. data/src/doc/images/plugin.png +0 -0
  308. data/src/doc/images/ruby.png +0 -0
  309. data/src/doc/images/tag_green.png +0 -0
  310. data/src/doc/images/wrench.png +0 -0
  311. data/src/doc/images/wrench_orange.png +0 -0
  312. data/src/doc/images/zoom.png +0 -0
  313. data/src/doc/index.html +0 -384
  314. data/src/doc/js/darkfish.js +0 -116
  315. data/src/doc/js/jquery.js +0 -32
  316. data/src/doc/js/quicksearch.js +0 -114
  317. data/src/doc/js/thickbox-compressed.js +0 -10
  318. data/src/doc/rdoc.css +0 -696
  319. data/src/log4r/outputter/tst.rb +0 -8
@@ -1,364 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
-
5
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
- <head>
7
- <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
8
-
9
- <title>File: logger [1.1.2 Log4r API Documentation]</title>
10
-
11
- <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
12
-
13
- <script src="../../js/jquery.js" type="text/javascript"
14
- charset="utf-8"></script>
15
- <script src="../../js/thickbox-compressed.js" type="text/javascript"
16
- charset="utf-8"></script>
17
- <script src="../../js/quicksearch.js" type="text/javascript"
18
- charset="utf-8"></script>
19
- <script src="../../js/darkfish.js" type="text/javascript"
20
- charset="utf-8"></script>
21
- </head>
22
-
23
- <body class="file">
24
- <div id="metadata">
25
- <div id="project-metadata">
26
-
27
-
28
- <div id="fileindex-section" class="section project-section">
29
- <h3 class="section-header">Files</h3>
30
- <ul>
31
-
32
- <li class="file"><a href="../../log4r/rdoc/configurator.html">configurator</a></li>
33
-
34
- <li class="file"><a href="../../log4r/rdoc/emailoutputter.html">emailoutputter</a></li>
35
-
36
- <li class="file"><a href="../../log4r/rdoc/formatter.html">formatter</a></li>
37
-
38
- <li class="file"><a href="../../log4r/rdoc/log4r.html">log4r</a></li>
39
-
40
- <li class="file"><a href="../../log4r/rdoc/logger.html">logger</a></li>
41
-
42
- <li class="file"><a href="../../log4r/rdoc/logserver.html">logserver</a></li>
43
-
44
- <li class="file"><a href="../../log4r/rdoc/outputter.html">outputter</a></li>
45
-
46
- <li class="file"><a href="../../log4r/rdoc/patternformatter.html">patternformatter</a></li>
47
-
48
- <li class="file"><a href="../../log4r/rdoc/syslogoutputter.html">syslogoutputter</a></li>
49
-
50
- <li class="file"><a href="../../log4r/rdoc/yamlconfigurator.html">yamlconfigurator</a></li>
51
-
52
- </ul>
53
- </div>
54
-
55
-
56
- <div id="classindex-section" class="section project-section">
57
- <h3 class="section-header">Class Index
58
- <span class="search-toggle"><img src="../../images/find.png"
59
- height="16" width="16" alt="[+]"
60
- title="show/hide quicksearch" /></span></h3>
61
- <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
62
- <fieldset>
63
- <legend>Quicksearch</legend>
64
- <input type="text" name="quicksearch" value=""
65
- class="quicksearch-field" />
66
- </fieldset>
67
- </form>
68
-
69
- <ul class="link-list">
70
-
71
- <li><a href="../../Log4r.html">Log4r</a></li>
72
-
73
- <li><a href="../../Log4r/BasicFormatter.html">Log4r::BasicFormatter</a></li>
74
-
75
- <li><a href="../../Log4r/ConfigError.html">Log4r::ConfigError</a></li>
76
-
77
- <li><a href="../../Log4r/Configurator.html">Log4r::Configurator</a></li>
78
-
79
- <li><a href="../../Log4r/DateFileOutputter.html">Log4r::DateFileOutputter</a></li>
80
-
81
- <li><a href="../../Log4r/DefaultFormatter.html">Log4r::DefaultFormatter</a></li>
82
-
83
- <li><a href="../../Log4r/EmailOutputter.html">Log4r::EmailOutputter</a></li>
84
-
85
- <li><a href="../../Log4r/FileOutputter.html">Log4r::FileOutputter</a></li>
86
-
87
- <li><a href="../../Log4r/Formatter.html">Log4r::Formatter</a></li>
88
-
89
- <li><a href="../../Log4r/IOOutputter.html">Log4r::IOOutputter</a></li>
90
-
91
- <li><a href="../../Log4r/Log4rTools.html">Log4r::Log4rTools</a></li>
92
-
93
- <li><a href="../../Log4r/LogEvent.html">Log4r::LogEvent</a></li>
94
-
95
- <li><a href="../../Log4r/LogServer.html">Log4r::LogServer</a></li>
96
-
97
- <li><a href="../../Log4r/Logger.html">Log4r::Logger</a></li>
98
-
99
- <li><a href="../../Log4r/ObjectFormatter.html">Log4r::ObjectFormatter</a></li>
100
-
101
- <li><a href="../../Log4r/Outputter.html">Log4r::Outputter</a></li>
102
-
103
- <li><a href="../../Log4r/PatternFormatter.html">Log4r::PatternFormatter</a></li>
104
-
105
- <li><a href="../../Log4r/RemoteOutputter.html">Log4r::RemoteOutputter</a></li>
106
-
107
- <li><a href="../../Log4r/RollingFileOutputter.html">Log4r::RollingFileOutputter</a></li>
108
-
109
- <li><a href="../../Log4r/RootLogger.html">Log4r::RootLogger</a></li>
110
-
111
- <li><a href="../../Log4r/SimpleFormatter.html">Log4r::SimpleFormatter</a></li>
112
-
113
- <li><a href="../../Log4r/StderrOutputter.html">Log4r::StderrOutputter</a></li>
114
-
115
- <li><a href="../../Log4r/StdoutOutputter.html">Log4r::StdoutOutputter</a></li>
116
-
117
- <li><a href="../../Log4r/SyslogOutputter.html">Log4r::SyslogOutputter</a></li>
118
-
119
- <li><a href="../../Log4r/YamlConfigurator.html">Log4r::YamlConfigurator</a></li>
120
-
121
- </ul>
122
- <div id="no-class-search-results" style="display: none;">No matching classes.</div>
123
- </div>
124
-
125
-
126
- </div>
127
- </div>
128
-
129
- <div id="documentation">
130
- <h1>Loggers</h1>
131
- <p>
132
- Loggers provide the interface for logging in <a
133
- href="../../Log4r.html">Log4r</a>. To create a logger, first come up with a
134
- name for it. Good choices include the name of the class using it, a service
135
- name, or the name of the file.
136
- </p>
137
- <p>
138
- To create a logger named &#8216;mylog&#8217;:
139
- </p>
140
- <pre>
141
- Logger.new('mylog')
142
- </pre>
143
- <p>
144
- After creating a logger, it is stashed in a repository. The logger may be
145
- retrieved at any time:
146
- </p>
147
- <pre>
148
- Logger['mylog'] # get mylog back
149
- </pre>
150
- <p>
151
- It will return nil if the logger is not found. Alternatively, if an
152
- Exception is desired when a nonexistant logger is referenced, the
153
- Logger#get command can be used:
154
- </p>
155
- <pre>
156
- Logger.get('boguslog') # raises NameError if it doesn't exist
157
- </pre>
158
- <h2>Manipulating a Logger&#8217;s Outputters</h2>
159
- <p>
160
- Loggers start out with no outputters. They can be added using the
161
- Logger#add method or set directly by modifying the Loggers#outputters
162
- array:
163
- </p>
164
- <pre>
165
- mylog = Logger['mylog']
166
-
167
- # assume we've created Outputters out1 through out4
168
- mylog.outputters = out1, out2
169
- mylog.add(out3, out4)
170
- mylog.each_outputter {|o| o.flush}
171
-
172
- # assume out5 through out7 have names 'out5' through 'out7' resp.
173
- mylog.outputters = 'out5', 'out6'
174
- mylog.add('out7')
175
- mylog.remove('out5','out7')
176
- </pre>
177
- <p>
178
- Please see <a
179
- href="../outputter/outputter_rb.html">log4r/outputter/outputter.rb</a> and
180
- <a href="../../Log4r/Outputter.html">Log4r::Outputter</a> for more about
181
- outputters.
182
- </p>
183
- <h2>Logging Methods</h2>
184
- <p>
185
- To log something at a certain priority, use the logging method named after
186
- the lowercased priority level name:
187
- </p>
188
- <pre>
189
- mylog.warn &quot;This is a message with priority WARN&quot;
190
- mylog.fatal &quot;A FATAL message&quot;
191
- </pre>
192
- <p>
193
- Blocks can also be logged:
194
- </p>
195
- <pre>
196
- mylog.warn {&quot;This is also a message with priority WARN&quot;}
197
- mylog.debug do
198
- # some complicated string magic
199
- return result
200
- end
201
- </pre>
202
- <p>
203
- The primary difference is that the block doesn&#8217;t get called unless
204
- the Logger can log at that level. It is useful for doing computationaly
205
- expensive things at a log event.
206
- </p>
207
- <h2>Query Methods</h2>
208
- <p>
209
- To ask <a href="../../Log4r.html">Log4r</a> whether it is capable of
210
- logging a certain level:
211
- </p>
212
- <pre>
213
- mylog.warn? # are we logging WARN?
214
- mylog.fatal? # how about FATAL?
215
- </pre>
216
- <p>
217
- Query methods and blocks accomplish the same thing:
218
- </p>
219
- <pre>
220
- mylog.warn &quot;don't evaluate unless WARN is on&quot; if mylog.warn?
221
- mylog.warn {&quot;don't evaluate unless WARN is on&quot;}
222
- </pre>
223
- <h2>What About the Special Levels?</h2>
224
- <p>
225
- <tt>ALL</tt> and <tt>OFF</tt> can be querried, but not logged:
226
- </p>
227
- <pre>
228
- log.off? # true iff level is OFF
229
- log.all? # true iff level is ALL
230
- log.all &quot;Try to log&quot; =&gt; Method not defined. (NameError)
231
- </pre>
232
- <h2>Custom Levels and Method Names</h2>
233
- <p>
234
- Suppose we&#8217;ve set up <a href="../../Log4r.html">Log4r</a> with the
235
- custom levels:
236
- </p>
237
- <pre>
238
- Foo &lt; Bar &lt; Baz
239
- </pre>
240
- <p>
241
- As one might expect, the logging methods are named after them:
242
- </p>
243
- <pre>
244
- log.bar &quot;something&quot; # log at custom level Bar
245
- log.bar? # are we logging at level Bar?
246
- </pre>
247
- <h1>Logger Inheritance</h1>
248
- <p>
249
- Normally, when a logger is created, its parent is set to RootLogger. If a
250
- Logger&#8217;s level isn&#8217;t specified at creation, it will inherit the
251
- level of its parent.
252
- </p>
253
- <p>
254
- To specify an ancestors of a logger besides RootLogger, include the names
255
- of the ancestors in order of ancestry and delimited by
256
- Log4r::Log4rConfig::LoggerPathDelimiter. For example, if the delimiter is
257
- the default <tt>::</tt>, our logger is &#8216;me&#8217; and its ancestors
258
- are &#8216;cain&#8217;, &#8216;grandpa&#8217;, and &#8216;pa&#8217;, we
259
- create the logger like so:
260
- </p>
261
- <pre>
262
- Logger.new('cain::grandpa::pa::me')
263
- </pre>
264
- <p>
265
- This string is split into three compontents which can be used by a
266
- Formatter to avoid parsing the name:
267
- </p>
268
- <table>
269
- <tr><td valign="top">Logger#fullname:</td><td>The whole enchilada: &#8216;cain::grandpa::pa::me&#8217;
270
-
271
- </td></tr>
272
- <tr><td valign="top">Logger#name:</td><td>Just &#8216;me&#8217;
273
-
274
- </td></tr>
275
- </table>
276
- <p>
277
- To get this logger back from the repository,
278
- </p>
279
- <pre>
280
- Logger['cain::grandpa::pa::me']
281
- </pre>
282
- <h1>Outputter Additivity</h1>
283
- <p>
284
- By default, Logger Outputters are <b>additive</b>. This means that a log
285
- event will also be sent to all of a logger&#8217;s ancestors. To stop this
286
- behavior, set a logger&#8217;s <tt>additive</tt> to false.
287
- </p>
288
- <pre>
289
- Logger['foo'].additive = false
290
- </pre>
291
- <p>
292
- A Logger&#8217;s level, additivity and trace can be changed dynamically,
293
- but this is an expensive operation as the logging methods have to be
294
- redefined.
295
- </p>
296
- <h1>RootLogger</h1>
297
- <p>
298
- <a href="../../Log4r/RootLogger.html">Log4r::RootLogger</a> is the ancestor
299
- of all loggers. Its level defines the global logging threshold. Any loggers
300
- created <b>after</b> RootLogger&#8217;s level is set will not log below
301
- that level. By default, RootLogger&#8217;s level is set to <tt>ALL</tt>
302
- </p>
303
- <p>
304
- RootLogger is a singleton which gets created automaticallay. It can be
305
- retrieved at any time with Logger.root, Logger.global,
306
- Logger[&#8216;root&#8217;] or Logger[&#8216;global&#8217;].
307
- </p>
308
- <h2>Global Level</h2>
309
- <p>
310
- Suppose we want <em>everything</em> to ignore events less than FATAL. We
311
- can accomplish this easily:
312
- </p>
313
- <pre>
314
- Logger.global.level = FATAL
315
- </pre>
316
- <p>
317
- Just be sure to set this before any other Loggers or Outputters are
318
- defined.
319
- </p>
320
- <h2>RootLogger Does Nothing</h2>
321
- <p>
322
- RootLogger itself behaves as if its level were permanently set to
323
- <tt>OFF</tt>, thus making it a sort of null object.
324
- </p>
325
- <h1>XML Configuration</h1>
326
- <p>
327
- Please see <a href="../configurator_rb.html">log4r/configurator.rb</a> for
328
- an overview of XML configuratoin.
329
- </p>
330
- <p>
331
- It&#8217;s easy to configure a Logger in XML. The following example should
332
- be sufficient:
333
- </p>
334
- <pre>
335
- ...
336
- &lt;logger name=&quot;papa::mylog&quot; level=&quot;DEBUG&quot; trace=&quot;true&quot;&gt;
337
- &lt;additive&gt;false&lt;/additive&gt;
338
- &lt;outputter&gt;stdout&lt;/outputter&gt;
339
- &lt;outputters&gt;stderr, dancer, doner, blitzen&lt;/outputters&gt;
340
- &lt;/logger&gt;
341
- &lt;logger name=&quot;papa&quot; outputters=&quot;stderr, stdout&quot;/&gt;
342
- ...
343
- </pre>
344
- <p>
345
- The element <tt>outputter</tt> can occur multiple times, but cannot be an
346
- attribute of <tt>logger</tt>. That is, it is not an <em>XML directive</em>.
347
- However, the element <tt>outputters</tt> is an <em>XML directive</em>, as
348
- are all the others.
349
- </p>
350
- <p>
351
- For more examples, check the <tt>examples</tt> directory in the <a
352
- href="../../Log4r.html">Log4r</a> package.
353
- </p>
354
-
355
- </div>
356
-
357
- <div id="validator-badges">
358
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
359
- <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
360
- Rdoc Generator</a> 1.1.6</small>.</p>
361
- </div>
362
- </body>
363
- </html>
364
-
@@ -1,247 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
-
5
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
- <head>
7
- <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
8
-
9
- <title>File: logserver [1.1.2 Log4r API Documentation]</title>
10
-
11
- <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
12
-
13
- <script src="../../js/jquery.js" type="text/javascript"
14
- charset="utf-8"></script>
15
- <script src="../../js/thickbox-compressed.js" type="text/javascript"
16
- charset="utf-8"></script>
17
- <script src="../../js/quicksearch.js" type="text/javascript"
18
- charset="utf-8"></script>
19
- <script src="../../js/darkfish.js" type="text/javascript"
20
- charset="utf-8"></script>
21
- </head>
22
-
23
- <body class="file">
24
- <div id="metadata">
25
- <div id="project-metadata">
26
-
27
-
28
- <div id="fileindex-section" class="section project-section">
29
- <h3 class="section-header">Files</h3>
30
- <ul>
31
-
32
- <li class="file"><a href="../../log4r/rdoc/configurator.html">configurator</a></li>
33
-
34
- <li class="file"><a href="../../log4r/rdoc/emailoutputter.html">emailoutputter</a></li>
35
-
36
- <li class="file"><a href="../../log4r/rdoc/formatter.html">formatter</a></li>
37
-
38
- <li class="file"><a href="../../log4r/rdoc/log4r.html">log4r</a></li>
39
-
40
- <li class="file"><a href="../../log4r/rdoc/logger.html">logger</a></li>
41
-
42
- <li class="file"><a href="../../log4r/rdoc/logserver.html">logserver</a></li>
43
-
44
- <li class="file"><a href="../../log4r/rdoc/outputter.html">outputter</a></li>
45
-
46
- <li class="file"><a href="../../log4r/rdoc/patternformatter.html">patternformatter</a></li>
47
-
48
- <li class="file"><a href="../../log4r/rdoc/syslogoutputter.html">syslogoutputter</a></li>
49
-
50
- <li class="file"><a href="../../log4r/rdoc/yamlconfigurator.html">yamlconfigurator</a></li>
51
-
52
- </ul>
53
- </div>
54
-
55
-
56
- <div id="classindex-section" class="section project-section">
57
- <h3 class="section-header">Class Index
58
- <span class="search-toggle"><img src="../../images/find.png"
59
- height="16" width="16" alt="[+]"
60
- title="show/hide quicksearch" /></span></h3>
61
- <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
62
- <fieldset>
63
- <legend>Quicksearch</legend>
64
- <input type="text" name="quicksearch" value=""
65
- class="quicksearch-field" />
66
- </fieldset>
67
- </form>
68
-
69
- <ul class="link-list">
70
-
71
- <li><a href="../../Log4r.html">Log4r</a></li>
72
-
73
- <li><a href="../../Log4r/BasicFormatter.html">Log4r::BasicFormatter</a></li>
74
-
75
- <li><a href="../../Log4r/ConfigError.html">Log4r::ConfigError</a></li>
76
-
77
- <li><a href="../../Log4r/Configurator.html">Log4r::Configurator</a></li>
78
-
79
- <li><a href="../../Log4r/DateFileOutputter.html">Log4r::DateFileOutputter</a></li>
80
-
81
- <li><a href="../../Log4r/DefaultFormatter.html">Log4r::DefaultFormatter</a></li>
82
-
83
- <li><a href="../../Log4r/EmailOutputter.html">Log4r::EmailOutputter</a></li>
84
-
85
- <li><a href="../../Log4r/FileOutputter.html">Log4r::FileOutputter</a></li>
86
-
87
- <li><a href="../../Log4r/Formatter.html">Log4r::Formatter</a></li>
88
-
89
- <li><a href="../../Log4r/IOOutputter.html">Log4r::IOOutputter</a></li>
90
-
91
- <li><a href="../../Log4r/Log4rTools.html">Log4r::Log4rTools</a></li>
92
-
93
- <li><a href="../../Log4r/LogEvent.html">Log4r::LogEvent</a></li>
94
-
95
- <li><a href="../../Log4r/LogServer.html">Log4r::LogServer</a></li>
96
-
97
- <li><a href="../../Log4r/Logger.html">Log4r::Logger</a></li>
98
-
99
- <li><a href="../../Log4r/ObjectFormatter.html">Log4r::ObjectFormatter</a></li>
100
-
101
- <li><a href="../../Log4r/Outputter.html">Log4r::Outputter</a></li>
102
-
103
- <li><a href="../../Log4r/PatternFormatter.html">Log4r::PatternFormatter</a></li>
104
-
105
- <li><a href="../../Log4r/RemoteOutputter.html">Log4r::RemoteOutputter</a></li>
106
-
107
- <li><a href="../../Log4r/RollingFileOutputter.html">Log4r::RollingFileOutputter</a></li>
108
-
109
- <li><a href="../../Log4r/RootLogger.html">Log4r::RootLogger</a></li>
110
-
111
- <li><a href="../../Log4r/SimpleFormatter.html">Log4r::SimpleFormatter</a></li>
112
-
113
- <li><a href="../../Log4r/StderrOutputter.html">Log4r::StderrOutputter</a></li>
114
-
115
- <li><a href="../../Log4r/StdoutOutputter.html">Log4r::StdoutOutputter</a></li>
116
-
117
- <li><a href="../../Log4r/SyslogOutputter.html">Log4r::SyslogOutputter</a></li>
118
-
119
- <li><a href="../../Log4r/YamlConfigurator.html">Log4r::YamlConfigurator</a></li>
120
-
121
- </ul>
122
- <div id="no-class-search-results" style="display: none;">No matching classes.</div>
123
- </div>
124
-
125
-
126
- </div>
127
- </div>
128
-
129
- <div id="documentation">
130
- <h1>Remote Logging</h1>
131
- <p>
132
- Want to use <a href="../../Log4r.html">Log4r</a> over a network? No
133
- problem! A <a
134
- href="../../Log4r/RemoteOutputter.html">Log4r::RemoteOutputter</a> will
135
- send its LogEvents to a <a
136
- href="../../Log4r/LogServer.html">Log4r::LogServer</a>. These two classes
137
- are as easy to set up and use as the rest of <a
138
- href="../../Log4r.html">Log4r</a>.
139
- </p>
140
- <h2>Use ROMP</h2>
141
- <p>
142
- There is one catch though: ROMP is required to use this service. It is a
143
- DRb-like system with superb performance and better features. Get ROMP at <a
144
- href="http://rubystuff.org/romp/">rubystuff.org/romp/</a>
145
- </p>
146
- <h2>LogServer</h2>
147
- <p>
148
- LogServer is simply a kind of Logger which embeds a ROMP::Server. Like a
149
- normal Logger, you can give it Outputters, set its level and so on. Its
150
- logging methods are accessible over a network and are called by a
151
- RemoteOutputter on another host.
152
- </p>
153
- <h3>LogServer Setup</h3>
154
- <p>
155
- Setup is easy. First,
156
- </p>
157
- <pre>
158
- require 'log4r/logserver'
159
- </pre>
160
- <p>
161
- The following sets up a LogServer named &#8216;central&#8217; on localhost
162
- port 9999:
163
- </p>
164
- <pre>
165
- LogServer.new('central', 'tcpromp://localhost:9999')
166
- </pre>
167
- <p>
168
- We manipulate it and give it outputters as normal:
169
- </p>
170
- <pre>
171
- serv = Logger['central'] # grab our new LogServer
172
- serv.add 'stdout' # make it log to $stdout
173
- </pre>
174
- <h2>RemoteOutputter</h2>
175
- <p>
176
- RemoteOutputter is simply a kind of Outputter that embeds a ROMP::Client.
177
- When RemoteOutputter gets a LogEvent, it will forward it to whatever
178
- LogServer it&#8217;s connected to. In essence, RemoteOutputter behaves like
179
- a Logger that is forwarding a LogEvent to another Logger (as is done in
180
- hierarchical logging).
181
- </p>
182
- <h3>RemoteOutputter Setup</h3>
183
- <p>
184
- First,
185
- </p>
186
- <pre>
187
- require 'log4r/outputter/remoteoutputter'
188
- </pre>
189
- <p>
190
- Unlike typical outputters, RemoteOutputter doesn&#8217;t do any formatting.
191
- That&#8217;s up to the LogServer&#8217;s outputters. Otherwise,
192
- RemoteOutputter can be set up as usual. The ROMP uri of the LogServer must
193
- be specified.
194
- </p>
195
- <pre>
196
- RemoteOutputter.new 'client', :uri=&gt;'tcpromp://localhost:9999'
197
- </pre>
198
- <h3>Using RemoteOutputter</h3>
199
- <p>
200
- Give our new RemoteOutputter to a logger:
201
- </p>
202
- <pre>
203
- mylog = Logger['mylog']
204
- mylog.add 'client'
205
- </pre>
206
- <p>
207
- Now, whenever mylog generates a LogEvent, LogServer should get a copy.
208
- Doing the following:
209
- </p>
210
- <pre>
211
- mylog.info &quot;This is a message from 'mylog'&quot;
212
- </pre>
213
- <p>
214
- Produces this output on LogServer&#8217;s console:
215
- </p>
216
- <pre>
217
- INFO mylog: This is a message from 'mylog'
218
- </pre>
219
- <h2>XML Configuration</h2>
220
- <p>
221
- RemoteOutputter is set up like normal Outputters. LogServer is set up like
222
- a normal Logger, but with an element name of logserver instead of logger:
223
- </p>
224
- <pre>
225
- &lt;log4r_config&gt;
226
- &lt;logserver name=&quot;name&quot; uri=&quot;tcpromp://localhost:9999&quot;&gt;
227
- ...
228
- </pre>
229
- <h2>Debugging</h2>
230
- <p>
231
- It is recommended to set up a logger named &#8216;log4r&#8217; on both the
232
- server and client to see what LogServer and RemoteOutputter are up to. Both
233
- of the classes use Log4r&#8217;s internal logging to report any problems.
234
- See the section <b>What&#8217;s Going on Inside?</b> in log4r.rb for more
235
- info.
236
- </p>
237
-
238
- </div>
239
-
240
- <div id="validator-badges">
241
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
242
- <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
243
- Rdoc Generator</a> 1.1.6</small>.</p>
244
- </div>
245
- </body>
246
- </html>
247
-