<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.darenet.org/skins/common/feed.css?12"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>IRCu readme.log - Revision history</title>
		<link>http://wiki.darenet.org/index.php?title=IRCu_readme.log&amp;action=history</link>
		<description>Revision history for this page on the wiki</description>
		<language>en</language>
		<generator>MediaWiki 1.15.1</generator>
		<lastBuildDate>Sun, 05 Apr 2026 20:52:54 GMT</lastBuildDate>
		<item>
			<title>Secretagent:&amp;#32;New page: &lt;pre&gt; Older versions of ircd had no consistent way of logging various actions.  Some things, such as G-lines, were written out to log files with names compiled into the server.  Others cou...</title>
			<link>http://wiki.darenet.org/index.php?title=IRCu_readme.log&amp;diff=2241&amp;oldid=prev</link>
			<description>&lt;p&gt;New page: &amp;lt;pre&amp;gt; Older versions of ircd had no consistent way of logging various actions.  Some things, such as G-lines, were written out to log files with names compiled into the server.  Others cou...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Older versions of ircd had no consistent way of logging various&lt;br /&gt;
actions.  Some things, such as G-lines, were written out to log files&lt;br /&gt;
with names compiled into the server.  Others could only be logged&lt;br /&gt;
through syslog.  Some required that their log files exist beforehand.&lt;br /&gt;
For u2.10.11, this situation has changed dramatically.&lt;br /&gt;
&lt;br /&gt;
All logging in the server is now unified through a single logging&lt;br /&gt;
subsystem.  Unfortunately, the server still does not generate all the&lt;br /&gt;
logs that it could, and some more tuning is in store for the next&lt;br /&gt;
major release of ircd.  Nevertheless, the logs that are generated are&lt;br /&gt;
far more consistent, and those log messages may be sent to a given&lt;br /&gt;
file, to syslog, or even to online operators--or any combination of&lt;br /&gt;
these three methods.  This file is intended to describe configuration&lt;br /&gt;
of the logging subsystem.&lt;br /&gt;
&lt;br /&gt;
All logs are classified by a &amp;quot;subsystem&amp;quot; and a &amp;quot;level.&amp;quot;  The subsystem&lt;br /&gt;
is a major classification; each subsystem may be configured&lt;br /&gt;
individually.  The level classification is used to indicate how&lt;br /&gt;
important the message is; subsystems may be configured to omit log&lt;br /&gt;
messages with less than a certain importance--not unlike syslog.&lt;br /&gt;
&lt;br /&gt;
Levels&lt;br /&gt;
&lt;br /&gt;
Levels are used to classify the importance of various log messages.&lt;br /&gt;
The most important level is the &amp;quot;CRIT&amp;quot; level; the least important is&lt;br /&gt;
the &amp;quot;DEBUG&amp;quot; level.  Each of the levels is also mapped to a&lt;br /&gt;
corresponding syslog level, and some may even force generation of&lt;br /&gt;
certain types of server notices.  Each importance level is described&lt;br /&gt;
below.&lt;br /&gt;
&lt;br /&gt;
 * CRIT - Used for very critical notifications, such as server&lt;br /&gt;
   termination.  This is mapped to the corresponding &amp;quot;CRIT&amp;quot; syslog&lt;br /&gt;
   priority.  This will also generate server notices to the &amp;quot;OLDSNO&amp;quot;&lt;br /&gt;
   server notice mask.&lt;br /&gt;
&lt;br /&gt;
 * ERROR - Used to report important error conditions.  This is mapped&lt;br /&gt;
   to the corresponding &amp;quot;ERR&amp;quot; syslog priority.&lt;br /&gt;
&lt;br /&gt;
 * WARNING - Used to warn about certain conditions.  This is mapped to&lt;br /&gt;
   the corresponding &amp;quot;WARNING&amp;quot; syslog priority.&lt;br /&gt;
&lt;br /&gt;
 * NOTICE - Used for reporting important information.  This is mapped&lt;br /&gt;
   to the corresponding &amp;quot;NOTICE&amp;quot; syslog priority.&lt;br /&gt;
&lt;br /&gt;
 * TRACE - Used to tracing operation of the server.  This is mapped to&lt;br /&gt;
   the corresponding &amp;quot;INFO&amp;quot; syslog priority.&lt;br /&gt;
&lt;br /&gt;
 * INFO - Used for reporting unimportant but potentially useful&lt;br /&gt;
   information.  This is mapped to the corresponding &amp;quot;INFO&amp;quot; syslog&lt;br /&gt;
   priority.&lt;br /&gt;
&lt;br /&gt;
 * DEBUG - Used for reporting debugging information.  This is mapped&lt;br /&gt;
   to the corresponding &amp;quot;DEBUG&amp;quot; syslog priority.  This will also&lt;br /&gt;
   generate server notices to the &amp;quot;DEBUG&amp;quot; server notice mask.&lt;br /&gt;
