File: sql.html

package info (click to toggle)
lua-logging 1.1.4-2
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 240 kB
  • ctags: 50
  • sloc: makefile: 20
file content (140 lines) | stat: -rw-r--r-- 4,864 bytes parent folder | download | duplicates (2)
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
	<title>LuaLogging: uma API simples para usar os recursos de log em 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="Logotipo do LuaLogging" src="lualogging-128.png"/></a></div>
	<div id="product_name"><big><b>LuaLogging</b></big></div>
	<div id="product_description">Uma API simples para usar recursos de log em Lua</div>
</div> <!-- id="product" -->

<div id="main">
	
<div id="navigation">
<h1>LuaLogging</h1>
	<ul>
		<li><a href="index.html">In&iacute;cio</a>
			<ul>
				<li><a href="index.html#overview">Vis&atilde;o geral</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#history">Hist&oacute;rico</a></li>
				<li><a href="index.html#credits">Cr&eacute;ditos</a></li>
				<li><a href="index.html#contact">Fale conosco</a></li>
			</ul>
		</li>
		<li><a href="manual.html">Manual</a>
			<ul>
				<li><a href="manual.html#introduction">Introdu&ccedil;&atilde;o</a></li>
				<li><a href="manual.html#installation">Instala&ccedil;&atilde;o</a></li>
				<li><a href="manual.html#logger">Objetos logger</a></li>
				<li><a href="manual.html#examples">Exemplos</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">Arquivo</a></li>
				<li><strong>SQL</strong></li>
				<li><a href="socket.html">Soquete</a></li>
				<li><a href="email.html">Email</a></li>
			</ul>
		</li>
		<li><a href="license.html">Licen&ccedil;a</a></li>
	</ul>
</div> <!-- id="navigation" -->

<div id="content">

<h2>Appender de SQL</h2>

<p>O appender de SQL pode ser usado para escrever mensagens de log em uma tabela
de banco de dados SQL. Ele utiliza para tal 
<a href="http://www.keplerproject.org/luasql/">LuaSQL</a>, portanto 
&eacute; poss&iacute;vel usar qualquer banco de dados suportado.</p>

<pre class="example">
function logging.sql{
    connectionfactory = <i>function</i>,
    [tablename = <i>string</i>,]
    [logdatefield = <i>string</i>,]
    [loglevelfield = <i>string</i>,]
    [logmessagefield = <i>string</i>,]
    [keepalive = <i>boolean</i>],
}
</pre>

<ul>
    <li><code>connectionfactory</code>:<br /> Precisa necessariamente ser uma
    fun&ccedil;&atilde;o que cria um objeto de conex&atilde;o LuaSQL.
    Essa fun&ccedil;&atilde;o ser&aacute; chamada sempre que for preciso criar
    uma conex&atilde;o.</li>
    
    <li><code>tablename</code>:<br /> O nome da tabela para gravar as
    solicita&ccedil;&otilde;es de log. O valor padr&atilde;o &eacute;
    <code>&quot;LogTable&quot;</code>.</li>
    
    <li><code>logdatefield</code>:<br /> O nome do campo para gravar a data de
    cada solicita&ccedil;&atilde;o de log. O valor padr&atilde;o &eacute;
    <code>&quot;LogDate&quot;</code>.</li>
    
    <li><code>loglevelfield</code>:<br /> O nome do campo para gravar o
    n&iacute;vel de cada solicita&ccedil;&atilde;o de log.
    O valor padr&atilde;o &eacute; <code>&quot;LogLevel&quot;</code>.</li>
    
    <li><code>logmessagefield</code>:<br /> O nome do campo para gravar a
    mensagem de cada solicita&ccedil;&atilde;o de log.
    O valor padr&atilde;o &eacute; <code>&quot;LogMessage&quot;</code>.</li>
    
    <li><code>keepalive</code>:<br /> Em toda solicita&ccedil;&atilde;o de log,
    uma conex&atilde;o com o banco de dados &eacute; aberta, a mensagem, escrita
    e a conex&atilde;o, fechada.<br /> Se o usu&aacute;rio quiser manter a
    conex&atilde;o aberta, pode especificar <code>keepalive = true</code>.</li>
</ul>

<h2>Exemplo</h2>

<pre class="example">
require&quot;logging.sql&quot;
require&quot;luasql.jdbc&quot;

local env, err = luasql.jdbc('com.mysql.jdbc.Driver')

local logger = logging.sql {
  connectionfactory = function()
    local con, err = env:connect('jdbc:mysql://localhost/test',
                                 'tcp', '123')
    assert(con, err)
    return con
  end,
  keepalive = true,
}

logger:info(&quot;teste de logging.sql&quot;)
logger:debug(&quot;depurando...&quot;)
logger:error(&quot;erro!&quot;)
</pre>

</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>
	<p><small>$Id: sql.html,v 1.2 2005/11/17 21:27:18 tuler Exp $</small></p>
</div> <!-- id="about" -->

</div> <!-- id="container" -->

</body>
</html>