log4r 1.1.6 → 1.1.7
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.
- data/README +3 -3
- data/Rakefile +2 -2
- data/doc/rdoc/Log4r.html +519 -0
- data/doc/rdoc/Log4r/BasicFormatter.html +388 -0
- data/doc/rdoc/Log4r/ConfigError.html +225 -0
- data/doc/rdoc/Log4r/Configurator.html +1068 -0
- data/doc/rdoc/Log4r/DateFileOutputter.html +479 -0
- data/doc/rdoc/Log4r/DefaultFormatter.html +223 -0
- data/doc/rdoc/Log4r/EmailOutputter.html +654 -0
- data/doc/rdoc/Log4r/FileOutputter.html +346 -0
- data/doc/rdoc/Log4r/Formatter.html +309 -0
- data/doc/rdoc/Log4r/GDC.html +346 -0
- data/doc/rdoc/Log4r/GDC_rb.html +80 -0
- data/doc/rdoc/Log4r/IOOutputter.html +410 -0
- data/doc/rdoc/Log4r/Log4jXmlFormatter.html +337 -0
- data/doc/rdoc/Log4r/Log4rConfig.html +211 -0
- data/doc/rdoc/Log4r/Log4rTools.html +388 -0
- data/doc/rdoc/Log4r/LogEvent.html +378 -0
- data/doc/rdoc/Log4r/LogServer.html +340 -0
- data/doc/rdoc/Log4r/Logger.html +1150 -0
- data/doc/rdoc/Log4r/Logger/LoggerFactory.html +218 -0
- data/doc/rdoc/Log4r/Logger/Repository.html +225 -0
- data/doc/rdoc/Log4r/MDC.html +424 -0
- data/doc/rdoc/Log4r/MDC_rb.html +83 -0
- data/doc/rdoc/Log4r/NDC.html +632 -0
- data/doc/rdoc/Log4r/NDC_rb.html +110 -0
- data/doc/rdoc/Log4r/ObjectFormatter.html +280 -0
- data/doc/rdoc/Log4r/Outputter.html +934 -0
- data/doc/rdoc/Log4r/Outputter/OutputterFactory.html +218 -0
- data/doc/rdoc/Log4r/Outputter/consoleoutputters_rb.html +57 -0
- data/doc/rdoc/Log4r/Outputter/datefileoutputter_rb.html +93 -0
- data/doc/rdoc/Log4r/Outputter/emailoutputter_rb.html +179 -0
- data/doc/rdoc/Log4r/Outputter/fileoutputter_rb.html +64 -0
- data/doc/rdoc/Log4r/Outputter/iooutputter_rb.html +59 -0
- data/doc/rdoc/Log4r/Outputter/outputter_rb.html +222 -0
- data/doc/rdoc/Log4r/Outputter/outputterfactory_rb.html +62 -0
- data/doc/rdoc/Log4r/Outputter/remoteoutputter_rb.html +59 -0
- data/doc/rdoc/Log4r/Outputter/rollingfileoutputter_rb.html +66 -0
- data/doc/rdoc/Log4r/Outputter/staticoutputter_rb.html +55 -0
- data/doc/rdoc/Log4r/Outputter/syslogoutputter_rb.html +110 -0
- data/doc/rdoc/Log4r/Outputter/udpoutputter_rb.html +220 -0
- data/doc/rdoc/Log4r/PatternFormatter.html +404 -0
- data/doc/rdoc/Log4r/ROMPClient.html +211 -0
- data/doc/rdoc/Log4r/ROMPServer.html +211 -0
- data/doc/rdoc/Log4r/RemoteOutputter.html +402 -0
- data/doc/rdoc/Log4r/RollingFileOutputter.html +551 -0
- data/doc/rdoc/Log4r/RootLogger.html +530 -0
- data/doc/rdoc/Log4r/SimpleFormatter.html +276 -0
- data/doc/rdoc/Log4r/StderrOutputter.html +268 -0
- data/doc/rdoc/Log4r/StdoutOutputter.html +268 -0
- data/doc/rdoc/Log4r/SyslogOutputter.html +551 -0
- data/doc/rdoc/Log4r/UDPOutputter.html +379 -0
- data/doc/rdoc/Log4r/YamlConfigurator.html +966 -0
- data/doc/rdoc/Log4r/base_rb.html +57 -0
- data/doc/rdoc/Log4r/config_rb.html +122 -0
- data/doc/rdoc/Log4r/configurator_rb.html +370 -0
- data/doc/rdoc/Log4r/formatter/formatter_rb.html +121 -0
- data/doc/rdoc/Log4r/formatter/log4jxmlformatter_rb.html +64 -0
- data/doc/rdoc/Log4r/formatter/patternformatter_rb.html +239 -0
- data/doc/rdoc/Log4r/lib/drbloader_rb.html +57 -0
- data/doc/rdoc/Log4r/lib/xmlloader_rb.html +57 -0
- data/doc/rdoc/Log4r/logevent_rb.html +55 -0
- data/doc/rdoc/Log4r/logger_rb.html +293 -0
- data/doc/rdoc/Log4r/loggerfactory_rb.html +66 -0
- data/doc/rdoc/Log4r/logserver_rb.html +161 -0
- data/doc/rdoc/Log4r/rdoc/GDC.html +175 -0
- data/doc/rdoc/Log4r/rdoc/MDC.html +178 -0
- data/doc/rdoc/Log4r/rdoc/NDC.html +207 -0
- data/doc/rdoc/Log4r/rdoc/configurator.html +462 -0
- data/doc/rdoc/Log4r/rdoc/emailoutputter.html +279 -0
- data/doc/rdoc/Log4r/rdoc/formatter.html +218 -0
- data/doc/rdoc/Log4r/rdoc/log4r.html +286 -0
- data/doc/rdoc/Log4r/rdoc/logger.html +382 -0
- data/doc/rdoc/Log4r/rdoc/logserver.html +265 -0
- data/doc/rdoc/Log4r/rdoc/outputter.html +313 -0
- data/doc/rdoc/Log4r/rdoc/patternformatter.html +331 -0
- data/doc/rdoc/Log4r/rdoc/syslogoutputter.html +197 -0
- data/doc/rdoc/Log4r/rdoc/win32eventoutputter.html +165 -0
- data/doc/rdoc/Log4r/rdoc/yamlconfigurator.html +187 -0
- data/doc/rdoc/Log4r/repository_rb.html +74 -0
- data/doc/rdoc/Log4r/staticlogger_rb.html +55 -0
- data/doc/rdoc/Log4r/yamlconfigurator_rb.html +95 -0
- data/doc/rdoc/REXML.html +211 -0
- data/doc/rdoc/created.rid +1 -0
- data/doc/rdoc/images/brick.png +0 -0
- data/doc/rdoc/images/brick_link.png +0 -0
- data/doc/rdoc/images/bug.png +0 -0
- data/doc/rdoc/images/bullet_black.png +0 -0
- data/doc/rdoc/images/bullet_toggle_minus.png +0 -0
- data/doc/rdoc/images/bullet_toggle_plus.png +0 -0
- data/doc/rdoc/images/date.png +0 -0
- data/doc/rdoc/images/find.png +0 -0
- data/doc/rdoc/images/loadingAnimation.gif +0 -0
- data/doc/rdoc/images/macFFBgHack.png +0 -0
- data/doc/rdoc/images/package.png +0 -0
- data/doc/rdoc/images/page_green.png +0 -0
- data/doc/rdoc/images/page_white_text.png +0 -0
- data/doc/rdoc/images/page_white_width.png +0 -0
- data/doc/rdoc/images/plugin.png +0 -0
- data/doc/rdoc/images/ruby.png +0 -0
- data/doc/rdoc/images/tag_green.png +0 -0
- data/doc/rdoc/images/wrench.png +0 -0
- data/doc/rdoc/images/wrench_orange.png +0 -0
- data/doc/rdoc/images/zoom.png +0 -0
- data/doc/rdoc/index.html +585 -0
- data/doc/rdoc/js/darkfish.js +116 -0
- data/doc/rdoc/js/jquery.js +32 -0
- data/doc/rdoc/js/quicksearch.js +114 -0
- data/doc/rdoc/js/thickbox-compressed.js +10 -0
- data/doc/rdoc/log4r-rdoc.css +696 -0
- data/doc/rdoc/log4r_rb.html +207 -0
- data/doc/rdoc/rdoc.css +696 -0
- data/examples/rdoc-gen +2 -0
- data/src/log4r.rb +2 -2
- data/src/log4r/formatter/patternformatter.rb +15 -15
- data/src/log4r/outputter/udpoutputter.rb +4 -4
- data/tests/testchainsaw.rb +1 -1
- metadata +123 -8
- data/src/log4r/outputter/datefileoutputter.patch +0 -24
- data/src/log4r/outputter/diff +0 -14
- data/src/log4r/outputter/new-datefileoutputter.rb +0 -117
@@ -0,0 +1,218 @@
|
|
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
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
5
|
+
<head>
|
6
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
7
|
+
|
8
|
+
<title>Class: Log4r::Outputter::OutputterFactory</title>
|
9
|
+
|
10
|
+
<link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
|
11
|
+
|
12
|
+
<script src="../../js/jquery.js" type="text/javascript"
|
13
|
+
charset="utf-8"></script>
|
14
|
+
<script src="../../js/thickbox-compressed.js" type="text/javascript"
|
15
|
+
charset="utf-8"></script>
|
16
|
+
<script src="../../js/quicksearch.js" type="text/javascript"
|
17
|
+
charset="utf-8"></script>
|
18
|
+
<script src="../../js/darkfish.js" type="text/javascript"
|
19
|
+
charset="utf-8"></script>
|
20
|
+
|
21
|
+
</head>
|
22
|
+
<body class="class">
|
23
|
+
|
24
|
+
<div id="metadata">
|
25
|
+
<div id="file-metadata">
|
26
|
+
<div id="file-list-section" class="section">
|
27
|
+
<h3 class="section-header">In Files</h3>
|
28
|
+
<div class="section-body">
|
29
|
+
<ul>
|
30
|
+
|
31
|
+
<li><a href="../../log4r/outputter/outputterfactory_rb.html?TB_iframe=true&height=550&width=785"
|
32
|
+
class="thickbox" title="log4r/outputter/outputterfactory.rb">log4r/outputter/outputterfactory.rb</a></li>
|
33
|
+
|
34
|
+
</ul>
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
|
38
|
+
|
39
|
+
</div>
|
40
|
+
|
41
|
+
<div id="class-metadata">
|
42
|
+
|
43
|
+
<!-- Parent Class -->
|
44
|
+
|
45
|
+
<div id="parent-class-section" class="section">
|
46
|
+
<h3 class="section-header">Parent</h3>
|
47
|
+
|
48
|
+
<p class="link">Object</p>
|
49
|
+
|
50
|
+
</div>
|
51
|
+
|
52
|
+
|
53
|
+
<!-- Namespace Contents -->
|
54
|
+
|
55
|
+
|
56
|
+
<!-- Method Quickref -->
|
57
|
+
|
58
|
+
|
59
|
+
<!-- Included Modules -->
|
60
|
+
|
61
|
+
</div>
|
62
|
+
|
63
|
+
<div id="project-metadata">
|
64
|
+
|
65
|
+
|
66
|
+
<div id="fileindex-section" class="section project-section">
|
67
|
+
<h3 class="section-header">Files</h3>
|
68
|
+
<ul>
|
69
|
+
|
70
|
+
<li class="file"><a href="../../log4r/rdoc/GDC.html">GDC</a></li>
|
71
|
+
|
72
|
+
<li class="file"><a href="../../log4r/rdoc/MDC.html">MDC</a></li>
|
73
|
+
|
74
|
+
<li class="file"><a href="../../log4r/rdoc/NDC.html">NDC</a></li>
|
75
|
+
|
76
|
+
<li class="file"><a href="../../log4r/rdoc/configurator.html">configurator</a></li>
|
77
|
+
|
78
|
+
<li class="file"><a href="../../log4r/rdoc/emailoutputter.html">emailoutputter</a></li>
|
79
|
+
|
80
|
+
<li class="file"><a href="../../log4r/rdoc/formatter.html">formatter</a></li>
|
81
|
+
|
82
|
+
<li class="file"><a href="../../log4r/rdoc/log4r.html">log4r</a></li>
|
83
|
+
|
84
|
+
<li class="file"><a href="../../log4r/rdoc/logger.html">logger</a></li>
|
85
|
+
|
86
|
+
<li class="file"><a href="../../log4r/rdoc/logserver.html">logserver</a></li>
|
87
|
+
|
88
|
+
<li class="file"><a href="../../log4r/rdoc/outputter.html">outputter</a></li>
|
89
|
+
|
90
|
+
<li class="file"><a href="../../log4r/rdoc/patternformatter.html">patternformatter</a></li>
|
91
|
+
|
92
|
+
<li class="file"><a href="../../log4r/rdoc/syslogoutputter.html">syslogoutputter</a></li>
|
93
|
+
|
94
|
+
<li class="file"><a href="../../log4r/rdoc/win32eventoutputter.html">win32eventoutputter</a></li>
|
95
|
+
|
96
|
+
<li class="file"><a href="../../log4r/rdoc/yamlconfigurator.html">yamlconfigurator</a></li>
|
97
|
+
|
98
|
+
</ul>
|
99
|
+
</div>
|
100
|
+
|
101
|
+
|
102
|
+
<div id="classindex-section" class="section project-section">
|
103
|
+
<h3 class="section-header">Class Index
|
104
|
+
<span class="search-toggle"><img src="../../images/find.png"
|
105
|
+
height="16" width="16" alt="[+]"
|
106
|
+
title="show/hide quicksearch" /></span></h3>
|
107
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
108
|
+
<fieldset>
|
109
|
+
<legend>Quicksearch</legend>
|
110
|
+
<input type="text" name="quicksearch" value=""
|
111
|
+
class="quicksearch-field" />
|
112
|
+
</fieldset>
|
113
|
+
</form>
|
114
|
+
|
115
|
+
<ul class="link-list">
|
116
|
+
|
117
|
+
<li><a href="../../Log4r.html">Log4r</a></li>
|
118
|
+
|
119
|
+
<li><a href="../../Log4r/BasicFormatter.html">Log4r::BasicFormatter</a></li>
|
120
|
+
|
121
|
+
<li><a href="../../Log4r/ConfigError.html">Log4r::ConfigError</a></li>
|
122
|
+
|
123
|
+
<li><a href="../../Log4r/Configurator.html">Log4r::Configurator</a></li>
|
124
|
+
|
125
|
+
<li><a href="../../Log4r/DateFileOutputter.html">Log4r::DateFileOutputter</a></li>
|
126
|
+
|
127
|
+
<li><a href="../../Log4r/DefaultFormatter.html">Log4r::DefaultFormatter</a></li>
|
128
|
+
|
129
|
+
<li><a href="../../Log4r/EmailOutputter.html">Log4r::EmailOutputter</a></li>
|
130
|
+
|
131
|
+
<li><a href="../../Log4r/FileOutputter.html">Log4r::FileOutputter</a></li>
|
132
|
+
|
133
|
+
<li><a href="../../Log4r/Formatter.html">Log4r::Formatter</a></li>
|
134
|
+
|
135
|
+
<li><a href="../../Log4r/GDC.html">Log4r::GDC</a></li>
|
136
|
+
|
137
|
+
<li><a href="../../Log4r/IOOutputter.html">Log4r::IOOutputter</a></li>
|
138
|
+
|
139
|
+
<li><a href="../../Log4r/Log4jXmlFormatter.html">Log4r::Log4jXmlFormatter</a></li>
|
140
|
+
|
141
|
+
<li><a href="../../Log4r/Log4rTools.html">Log4r::Log4rTools</a></li>
|
142
|
+
|
143
|
+
<li><a href="../../Log4r/LogEvent.html">Log4r::LogEvent</a></li>
|
144
|
+
|
145
|
+
<li><a href="../../Log4r/LogServer.html">Log4r::LogServer</a></li>
|
146
|
+
|
147
|
+
<li><a href="../../Log4r/Logger.html">Log4r::Logger</a></li>
|
148
|
+
|
149
|
+
<li><a href="../../Log4r/MDC.html">Log4r::MDC</a></li>
|
150
|
+
|
151
|
+
<li><a href="../../Log4r/NDC.html">Log4r::NDC</a></li>
|
152
|
+
|
153
|
+
<li><a href="../../Log4r/ObjectFormatter.html">Log4r::ObjectFormatter</a></li>
|
154
|
+
|
155
|
+
<li><a href="../../Log4r/Outputter.html">Log4r::Outputter</a></li>
|
156
|
+
|
157
|
+
<li><a href="../../Log4r/PatternFormatter.html">Log4r::PatternFormatter</a></li>
|
158
|
+
|
159
|
+
<li><a href="../../Log4r/RemoteOutputter.html">Log4r::RemoteOutputter</a></li>
|
160
|
+
|
161
|
+
<li><a href="../../Log4r/RollingFileOutputter.html">Log4r::RollingFileOutputter</a></li>
|
162
|
+
|
163
|
+
<li><a href="../../Log4r/RootLogger.html">Log4r::RootLogger</a></li>
|
164
|
+
|
165
|
+
<li><a href="../../Log4r/SimpleFormatter.html">Log4r::SimpleFormatter</a></li>
|
166
|
+
|
167
|
+
<li><a href="../../Log4r/StderrOutputter.html">Log4r::StderrOutputter</a></li>
|
168
|
+
|
169
|
+
<li><a href="../../Log4r/StdoutOutputter.html">Log4r::StdoutOutputter</a></li>
|
170
|
+
|
171
|
+
<li><a href="../../Log4r/SyslogOutputter.html">Log4r::SyslogOutputter</a></li>
|
172
|
+
|
173
|
+
<li><a href="../../Log4r/UDPOutputter.html">Log4r::UDPOutputter</a></li>
|
174
|
+
|
175
|
+
<li><a href="../../Log4r/YamlConfigurator.html">Log4r::YamlConfigurator</a></li>
|
176
|
+
|
177
|
+
</ul>
|
178
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
179
|
+
</div>
|
180
|
+
|
181
|
+
|
182
|
+
</div>
|
183
|
+
</div>
|
184
|
+
|
185
|
+
<div id="documentation">
|
186
|
+
<h1 class="class">Log4r::Outputter::OutputterFactory</h1>
|
187
|
+
|
188
|
+
<div id="description">
|
189
|
+
|
190
|
+
</div>
|
191
|
+
|
192
|
+
<!-- Constants -->
|
193
|
+
|
194
|
+
|
195
|
+
<!-- Attributes -->
|
196
|
+
|
197
|
+
|
198
|
+
<!-- Methods -->
|
199
|
+
|
200
|
+
|
201
|
+
</div>
|
202
|
+
|
203
|
+
|
204
|
+
<div id="rdoc-debugging-section-dump" class="debugging-section">
|
205
|
+
|
206
|
+
<p>Disabled; run with --debug to generate this.</p>
|
207
|
+
|
208
|
+
</div>
|
209
|
+
|
210
|
+
<div id="validator-badges">
|
211
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
212
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
213
|
+
Rdoc Generator</a> 1.1.6</small>.</p>
|
214
|
+
</div>
|
215
|
+
|
216
|
+
</body>
|
217
|
+
</html>
|
218
|
+
|
@@ -0,0 +1,57 @@
|
|
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: consoleoutputters.rb [1.1.7 Log4r API]</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 file-popup">
|
24
|
+
<div id="metadata">
|
25
|
+
<dl>
|
26
|
+
<dt class="modified-date">Last Modified</dt>
|
27
|
+
<dd class="modified-date">Thu Mar 18 19:31:09 -0800 2004</dd>
|
28
|
+
|
29
|
+
|
30
|
+
<dt class="requires">Requires</dt>
|
31
|
+
<dd class="requires">
|
32
|
+
<ul>
|
33
|
+
|
34
|
+
<li>log4r/outputter/iooutputter</li>
|
35
|
+
|
36
|
+
</ul>
|
37
|
+
</dd>
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
</dl>
|
42
|
+
</div>
|
43
|
+
|
44
|
+
<div id="documentation">
|
45
|
+
|
46
|
+
<div class="description">
|
47
|
+
<h2>Description</h2>
|
48
|
+
<p>
|
49
|
+
:nodoc:
|
50
|
+
</p>
|
51
|
+
|
52
|
+
</div>
|
53
|
+
|
54
|
+
</div>
|
55
|
+
</body>
|
56
|
+
</html>
|
57
|
+
|
@@ -0,0 +1,93 @@
|
|
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: datefileoutputter.rb [1.1.7 Log4r API]</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 file-popup">
|
24
|
+
<div id="metadata">
|
25
|
+
<dl>
|
26
|
+
<dt class="modified-date">Last Modified</dt>
|
27
|
+
<dd class="modified-date">Thu Mar 11 18:37:24 -0800 2010</dd>
|
28
|
+
|
29
|
+
|
30
|
+
<dt class="requires">Requires</dt>
|
31
|
+
<dd class="requires">
|
32
|
+
<ul>
|
33
|
+
|
34
|
+
<li>log4r/outputter/fileoutputter</li>
|
35
|
+
|
36
|
+
<li>log4r/staticlogger</li>
|
37
|
+
|
38
|
+
</ul>
|
39
|
+
</dd>
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
</dl>
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="documentation">
|
47
|
+
|
48
|
+
<div class="description">
|
49
|
+
<h2>Description</h2>
|
50
|
+
<h1>DateFileOutputter</h1>
|
51
|
+
<p>
|
52
|
+
Subclass of FileOutputter that changes the log file daily. When a new day
|
53
|
+
begins, a new file is created with the date included in the name.
|
54
|
+
</p>
|
55
|
+
<h2>Usage</h2>
|
56
|
+
<pre>
|
57
|
+
df_out = DateFileOutputter.new('name',
|
58
|
+
:dirname="/tmp", :date_pattern=>"%m-%d"
|
59
|
+
)
|
60
|
+
</pre>
|
61
|
+
<h2>Rate of Change</h2>
|
62
|
+
<p>
|
63
|
+
A new logfile is created whenever the current time as formatted by the date
|
64
|
+
pattern no longer matches the previous time. (This is a simple String
|
65
|
+
comparison.) So, in order to change the frequency of the rollover, just
|
66
|
+
alter the date pattern to match how fast the files should be generated. For
|
67
|
+
instance, to generate files by the minute,
|
68
|
+
</p>
|
69
|
+
<pre>
|
70
|
+
df_out.date_pattern = "%M"
|
71
|
+
</pre>
|
72
|
+
<p>
|
73
|
+
This causes the following files to show up one minute apart, asuming the
|
74
|
+
script starts at the 4th minute of the hour:
|
75
|
+
</p>
|
76
|
+
<pre>
|
77
|
+
file_04.rb
|
78
|
+
file_05.rb
|
79
|
+
file_06.rb
|
80
|
+
...
|
81
|
+
</pre>
|
82
|
+
<p>
|
83
|
+
The only limitation of this approach is that the precise time cannot be
|
84
|
+
recorded as the smallest time interval equals the rollover period for this
|
85
|
+
system.
|
86
|
+
</p>
|
87
|
+
|
88
|
+
</div>
|
89
|
+
|
90
|
+
</div>
|
91
|
+
</body>
|
92
|
+
</html>
|
93
|
+
|
@@ -0,0 +1,179 @@
|
|
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: emailoutputter.rb [1.1.7 Log4r API]</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 file-popup">
|
24
|
+
<div id="metadata">
|
25
|
+
<dl>
|
26
|
+
<dt class="modified-date">Last Modified</dt>
|
27
|
+
<dd class="modified-date">Wed Sep 23 23:21:45 -0700 2009</dd>
|
28
|
+
|
29
|
+
|
30
|
+
<dt class="requires">Requires</dt>
|
31
|
+
<dd class="requires">
|
32
|
+
<ul>
|
33
|
+
|
34
|
+
<li>log4r/outputter/outputter</li>
|
35
|
+
|
36
|
+
<li>log4r/staticlogger</li>
|
37
|
+
|
38
|
+
<li>net/smtp</li>
|
39
|
+
|
40
|
+
</ul>
|
41
|
+
</dd>
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
</dl>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
<div id="documentation">
|
49
|
+
|
50
|
+
<div class="description">
|
51
|
+
<h2>Description</h2>
|
52
|
+
<h1>EmailOutputter</h1>
|
53
|
+
<p>
|
54
|
+
This is an experimental class that sends a number of formatted log events
|
55
|
+
as an RFC 822 email. It should work fine if Net:SMTP doesn’t cause
|
56
|
+
any problems. Just in case, create a logger named ‘log4r’ and
|
57
|
+
give it an outputter to see the logging statements made by this class. If
|
58
|
+
it fails to send email, it will set itself to OFF and stop logging.
|
59
|
+
</p>
|
60
|
+
<p>
|
61
|
+
In order to use it,
|
62
|
+
</p>
|
63
|
+
<pre>
|
64
|
+
require 'log4r/outputter/emailoutputter'
|
65
|
+
</pre>
|
66
|
+
<h2>SMTP Configuration</h2>
|
67
|
+
<p>
|
68
|
+
All arguments to Net::SMTP.start are supported. Pass them as hash
|
69
|
+
parameters to <tt>new</tt>. The to field is specified as a comma-delimited
|
70
|
+
list of emails (padded with s* if desired).
|
71
|
+
</p>
|
72
|
+
<p>
|
73
|
+
An example:
|
74
|
+
</p>
|
75
|
+
<pre>
|
76
|
+
email_out = EmailOutputter.new 'email_out',
|
77
|
+
:server=>'localhost',
|
78
|
+
:port=>25,
|
79
|
+
:domain=>'somewhere.com',
|
80
|
+
:from=>'me@foo.bar',
|
81
|
+
:to=>'them@foo.bar, me@foo.bar, bozo@clown.net',
|
82
|
+
:subject=>'Log Report'
|
83
|
+
</pre>
|
84
|
+
<h2>LogEvent Buffer</h2>
|
85
|
+
<p>
|
86
|
+
EmailOutputter stores log messages in a buffer. When the buffer reaches a
|
87
|
+
certain number, the <tt>buffsize</tt>, it will send an email containing the
|
88
|
+
contents of the buffer. The default <tt>buffsize</tt> is 100. To set
|
89
|
+
<tt>buffsize</tt>,
|
90
|
+
</p>
|
91
|
+
<pre>
|
92
|
+
email_out.buffsize = 1000 # set the buffsize to 1000
|
93
|
+
</pre>
|
94
|
+
<h2>Flush To Send Email</h2>
|
95
|
+
<p>
|
96
|
+
Flushing an EmailOutputter will mail out all the remaining LogEvents. This
|
97
|
+
is convenient for systems that encapsulate the shutdown process. It’s
|
98
|
+
a good idea to do this for all outputters,
|
99
|
+
</p>
|
100
|
+
<pre>
|
101
|
+
Outputter.each_outputter {|o| o.flush}
|
102
|
+
</pre>
|
103
|
+
<p>
|
104
|
+
Alternatively, one can invoke flush on the outputter directly,
|
105
|
+
</p>
|
106
|
+
<pre>
|
107
|
+
email_out.flush
|
108
|
+
</pre>
|
109
|
+
<p>
|
110
|
+
It’s also a good idea to notify the recepient of the email that the
|
111
|
+
system is shutting down. Before flushing, log a message to the owner of
|
112
|
+
this outputter,
|
113
|
+
</p>
|
114
|
+
<pre>
|
115
|
+
log_with_email_out.info "The system is shutting down at #{Time.now}"
|
116
|
+
</pre>
|
117
|
+
<h2>Format When?</h2>
|
118
|
+
<p>
|
119
|
+
LogEvents may either be formatted as they come in or as the email is being
|
120
|
+
composed. To do the former, specify a value of <tt>true</tt> to the hash
|
121
|
+
parameter <tt>formatfirst</tt>. The default is to format during email
|
122
|
+
composition.
|
123
|
+
</p>
|
124
|
+
<pre>
|
125
|
+
email_out.formatfirst = true # format as soon as LogEvents are received
|
126
|
+
</pre>
|
127
|
+
<h2>Immediate Notification</h2>
|
128
|
+
<p>
|
129
|
+
EmailOutputter can be configured to flush and send the email whenever the
|
130
|
+
logger sees a certain log priority. Use the <tt>immediate_at</tt> hash
|
131
|
+
parameter and specify the levels as a comma-delimited list (like an XML
|
132
|
+
element). To trigger an email on FATAL and ERROR,
|
133
|
+
</p>
|
134
|
+
<pre>
|
135
|
+
email_out.immediate_at = "FATAL, ERROR"
|
136
|
+
</pre>
|
137
|
+
<h2>Example</h2>
|
138
|
+
<p>
|
139
|
+
A security logger sends email to several folks, buffering up to 25 log
|
140
|
+
events and sending immediates on CRIT and WARN
|
141
|
+
</p>
|
142
|
+
<pre>
|
143
|
+
EmailOutputter.new 'security',
|
144
|
+
:to => 'bob@secure.net, frank@secure.net',
|
145
|
+
:buffsize => 25,
|
146
|
+
:immediate_at => 'WARN, CRIT'
|
147
|
+
</pre>
|
148
|
+
<h2>XML Configuration</h2>
|
149
|
+
<p>
|
150
|
+
See <a href="../configurator_rb.html">log4r/configurator.rb</a> for
|
151
|
+
details. Here’s an example:
|
152
|
+
</p>
|
153
|
+
<pre>
|
154
|
+
<outputter name="security" type="EmailOutputter"
|
155
|
+
buffsize="25" level="ALL">
|
156
|
+
<immediate_at>WARN, CRIT</immediate_at>
|
157
|
+
<server>localhost</server>
|
158
|
+
<from>me@secure.net</from>
|
159
|
+
<to>
|
160
|
+
bob@secure.net, frank@secure.net
|
161
|
+
</to>
|
162
|
+
...
|
163
|
+
</outputter>
|
164
|
+
</pre>
|
165
|
+
<h2>To Do</h2>
|
166
|
+
<p>
|
167
|
+
This class could use some sophistication, in particular a means to compress
|
168
|
+
the logs, a way to set the subject dynamically (probably via a block
|
169
|
+
method), and a time trigger. When the time trigger is introduced, a
|
170
|
+
<tt>buffsize</tt> of 0 should mean ignore <tt>buffsize</tt> to determine
|
171
|
+
when to send the email.
|
172
|
+
</p>
|
173
|
+
|
174
|
+
</div>
|
175
|
+
|
176
|
+
</div>
|
177
|
+
</body>
|
178
|
+
</html>
|
179
|
+
|