&lt;br /&gt;
Subsystems&lt;br /&gt;
&lt;br /&gt;
All of the subsystems are described below, along with their default&lt;br /&gt;
logging configuration.  There are no default log files to log to, and&lt;br /&gt;
the default logging level is INFO (unless the server is compiled with&lt;br /&gt;
debugging enabled)--this means that only notices of importance INFO or&lt;br /&gt;
higher will be logged.&lt;br /&gt;
&lt;br /&gt;
 * SYSTEM - Used to report information that affects the server as a&lt;br /&gt;
   whole.  By default, log messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * CONFIG - Used to report information concerning the configuration&lt;br /&gt;
   file.  By default, log messages to this subsystem go to the default&lt;br /&gt;
   syslog facility, which defaults to &amp;quot;USER,&amp;quot; and to the &amp;quot;OLDSNO&amp;quot;&lt;br /&gt;
   server notice mask.&lt;br /&gt;
&lt;br /&gt;
 * OPERMODE - Used to report usage of /OPMODE and /CLEARMODE.  By&lt;br /&gt;
   default, log messages to this subsystem go to the &amp;quot;HACK4&amp;quot; server&lt;br /&gt;
   notice mask.&lt;br /&gt;
&lt;br /&gt;
 * GLINE - Used to report usage of /GLINE, particularly BADCHANs.  By&lt;br /&gt;
   default, log messages to this subsystem go to the &amp;quot;GLINE&amp;quot; server&lt;br /&gt;
   notice mask.&lt;br /&gt;
&lt;br /&gt;
 * JUPE - Used to report usage of /JUPE.  By default, log messages to&lt;br /&gt;
   this subsystem go to the &amp;quot;NETWORK&amp;quot; server notice mask.&lt;br /&gt;
&lt;br /&gt;
 * WHO - Used to report usage of the extended features of /WHO&lt;br /&gt;
   (/WHOX).  By default, log messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * NETWORK - Used to report net junctions and net breaks.  By default,&lt;br /&gt;
   log messages to this subsystem go to the &amp;quot;NETWORK&amp;quot; server notice&lt;br /&gt;
   mask.&lt;br /&gt;
&lt;br /&gt;
 * OPERKILL - Used to report usage of /KILL by IRC operators.  By&lt;br /&gt;
   default, log messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * SERVKILL - Used to report usage of /KILL by other servers.  By&lt;br /&gt;
   default, log messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * USER - Used to report user sign-ons and sign-offs.  By default, log&lt;br /&gt;
   messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * OPER - Used to report usage of /OPER, either successfully or&lt;br /&gt;
   unsuccessfully.  By default, log messages to this subsystem go to&lt;br /&gt;
   the &amp;quot;OLDREALOP&amp;quot; server notice mask.&lt;br /&gt;
&lt;br /&gt;
 * RESOLVER - Used to report error messages or other conditions from&lt;br /&gt;
   the resolver and authentication system.  By default, log messages&lt;br /&gt;
   to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * SOCKET - Used to report problems with sockets.  By default, log&lt;br /&gt;
   messages to this subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * DEBUG - Used only when debugging is enabled.  All log messages to&lt;br /&gt;
   this subsystem go either to the console or to the debug log file&lt;br /&gt;
   compiled into the server, as well as to the &amp;quot;DEBUG&amp;quot; server notice&lt;br /&gt;
   mask.  This is the only subsystem with a default log file.&lt;br /&gt;
&lt;br /&gt;
 * OLDLOG - Not used anywhere.  This is a left-over from when the&lt;br /&gt;
   logging subsystem was first created.  Log messages to this&lt;br /&gt;
   subsystem go nowhere.&lt;br /&gt;
&lt;br /&gt;
 * DNSBL - Used to report dnsbl checking, marking, and exemption. Use&lt;br /&gt;
   the INFO level for most of the dnsbl logging information.&lt;br /&gt;
