path-log4r 1.1.10
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/INSTALL +11 -0
- data/LICENSE +90 -0
- data/LICENSE.LGPLv3 +165 -0
- data/README +95 -0
- data/Rakefile +74 -0
- data/TODO +2 -0
- data/doc/content/contact.html +22 -0
- data/doc/content/contribute.html +21 -0
- data/doc/content/index.html +90 -0
- data/doc/content/license.html +56 -0
- data/doc/content/manual.html +449 -0
- data/doc/dev/README.developers +55 -0
- data/doc/dev/checklist +23 -0
- data/doc/dev/things-to-do +5 -0
- data/doc/images/log4r-logo.png +0 -0
- data/doc/images/logo2.png +0 -0
- data/doc/log4r.css +111 -0
- data/doc/rdoc-log4r.css +696 -0
- data/doc/templates/main.html +147 -0
- data/examples/README +19 -0
- data/examples/ancestors.rb +53 -0
- data/examples/chainsaw_settings.xml +7 -0
- data/examples/customlevels.rb +34 -0
- data/examples/filelog.rb +25 -0
- data/examples/fileroll.rb +40 -0
- data/examples/gmail.rb +30 -0
- data/examples/gmail.yaml +95 -0
- data/examples/log4r_yaml.yaml +0 -0
- data/examples/logclient.rb +25 -0
- data/examples/logserver.rb +18 -0
- data/examples/moderate.xml +29 -0
- data/examples/moderateconfig.rb +66 -0
- data/examples/myformatter.rb +23 -0
- data/examples/outofthebox.rb +21 -0
- data/examples/rdoc-gen +2 -0
- data/examples/rrconfig.xml +63 -0
- data/examples/rrsetup.rb +42 -0
- data/examples/simpleconfig.rb +39 -0
- data/examples/syslogcustom.rb +52 -0
- data/examples/xmlconfig.rb +25 -0
- data/examples/yaml.rb +30 -0
- data/lib/log4r.rb +20 -0
- data/lib/log4r/GDC.rb +41 -0
- data/lib/log4r/MDC.rb +59 -0
- data/lib/log4r/NDC.rb +86 -0
- data/lib/log4r/base.rb +74 -0
- data/lib/log4r/config.rb +9 -0
- data/lib/log4r/configurator.rb +224 -0
- data/lib/log4r/formatter/formatter.rb +105 -0
- data/lib/log4r/formatter/log4jxmlformatter.rb +61 -0
- data/lib/log4r/formatter/patternformatter.rb +145 -0
- data/lib/log4r/lib/drbloader.rb +52 -0
- data/lib/log4r/lib/xmlloader.rb +24 -0
- data/lib/log4r/logevent.rb +28 -0
- data/lib/log4r/logger.rb +199 -0
- data/lib/log4r/loggerfactory.rb +89 -0
- data/lib/log4r/logserver.rb +28 -0
- data/lib/log4r/outputter/consoleoutputters.rb +18 -0
- data/lib/log4r/outputter/datefileoutputter.rb +117 -0
- data/lib/log4r/outputter/emailoutputter.rb +143 -0
- data/lib/log4r/outputter/fileoutputter.rb +56 -0
- data/lib/log4r/outputter/iooutputter.rb +55 -0
- data/lib/log4r/outputter/outputter.rb +134 -0
- data/lib/log4r/outputter/outputterfactory.rb +61 -0
- data/lib/log4r/outputter/remoteoutputter.rb +40 -0
- data/lib/log4r/outputter/rollingfileoutputter.rb +234 -0
- data/lib/log4r/outputter/scribeoutputter.rb +37 -0
- data/lib/log4r/outputter/staticoutputter.rb +30 -0
- data/lib/log4r/outputter/syslogoutputter.rb +130 -0
- data/lib/log4r/outputter/udpoutputter.rb +53 -0
- data/lib/log4r/rdoc/GDC +14 -0
- data/lib/log4r/rdoc/MDC +16 -0
- data/lib/log4r/rdoc/NDC +41 -0
- data/lib/log4r/rdoc/configurator +243 -0
- data/lib/log4r/rdoc/emailoutputter +103 -0
- data/lib/log4r/rdoc/formatter +39 -0
- data/lib/log4r/rdoc/log4r +89 -0
- data/lib/log4r/rdoc/logger +175 -0
- data/lib/log4r/rdoc/logserver +85 -0
- data/lib/log4r/rdoc/outputter +108 -0
- data/lib/log4r/rdoc/patternformatter +128 -0
- data/lib/log4r/rdoc/scribeoutputter +16 -0
- data/lib/log4r/rdoc/syslogoutputter +29 -0
- data/lib/log4r/rdoc/win32eventoutputter +7 -0
- data/lib/log4r/rdoc/yamlconfigurator +20 -0
- data/lib/log4r/repository.rb +88 -0
- data/lib/log4r/staticlogger.rb +49 -0
- data/lib/log4r/yamlconfigurator.rb +196 -0
- data/tests/README +10 -0
- data/tests/testGDC.rb +26 -0
- data/tests/testMDC.rb +42 -0
- data/tests/testNDC.rb +27 -0
- data/tests/testall.rb +6 -0
- data/tests/testbase.rb +49 -0
- data/tests/testchainsaw.rb +48 -0
- data/tests/testconf.xml +37 -0
- data/tests/testcustom.rb +27 -0
- data/tests/testformatter.rb +27 -0
- data/tests/testlogger.rb +196 -0
- data/tests/testoutputter.rb +132 -0
- data/tests/testpatternformatter.rb +78 -0
- data/tests/testthreads.rb +35 -0
- data/tests/testxmlconf.rb +45 -0
- metadata +184 -0
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<!-- TITLE -->
|
|
4
|
+
<link rel="stylesheet" type="text/css" href="log4r.css">
|
|
5
|
+
</head>
|
|
6
|
+
<body>
|
|
7
|
+
|
|
8
|
+
<div align="right"><img src="images/log4r-logo.png"/></div>
|
|
9
|
+
<hr noshade>
|
|
10
|
+
|
|
11
|
+
<table border="0" cellspacing="3" cellpadding="0" width="100%">
|
|
12
|
+
<tr>
|
|
13
|
+
|
|
14
|
+
<!-- Sidebar -->
|
|
15
|
+
<td width="15%" valign="top">
|
|
16
|
+
<table cellspacing="0" cellpadding="0" width=100%" nowrap="true">
|
|
17
|
+
|
|
18
|
+
<!-- Log4r Box -->
|
|
19
|
+
<tr><td >
|
|
20
|
+
<table width="100%" cellspacing="0" cellpadding="0" align="center" >
|
|
21
|
+
<tr><td width="100%" class="menutitle">Log4r</td></tr>
|
|
22
|
+
<tr><td width="100%" class="menubuff"> </td></tr>
|
|
23
|
+
<!-- list -->
|
|
24
|
+
<table class="menu" cellspacing="3" cellpadding="0" width="100%"
|
|
25
|
+
align="center">
|
|
26
|
+
<tr><td ><a href="index.html">Home Page</a></tr></td>
|
|
27
|
+
<tr><td><a href="http://sourceforge.net/project/showfiles.php?group_id=43396">
|
|
28
|
+
Download</a></td></tr>
|
|
29
|
+
<tr><td nowrap="true">
|
|
30
|
+
<a href="http://rubyforge.org/projects/log4r/">@ RubyForge</a>
|
|
31
|
+
</td></tr>
|
|
32
|
+
<tr><td>
|
|
33
|
+
<a href="license.html">License</a>
|
|
34
|
+
</td></tr>
|
|
35
|
+
<tr><td>
|
|
36
|
+
<a href="contact.html">Contact</a>
|
|
37
|
+
</td></tr>
|
|
38
|
+
</table>
|
|
39
|
+
</td></tr>
|
|
40
|
+
|
|
41
|
+
<tr><td height=15> </td></tr>
|
|
42
|
+
|
|
43
|
+
<!-- Doc Box -->
|
|
44
|
+
<tr><td >
|
|
45
|
+
<table cellspacing="0" cellpadding="0" align="center" width="100%">
|
|
46
|
+
<tr><td width="100%" class="menutitle">Documents</td></tr>
|
|
47
|
+
<tr><td width="100%" class="menubuff"> </td></tr>
|
|
48
|
+
<!-- list -->
|
|
49
|
+
<table class="menu" cellspacing="3" cellpadding="0" width="100%"
|
|
50
|
+
align="center">
|
|
51
|
+
<tr><td>
|
|
52
|
+
<a href="manual.html">#{version} Manual</a>
|
|
53
|
+
</tr></tr>
|
|
54
|
+
<tr><td>
|
|
55
|
+
<a href="rdoc/index.html">#{version} RDoc API</a>
|
|
56
|
+
</td></tr>
|
|
57
|
+
|
|
58
|
+
</table>
|
|
59
|
+
</td></tr>
|
|
60
|
+
|
|
61
|
+
<tr><td height=15> </td></tr>
|
|
62
|
+
|
|
63
|
+
<!-- Development Box -->
|
|
64
|
+
<tr><td >
|
|
65
|
+
<table cellspacing="0" cellpadding="0" align="center" width="100%">
|
|
66
|
+
<tr><td width="100%" class="menutitle">Development</td></tr>
|
|
67
|
+
<tr><td width="100%" class="menubuff"> </td></tr>
|
|
68
|
+
<!-- list -->
|
|
69
|
+
<table class="menu" cellspacing="3" cellpadding="0" width="100%"
|
|
70
|
+
align="center">
|
|
71
|
+
<tr><td>
|
|
72
|
+
<a
|
|
73
|
+
href="http://sourceforge.net/tracker/?atid=436181&group_id=43396&func=browse">
|
|
74
|
+
Bugs</a>
|
|
75
|
+
</tr></tr>
|
|
76
|
+
<tr><td>
|
|
77
|
+
<a
|
|
78
|
+
href="http://sourceforge.net/tracker/?atid=436184&group_id=43396&func=browse">
|
|
79
|
+
Requests</a>
|
|
80
|
+
</td></tr>
|
|
81
|
+
<tr><td>
|
|
82
|
+
<a href="contribute.html">Contribute</a>
|
|
83
|
+
</td></tr>
|
|
84
|
+
|
|
85
|
+
</table>
|
|
86
|
+
</td></tr>
|
|
87
|
+
|
|
88
|
+
<tr><td height=15> </td></tr>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
<!-- Link Box -->
|
|
92
|
+
<tr><td >
|
|
93
|
+
<table cellspacing="0" cellpadding="0" align="center" width="100%">
|
|
94
|
+
<tr><td width="100%" class="menutitle">Links</td></tr>
|
|
95
|
+
<tr><td width="100%" class="menubuff"> </td></tr>
|
|
96
|
+
<!-- list -->
|
|
97
|
+
<table class="menu" cellspacing="3" cellpadding="0" width="100%"
|
|
98
|
+
align="center">
|
|
99
|
+
<tr><td>
|
|
100
|
+
<a href="http://www.ruby-lang.org/en/index.html">Ruby</a>
|
|
101
|
+
</td></tr>
|
|
102
|
+
<tr><td>
|
|
103
|
+
<a href="http://jakarta.apache.org/log4j/docs/index.html">Apache Log4j</a>
|
|
104
|
+
</tr></tr>
|
|
105
|
+
<tr><td>
|
|
106
|
+
<a href="http://www.ruby-lang.org/en/raa-list.rhtml?name=REXML">REXML</a>
|
|
107
|
+
</td></tr>
|
|
108
|
+
<tr><td>
|
|
109
|
+
<a href="http://rm-f.net/~cout/ruby/romp/">ROMP</a>
|
|
110
|
+
</td></tr>
|
|
111
|
+
<tr><td height="5"> </td></tr>
|
|
112
|
+
<tr><td align="center">
|
|
113
|
+
<a href="http://rubyforge.org">
|
|
114
|
+
<!-- rubyforge image goes here -->
|
|
115
|
+
</a>
|
|
116
|
+
</a>
|
|
117
|
+
</td></tr>
|
|
118
|
+
|
|
119
|
+
</table>
|
|
120
|
+
</td></tr>
|
|
121
|
+
|
|
122
|
+
</table>
|
|
123
|
+
</td>
|
|
124
|
+
|
|
125
|
+
<!-- Main column -->
|
|
126
|
+
<td width="85%" align="left" valign="top">
|
|
127
|
+
<center>
|
|
128
|
+
<table cellspacing="0" cellpadding="0" align="center" width="95%">
|
|
129
|
+
|
|
130
|
+
<!-- CONTENT -->
|
|
131
|
+
|
|
132
|
+
</table>
|
|
133
|
+
</center>
|
|
134
|
+
</td>
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
</tr>
|
|
138
|
+
</table>
|
|
139
|
+
<hr noshade>
|
|
140
|
+
<div align="right">
|
|
141
|
+
<font color="#888888" size="-1">
|
|
142
|
+
<i>
|
|
143
|
+
<!-- CVSID -->
|
|
144
|
+
</i></font>
|
|
145
|
+
</div>
|
|
146
|
+
</body>
|
|
147
|
+
</html>
|
data/examples/README
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
The examples are:
|
|
2
|
+
|
|
3
|
+
1. outofthebox.rb - How to get started with minimal setup
|
|
4
|
+
2. simpleconfig.rb - Using Log4r casually
|
|
5
|
+
3. moderateconfig.rb - A more sophisticated config
|
|
6
|
+
4. xmlconfig.rb and moderate.xml - XML configuration example based on #3
|
|
7
|
+
5. rrsetup.rb and rrconfig.xml - A real example (or used to be ;-)
|
|
8
|
+
6. logserver.rb and logclient.rb - Remote logging example
|
|
9
|
+
7. fileroll.rb - Using RollingFileOutputter
|
|
10
|
+
8. yaml.rb and log4r_yaml.yaml - YAML configuration example
|
|
11
|
+
|
|
12
|
+
The output will go to screen and to files in the directory logs/.
|
|
13
|
+
|
|
14
|
+
Note to RubyGems users: The syntax to require log4r as a gem is as follows:
|
|
15
|
+
|
|
16
|
+
require 'rubygems'
|
|
17
|
+
require_gem 'log4r'
|
|
18
|
+
|
|
19
|
+
Obviously, the examples will need to be modified to follow this.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
$: << File.join("..","lib")
|
|
2
|
+
|
|
3
|
+
# This file demonstrates how inheritence works in log4r
|
|
4
|
+
#
|
|
5
|
+
require 'rubygems'
|
|
6
|
+
require 'log4r'
|
|
7
|
+
include Log4r
|
|
8
|
+
|
|
9
|
+
Logger.global.level = ALL
|
|
10
|
+
formatter = PatternFormatter.new(:pattern => "%l - %m - %c")
|
|
11
|
+
StdoutOutputter.new('console', :formatter => formatter)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# By default, the root logger is the top ancestor to the
|
|
15
|
+
# immediate descendants
|
|
16
|
+
# However, any descendants below the top ancestors will
|
|
17
|
+
# have the ancestor as their RootLogger, which dictates
|
|
18
|
+
# (among other things) the lowest level of log messages
|
|
19
|
+
Logger.new('grandparent', FATAL).add('console')
|
|
20
|
+
Logger.new('grandparent::parent', DEBUG)
|
|
21
|
+
Logger.new('grandparent::parent::child', DEBUG)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def do_logging(log)
|
|
25
|
+
puts "--"
|
|
26
|
+
log.debug "This is debug"
|
|
27
|
+
log.info "This is info"
|
|
28
|
+
log.warn "This is warn"
|
|
29
|
+
log.error "This is error"
|
|
30
|
+
log.fatal "This is fatal"
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# This logger is configured to log at FATAL, and it does
|
|
34
|
+
do_logging Logger['grandparent']
|
|
35
|
+
|
|
36
|
+
# This logger is configured to log at DEBUG level, but it logs
|
|
37
|
+
# at FATAL because grandparent is now the RootLogger for parent
|
|
38
|
+
do_logging Logger['grandparent::parent']
|
|
39
|
+
|
|
40
|
+
# 'child' logger is configured to log at DEBUG level, but it logs
|
|
41
|
+
# at FATAL because of grandparent
|
|
42
|
+
do_logging Logger['grandparent::parent::child']
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
Logger['grandparent'].level = DEBUG
|
|
46
|
+
# Now that the grandparent's level is set to DEBUG, the child
|
|
47
|
+
# will log at that level
|
|
48
|
+
do_logging Logger['grandparent::parent::child']
|
|
49
|
+
|
|
50
|
+
Logger['grandparent'].level = OFF
|
|
51
|
+
puts "off?"
|
|
52
|
+
do_logging Logger['grandparent::parent::child']
|
|
53
|
+
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" ?>
|
|
2
|
+
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
|
|
3
|
+
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
|
|
4
|
+
<plugin name="log4r_test" class="org.apache.log4j.net.UDPReceiver">
|
|
5
|
+
<param name="Port" value="8071" />
|
|
6
|
+
</plugin>
|
|
7
|
+
</log4j:configuration>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Suppose we don't like having 5 levels named DEBUG, INFO, etc.
|
|
2
|
+
# Suppose we'd rather use 3 levels named Foo, Bar, and Baz.
|
|
3
|
+
# Log4r allows you to rename the levels and their corresponding methods
|
|
4
|
+
# in a painless way. This file provides and example
|
|
5
|
+
|
|
6
|
+
$: << '../lib'
|
|
7
|
+
|
|
8
|
+
require 'log4r'
|
|
9
|
+
require 'log4r/configurator'
|
|
10
|
+
include Log4r
|
|
11
|
+
|
|
12
|
+
# This is how we specify our levels
|
|
13
|
+
Configurator.custom_levels "Foo", "Bar", "Baz"
|
|
14
|
+
|
|
15
|
+
l = Logger.new('custom levels')
|
|
16
|
+
l.add StdoutOutputter.new('console')
|
|
17
|
+
|
|
18
|
+
l.level = Foo
|
|
19
|
+
puts l.foo?
|
|
20
|
+
l.foo "This is foo"
|
|
21
|
+
puts l.bar?
|
|
22
|
+
l.bar "this is bar"
|
|
23
|
+
puts l.baz?
|
|
24
|
+
l.baz "this is baz"
|
|
25
|
+
|
|
26
|
+
puts "Now change to Baz"
|
|
27
|
+
|
|
28
|
+
l.level = Baz
|
|
29
|
+
puts l.foo?
|
|
30
|
+
l.foo {"This is foo"}
|
|
31
|
+
puts l.bar?
|
|
32
|
+
l.bar {"this is bar"}
|
|
33
|
+
puts l.baz?
|
|
34
|
+
l.baz {"this is baz"}
|
data/examples/filelog.rb
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Here's how to start using log4r right away
|
|
2
|
+
$: << File.join('..','lib') # path if log4r not installed
|
|
3
|
+
require "log4r"
|
|
4
|
+
|
|
5
|
+
Log = Log4r::Logger.new("filelog") # create a logger
|
|
6
|
+
# add FileOutputter
|
|
7
|
+
Log.add Log4r::FileOutputter.new( "filelog", {:filename=>"file.log"} )
|
|
8
|
+
|
|
9
|
+
# See book keeping logger events
|
|
10
|
+
iLog = Log4r::Logger.new("log4r")
|
|
11
|
+
iLog.add Log4r::Outputter.stderr
|
|
12
|
+
|
|
13
|
+
# do some logging
|
|
14
|
+
def do_logging
|
|
15
|
+
Log.debug "debugging"
|
|
16
|
+
Log.info "a piece of info"
|
|
17
|
+
Log.warn "Danger, Will Robinson, danger!"
|
|
18
|
+
Log.error "I dropped my Wookie! :("
|
|
19
|
+
Log.fatal "kaboom!"
|
|
20
|
+
end
|
|
21
|
+
do_logging
|
|
22
|
+
|
|
23
|
+
# now let's filter anything below WARN level (DEBUG and INFO)
|
|
24
|
+
Log.level = Log4r::WARN
|
|
25
|
+
do_logging
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# How to use RollingFileOutputter
|
|
2
|
+
|
|
3
|
+
$: << "../lib"
|
|
4
|
+
require 'log4r'
|
|
5
|
+
include Log4r
|
|
6
|
+
|
|
7
|
+
puts "this will take a while"
|
|
8
|
+
|
|
9
|
+
# example of log file being split by time constraint 'maxtime'
|
|
10
|
+
config = {
|
|
11
|
+
"filename" => "logs/TestTime.log",
|
|
12
|
+
"maxtime" => 10,
|
|
13
|
+
"trunc" => true
|
|
14
|
+
}
|
|
15
|
+
timeLog = Logger.new 'WbExplorer'
|
|
16
|
+
timeLog.outputters = RollingFileOutputter.new("WbExplorer", config)
|
|
17
|
+
timeLog.level = DEBUG
|
|
18
|
+
|
|
19
|
+
# log something once a second for 100 seconds
|
|
20
|
+
100.times { |t|
|
|
21
|
+
timeLog.info "blah #{t}"
|
|
22
|
+
sleep(1.0)
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
# example of log file being split by space constraint 'maxsize'
|
|
26
|
+
config = {
|
|
27
|
+
"filename" => "logs/TestSize.log",
|
|
28
|
+
"maxsize" => 16000,
|
|
29
|
+
"trunc" => true
|
|
30
|
+
}
|
|
31
|
+
sizeLog = Logger.new 'WbExplorer'
|
|
32
|
+
sizeLog.outputters = RollingFileOutputter.new("WbExplorer", config)
|
|
33
|
+
sizeLog.level = DEBUG
|
|
34
|
+
|
|
35
|
+
# log a large number of times
|
|
36
|
+
100000.times { |t|
|
|
37
|
+
sizeLog.info "blah #{t}"
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
puts "done! check the two sets of log files in logs/ (TestTime and TestSize)"
|
data/examples/gmail.rb
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Log4r can be configured using YAML to email using STARTTLS. This example uses gmail.yaml
|
|
2
|
+
|
|
3
|
+
$: << File.join('..','lib') # path if log4r is not installed
|
|
4
|
+
require 'log4r'
|
|
5
|
+
require 'log4r/yamlconfigurator'
|
|
6
|
+
# we use various outputters, so require them, otherwise config chokes
|
|
7
|
+
require 'log4r/outputter/datefileoutputter'
|
|
8
|
+
require 'log4r/outputter/emailoutputter'
|
|
9
|
+
include Log4r
|
|
10
|
+
|
|
11
|
+
cfg = YamlConfigurator # shorthand
|
|
12
|
+
cfg['HOME'] = '.' # the only parameter in the YAML, our HOME directory
|
|
13
|
+
|
|
14
|
+
# load the YAML file with this
|
|
15
|
+
cfg.load_yaml_file('gmail.yaml')
|
|
16
|
+
|
|
17
|
+
# Method to log each of the custom levels
|
|
18
|
+
def do_logging(log)
|
|
19
|
+
log.deb "This is DEB"
|
|
20
|
+
log.inf "This is INF"
|
|
21
|
+
log.prt "This is PRT"
|
|
22
|
+
log.wrn "This is WRN"
|
|
23
|
+
log.err "This is ERR"
|
|
24
|
+
log.fat "This is FAT"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# turn off the email outputter
|
|
28
|
+
Outputter['email'].level = WRN
|
|
29
|
+
# the other two outputters log to stderr and a timestamped file in ./logs
|
|
30
|
+
do_logging( Logger['mylogger'])
|
data/examples/gmail.yaml
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
purpose : Test Mailing to Gmail
|
|
4
|
+
description: Provides configuration info for login to email servers via STARTTLS, e.g. gmail.com
|
|
5
|
+
say : gmail is nice
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
# *** YAML2LOG4R ***
|
|
9
|
+
log4r_config:
|
|
10
|
+
# define all pre config ...
|
|
11
|
+
pre_config:
|
|
12
|
+
custom_levels:
|
|
13
|
+
- DEB
|
|
14
|
+
- INF
|
|
15
|
+
- PRT
|
|
16
|
+
- WRN
|
|
17
|
+
- ERR
|
|
18
|
+
- FAT
|
|
19
|
+
global:
|
|
20
|
+
level: DEB
|
|
21
|
+
root :
|
|
22
|
+
level: DEB
|
|
23
|
+
parameters:
|
|
24
|
+
- name : x
|
|
25
|
+
value : aaa
|
|
26
|
+
- name : y
|
|
27
|
+
value : bbb
|
|
28
|
+
|
|
29
|
+
# define all loggers ...
|
|
30
|
+
loggers:
|
|
31
|
+
- name : mylogger
|
|
32
|
+
level : DEB
|
|
33
|
+
additive : 'false'
|
|
34
|
+
trace : 'false'
|
|
35
|
+
outputters:
|
|
36
|
+
- stderr
|
|
37
|
+
- logfile
|
|
38
|
+
- email
|
|
39
|
+
|
|
40
|
+
- name : yourlogger
|
|
41
|
+
level : INF
|
|
42
|
+
outputters:
|
|
43
|
+
- stderr
|
|
44
|
+
- logfile
|
|
45
|
+
|
|
46
|
+
# define all outputters (incl. formatters)
|
|
47
|
+
outputters:
|
|
48
|
+
- type : StderrOutputter
|
|
49
|
+
name : stderr
|
|
50
|
+
level : DEB
|
|
51
|
+
only_at :
|
|
52
|
+
- INF
|
|
53
|
+
- WRN
|
|
54
|
+
- FAT
|
|
55
|
+
formatter:
|
|
56
|
+
date_pattern: '%y%m%d %H:%M:%S'
|
|
57
|
+
pattern : '%d %l: %m '
|
|
58
|
+
type : PatternFormatter
|
|
59
|
+
|
|
60
|
+
- type : DateFileOutputter
|
|
61
|
+
name : logfile
|
|
62
|
+
level : DEB
|
|
63
|
+
date_pattern: '%Y%m%d'
|
|
64
|
+
trunc : 'false'
|
|
65
|
+
dirname : "#{HOME}/logs"
|
|
66
|
+
formatter :
|
|
67
|
+
date_pattern: '%y%m%d %H:%M:%S'
|
|
68
|
+
pattern : '%d %l: %m'
|
|
69
|
+
type : PatternFormatter
|
|
70
|
+
|
|
71
|
+
- type : EmailOutputter
|
|
72
|
+
name : email
|
|
73
|
+
level : FAT
|
|
74
|
+
tls : 'true'
|
|
75
|
+
domain : gmail.com
|
|
76
|
+
server : smtp.gmail.com
|
|
77
|
+
port : '587'
|
|
78
|
+
subject : 'Message from testing:'
|
|
79
|
+
from : INSERT_YOUR_FROM_ADDRESS
|
|
80
|
+
to : INSERT_YOUR_TO_ADDRESS
|
|
81
|
+
acct : INSERT_YOUR_GMAIL_ACCOUNTNAME
|
|
82
|
+
passwd : INSERT_YOUR_GMAIL_PASSWORD
|
|
83
|
+
authtype : plain
|
|
84
|
+
immediate_at: FAT
|
|
85
|
+
formatfirst : 'true'
|
|
86
|
+
formatter :
|
|
87
|
+
date_pattern: '%y%m%d %H:%M:%S'
|
|
88
|
+
pattern : '%d %l: %m'
|
|
89
|
+
type : PatternFormatter
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
purpose : TestB
|
|
93
|
+
description: This is the last YAML doc
|
|
94
|
+
say : Bye
|
|
95
|
+
|