luaforwindows/files/docs/lualogging/rolling_file.html

129 lines
4.2 KiB
HTML
Executable File

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://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="http://www.keplerproject.org/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"><a href="http://www.keplerproject.org">
<img alt="LuaLogging logo" src="images/lualogging-128.png"/>
</a></div>
<div id="product_name"><big><strong>LuaLogging</strong></big></div>
<div id="product_description">A simple API to use logging features in Lua. <a href="br/">Portuguese version.</a></div>
</div> <!-- id="product" -->
<div id="main">
<div id="navigation">
<h1>LuaLogging</h1>
<ul>
<li><a href="index.html">Home</a>
<ul>
<li><a href="index.html#overview">Overview</a></li>
<li><a href="index.html#status">Status</a></li>
<li><a href="index.html#download">Download</a></li>
<li><a href="index.html#dependencies">Dependencies</a></li>
<li><a href="index.html#history">History</a></li>
<li><a href="index.html#credits">Credits</a></li>
<li><a href="index.html#contact">Contact</a></li>
</ul>
</li>
<li><a href="manual.html">Manual</a>
<ul>
<li><a href="manual.html#introduction">Introduction</a></li>
<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><a href="file.html">File</a></li>
<li><strong>Rolling File</strong></li>
<li><a href="sql.html">SQL</a></li>
<li><a href="socket.html">Socket</a></li>
<li><a href="email.html">Email</a></li>
</ul>
</li>
<li><a href="https://github.com/Neopallium/lualogging">Project</a>
<ul>
<li><a href="https://github.com/Neopallium/lualogging/issues">Bug Tracker</a></li>
</ul>
</li>
<li><a href="license.html">License</a></li>
</ul>
</div> <!-- id="navigation" -->
<div id="content">
<h2>Rolling File appender</h2>
<p>The rolling file appender can be used to write log messages to a file. It
uses Lua I/O routines to do its job. The rolling file appender rolls over the logfile
once it has reached a certain size limit. It also mantains a maximum number of log files.</p>
<pre class="example">
function logging.rolling_file(filename, maxFileSize, [maxBackupIndex], [logPattern])
</pre>
<ul>
<li><code>filename</code>:<br />
The name of the file to be written to.<br />
If the file cannot be opened for appending the logging request
returns nil and an error message.</li>
<li><code>maxFileSize</code>:<br />
The max size of the file in bytes. Every time the file reaches this size
it will rollover, generating a new clean log file and storing the old log
on a filename.n, where n goes from 1 to the configured maxBackupIndex.<br />
The more recent backup is the one with the lowest n on its filename.<br />
Eg. test.log.1 (most recent backup) <br />
test.log.2 (least recent backup)
</li>
<li><code>maxBackupIndex</code>:<br />
The number of backup files that will be generated.
The default value is <code>1</code>.</li>
<li><code>logPattern</code>:<br />
A pattern can be specified to control how the message is
written.<br />
The default value is <code>"%date %level %message\n"</code>.</li>
</ul>
<h2>Example</h2>
<pre class="example">
require"logging.rolling_file"
local logger = logging.rolling_file("test.log", 1024, 5, "%Y-%m-%d")
logger:info("logging.file test")
logger:debug("debugging...")
logger:error("error!")
</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<p><a href="http://validator.w3.org/check?uri=referer">
<img src="http://www.w3.org/Icons/valid-xhtml10" alt="XHTML 1.0 v&aacute;lido!" height="31" width="88" /></a></p>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>