Moved modules/* to mods-available/*
[freeradius.git] / raddb / mods-available / sql_log
1 # -*- text -*-
2 #
3 #  $Id$
4
5 #
6 #  The rlm_sql_log module appends the SQL queries in a log
7 #  file which is read later by the radsqlrelay program.
8 #
9 #  This module only performs the dynamic expansion of the
10 #  variables found in the SQL statements. No operation is
11 #  executed on the database server. (this could be done
12 #  later by an external program) That means the module is
13 #  useful only with non-"SELECT" statements.
14 #
15 #  See rlm_sql_log(5) manpage.
16 #
17 #  This same functionality could also be implemented by logging
18 #  to a "detail" file, reading that, and then writing to SQL.
19 #  See raddb/sites-available/buffered-sql for an example.
20 #
21 sql_log {
22         path = "${radacctdir}/sql-relay"
23         acct_table = "radacct"
24         postauth_table = "radpostauth"
25         sql_user_name = "%{%{User-Name}:-DEFAULT}"
26
27         #
28         #  Setting this to "yes" will allow UTF-8 characters to be
29         #  written to the log file.  Otherwise, they are escaped
30         #  as being potentially invalid.
31         #
32         utf8 = no
33
34         Start = "INSERT INTO ${acct_table} (AcctSessionId, UserName, \
35          NASIPAddress, FramedIPAddress, AcctStartTime, AcctStopTime, \
36          AcctSessionTime, AcctTerminateCause) VALUES                 \
37          ('%{Acct-Session-Id}', '%{User-Name}', '%{NAS-IP-Address}', \
38          '%{Framed-IP-Address}', '%S', '0', '0', '');"
39         Stop = "INSERT INTO ${acct_table} (AcctSessionId, UserName,  \
40          NASIPAddress, FramedIPAddress, AcctStartTime, AcctStopTime, \
41          AcctSessionTime, AcctTerminateCause) VALUES                 \
42          ('%{Acct-Session-Id}', '%{User-Name}', '%{NAS-IP-Address}', \
43          '%{Framed-IP-Address}', '0', '%S', '%{Acct-Session-Time}',  \
44          '%{Acct-Terminate-Cause}');"
45         Alive = "INSERT INTO ${acct_table} (AcctSessionId, UserName, \
46          NASIPAddress, FramedIPAddress, AcctStartTime, AcctStopTime, \
47          AcctSessionTime, AcctTerminateCause) VALUES                 \
48          ('%{Acct-Session-Id}', '%{User-Name}', '%{NAS-IP-Address}', \
49          '%{Framed-IP-Address}', '0', '0', '%{Acct-Session-Time}','');"
50
51         Post-Auth = "INSERT INTO ${postauth_table}                   \
52          (username, pass, reply, authdate) VALUES                    \
53          ('%{User-Name}', '%{User-Password:-Chap-Password}',         \
54          '%{reply:Packet-Type}', '%S');"
55 }
56