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
|
<!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><a href="file.html">File</a></li>
<li><a href="rolling_file.html">Rolling File</a></li>
<li><a href="sql.html">SQL</a></li>
<li><strong>Socket</strong></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>Socket appender</h2>
This appender can be used to send log requests through a socket.
Socket appender relies on <a href=
"https://www.tecgraf.puc-rio.br/luasocket">LuaSocket</a> to do its
job.<br />
Upon each log request a connection is opened, the message is sent
and the connection is closed.
<pre class="example">
function logging.socket {
hostname = <i>string</i>,
port = <i>number</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>hostname</code>:<br />
Hostname can be an IP address or a host name of the server where the log
message will be sent.</li>
<li><code>port</code>:<br />
The port must be an integer number in the range [1..64K).</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.socket"
local logger = logging.socket {
hostname = "localhost",
port = 5000,
}
logger:info("logging.socket test")
logger:debug("debugging...")
logger:error("error!")
</pre>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>
|