1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>LuaLogging: A simple API to use logging features in Lua</title>
<link rel="stylesheet" href="doc.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<div id="container">
<div id="product">
<div id="product_logo">
<img alt="LuaLogging logo" src="images/lualogging-128.png"/>
</div>
<div id="product_name"><big><strong>LuaLogging</strong></big></div>
<div id="product_description">A simple API to use logging features in Lua.</div>
</div> <!-- id="product" -->
<div id="main">
<div id="navigation">
<h1>LuaLogging</h1>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="manual.html">Manual</a>
<ul>
<li><a href="manual.html#installation">Installation</a></li>
<li><a href="manual.html#logger">Logger objects</a></li>
<li><a href="manual.html#examples">Examples</a></li>
</ul>
</li>
<li><a href="manual.html#appenders">Appenders</a>
<ul>
<li><a href="console.html">Console</a></li>
<li><strong>File</strong></li>
<li><a href="rolling_file.html">Rolling File</a></li>
<li><a href="sql.html">SQL</a></li>
<li><a href="socket.html">Socket</a></li>
<li><a href="rsyslog.html">Rsyslog</a></li>
<li><a href="email.html">Email</a></li>
<li><a href="nginx.html">Nginx</a></li>
</ul>
</li>
<li><a href="https://github.com/lunarmodules/lualogging">Project</a></li>
<li><a href="license.html">License</a></li>
</ul>
</div> <!-- id="navigation" -->
<div id="content">
<h2>File appender</h2>
<p>The file appender can be used to write log messages to a file. It
uses Lua I/O routines to do its job.</p>
<pre class="example">
function logging.file {
[filename = <i>string</i>,]
[datePattern = <i>string</i>,]
[logPattern = <i>string</i>,]
[logPatterns = {
[logging.DEBUG = <i>string</i>,]
[logging.INFO = <i>string</i>,]
[logging.WARN = <i>string</i>,]
[logging.ERROR = <i>string</i>,]
[logging.FATAL = <i>string</i>,]
},]
[timestampPattern = <i>string</i>,]
[logLevel = <i>log-level-constant</i>,]
}
</pre>
<ul>
<li><code>filename</code>:<br />
The name of the file to be written to. On each call to log a
message the file is opened for appending and closed immediately.<br />
If the file cannot be opened for appending the logging request
returns nil and an error message.<br />
The default value is <code>"lualogging.log"</code>.</li>
<li><code>datePattern</code>:<br />
This is an optional parameter that can be used to specify a date
pattern that will be passed to the
<a href="https://www.lua.org/manual/5.1/manual.html#pdf-os.date"><code>os.date</code></a>
function to compose the filename.<br />
This is useful to create daily or monthly log files. If the user
wants to create one log file per day he specifies a
<code>"%Y-%m-%d"</code> pattern and a filename like
<code>"temp%s.log"</code>.</li>
<li><code>logPatterns</code>:<br />
A table with logPattern strings indexed by the log-levels.
A logPattern specifies how the message is written.<br />
If this parameter is omitted, a patterns table will be created with the
parameter <code>logPattern</code> as the default value for each log-level.
If <code>logPattern</code> also is omitted then each level will fall back to
the current default setting, see <code>logging.defaultLogPatterns</code>.
</li>
<li><code>logPattern</code>:<br />
This value will be used as the default value for each log-level that was
omitted in <code>logPatterns</code>.
</li>
<li><code>timestampPattern</code>:<br />
This is an optional parameter that can be used to specify a date/time formatting
in the log message.
See <code>logging.date</code> for the format.
The default is taken from <code>logging.defaultTimestampPattern()</code>.</li>
<li><code>logLevel</code>:<br />
The initial log-level to set for the created logger.</li>
</ul>
<h2>Example</h2>
<pre class="example">
require"logging.file"
local logger = logging.file {
filename = "test%s.log",
datePattern = "%Y-%m-%d",
}
logger:info("logging.file test")
logger:debug("debugging...")
logger:error("error!")
</pre>
<p> </p>
<p> </p>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>
|