&lt;br /&gt;
Configuration&lt;br /&gt;
&lt;br /&gt;
The true power of the logging subsystem comes from its extremely&lt;br /&gt;
flexible configuration.  The default server facility can be&lt;br /&gt;
configured, as can the facility for each individual subsystem&lt;br /&gt;
described above.  Moreover, administrators can configure the server to&lt;br /&gt;
log to specific files, send selected log messages to operators&lt;br /&gt;
subscribed to any server notice mask, and even change the default log&lt;br /&gt;
level for each subsystem.&lt;br /&gt;
&lt;br /&gt;
The logging subsystem has a set of tables mapping names to the&lt;br /&gt;
numerical values used internally.  Subsystems, levels, syslog&lt;br /&gt;
facilities, and server notice masks are all configured using strings.&lt;br /&gt;
These tables even include special strings, such as &amp;quot;DEFAULT&amp;quot; and&lt;br /&gt;
&amp;quot;NONE.&amp;quot;  Each possible configuration piece is described below.&lt;br /&gt;
&lt;br /&gt;
Default Syslog Facility&lt;br /&gt;
&lt;br /&gt;
The IRC server has a default facility that it uses when sending log&lt;br /&gt;
messages to syslog.  The default facility may be overridden for each&lt;br /&gt;
individual subsystem, but the default itself can be changed with an&lt;br /&gt;
appropriate F-line in the configuration file.  The facility normally&lt;br /&gt;
defaults to &amp;quot;USER,&amp;quot; but may be configured to be any of AUTH, CRON,&lt;br /&gt;
DAEMON, LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6,&lt;br /&gt;
LOCAL7, LPR, MAIL, NEWS, USER, or UUCP.  Some systems also have the&lt;br /&gt;
AUTHPRIV facility.  To configure this default, add an F-line to the&lt;br /&gt;
configuration file that looks like &amp;quot;F:LOG:&amp;lt;facility&amp;gt;&amp;quot;; &amp;lt;facility&amp;gt;&lt;br /&gt;
should be replaced with the string for the desired default syslog&lt;br /&gt;
facility.&lt;br /&gt;
&lt;br /&gt;
Log Files&lt;br /&gt;
&lt;br /&gt;
Each subsystem may be configured to send its log messages to any&lt;br /&gt;
single log file with an F-line like &amp;quot;F:LOG:&amp;lt;subsys&amp;gt;:FILE:&amp;lt;file&amp;gt;&amp;quot;;&lt;br /&gt;
&amp;lt;subsys&amp;gt; should be replaced with one of the subsystem names described&lt;br /&gt;
above, and &amp;lt;file&amp;gt; should be a file name for the log file.  The file&lt;br /&gt;
name may be relative to the server's data directory (&amp;quot;DPATH&amp;quot;), or it&lt;br /&gt;
may be an absolute path name.  Note that if you're using chroot, these&lt;br /&gt;
absolute path names will be relative to the server's root directory.&lt;br /&gt;
&lt;br /&gt;
Logging to Syslog&lt;br /&gt;
&lt;br /&gt;
By default, except for the CONFIG subsystem, no logs are sent to&lt;br /&gt;
syslog.  This can be overridden using an F-line like&lt;br /&gt;
&amp;quot;F:LOG:&amp;lt;subsys&amp;gt;:FACILITY:&amp;lt;facility&amp;gt;&amp;quot;; &amp;lt;subsys&amp;gt;, as above, should be&lt;br /&gt;
replaced with one of the subsystem names described above, and&lt;br /&gt;
&amp;lt;facility&amp;gt; must be one of the facility strings mentioned under&lt;br /&gt;
&amp;quot;Default Syslog Facility.&amp;quot;  The facility string may also be &amp;quot;NONE,&amp;quot; to&lt;br /&gt;
turn off syslog for that subsystem, and &amp;quot;DEFAULT,&amp;quot; to use the server's&lt;br /&gt;
default facility.  Please don't confuse a DEFAULT facility with the&lt;br /&gt;
default for a particular subsystem; only the CONFIG subsystem defaults&lt;br /&gt;
to DEFAULT, whereas all the rest default to NONE.&lt;br /&gt;
&lt;br /&gt;
Logging via Server Notices&lt;br /&gt;
&lt;br /&gt;
Log messages can be sent to online IRC operators.  Many subsystems&lt;br /&gt;
actually default to this behavior, in fact.  For security, log&lt;br /&gt;
messages containing IP addresses or other extremely sensitive data&lt;br /&gt;
will never be sent via server notices, but all others can be sent to a&lt;br /&gt;
specific server notice mask.  (For more information about server&lt;br /&gt;
notice masks, please see doc/snomask.html.)  The available mask names&lt;br /&gt;
are OLDSNO, SERVKILL, OPERKILL, HACK2, HACK3, UNAUTH, TCPCOMMON,&lt;br /&gt;
TOOMANY, HACK4, GLINE, NETWORK, IPMISMATCH, THROTTLE, OLDREALOP,&lt;br /&gt;
CONNEXIT, and DEBUG.  The special mask name &amp;quot;NONE&amp;quot; inhibits sending of&lt;br /&gt;
server notices for a particular subsystem.  The F-line for this&lt;br /&gt;
configuration looks like &amp;quot;F:LOG:&amp;lt;subsys&amp;gt;:SNOMASK:&amp;lt;mask&amp;gt;&amp;quot;; again,&lt;br /&gt;
&amp;lt;subsys&amp;gt; is one of the subsystems described above, and &amp;lt;mask&amp;gt; is one&lt;br /&gt;
of the mask names.&lt;br /&gt;
&lt;br /&gt;
Setting Minimum Logging Level&lt;br /&gt;
&lt;br /&gt;
The minimum log level for a particular subsystem may be set with an&lt;br /&gt;
F-line like &amp;quot;F:LOG:&amp;lt;subsys&amp;gt;:LEVEL:&amp;lt;level&amp;gt;&amp;quot;; here, &amp;lt;subsys&amp;gt; is yet&lt;br /&gt;
again one of the subsystems described above, and &amp;lt;level&amp;gt; is one of the&lt;br /&gt;
level names, also described above.&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Technical]]&lt;/div&gt;</description>
			<pubDate>Fri, 25 Apr 2008 03:32:35 GMT</pubDate>			<dc:creator>Secretagent</dc:creator>			<comments>http://wiki.darenet.org/Talk:IRCu_readme.log</comments>		</item>
	</channel>
</rss>