Commit Graph

4400 Commits

Author SHA1 Message Date
24bed47794 Syslog ident must be provided explicitly.
The syslog ident must be provided explicitly when calling
skygw_logmanager_init (and not provided via the argv array).
It can be NULL, in which case it automatically will be the program
name.

The openlog() call is now always made, irrespective of what the
value of the global syslog flag is. That way it will be possible
to turn syslog logging on or off after the fact.
2015-11-11 13:48:57 +02:00
55dbaa49c0 Logging target must be explicitly defined.
Whether the log-file should be written to the filesystem or to
shared memory must now be explicitly defined when calling
skygw_logmanager_init() (instead of passing that via the argc/argv
construct).

Also, the meaning of '-l' when invoking maxscale has been changed.

Earlier -l [file|shm] specified whether the trace and debug logs
should be written to shared memory (while the error and message
logs always were written to the filesystem) and the _default_
was to write them to shared memory.

Now, with only one file, '-l' has still the same meaning, but it
decides whether the one and only logfile should be written to shared
memory, or the filesystem and the _default_ is to write it to the
filesystem.
2015-11-11 13:47:34 +02:00
90a8646ac2 Whitespace and indentation changes.
Also changed line-endings from DOS CRLF to only LF.
In addition, made functions const correct.
2015-11-11 13:43:15 +02:00
14b8dbc4d8 Miniman changes to make testlog work.
testlog.c can never have worked, or then it cannot have been
kept up to date for a very long time.
2015-11-11 13:41:26 +02:00
2183d5d3c5 Fix mistakes in merging. 2015-11-11 11:31:07 +00:00
abea233a2e If log manager not inited messages are written to stdout.
If the log manager has not been inited, then messages are written
to stdout. In practice this can happen if something is directly or
indirectly logged during the startup of maxscale, before
skygw_logmanager_init() has been called. Some refactoring is needed
to allow skygw_logmanager_init() to be called very early at program
startup.
2015-11-11 13:30:12 +02:00
dee20fe077 Merge remote-tracking branch 'origin/develop' into MXS-329-develop-20151111
# Conflicts:
#	server/core/CMakeLists.txt
#	server/core/buffer.c
#	server/core/service.c
#	server/modules/filter/tee.c
#	server/modules/monitor/mysql_mon.c
#	server/modules/routing/binlog/blr.c
#	server/modules/routing/binlog/blr_slave.c
#	server/modules/routing/debugcmd.c
#	server/modules/routing/readwritesplit/readwritesplit.c
#	utils/skygw_utils.cc

- resolved.
2015-11-11 11:08:02 +00:00
1fc6b00211 Add conditionally compiled mechanism to "show buffers" to give a list of the currently allocated buffers, with a trace for each one of the calls that led to its creation. 2015-11-11 09:03:48 +00:00
72072778de Consume the given buffer in all cases, as caller has to assume that this will take place. 2015-11-11 08:39:47 +00:00
49866b5959 ss_info_dassert now enabled also in release mode. 2015-11-10 21:19:50 +02:00
43c7ccdd08 Whitespace and indentation changes.
Whitespace and indentation changes of log manager test programs.
2015-11-09 10:40:13 +02:00
450078fa92 Interface of skygw_logmanager_init(int argc, char* argv[]) changed.
The previous interface of skygw_logmanager_init was conceptually
broken. With -o you could specify that logging should be done to
stdout. However, even if you did that, the log manager still checked
that the logging directory could be accessed. Unless it had been
specified using -j <path> the default was /var/log/maxscale.

That is, unless the program calling skygw_logmanager_init was invoked
by a user that had write access to /var/log/maxscale, there would be
a complaint even if nothing was ever written to that directory.
In practice this meant that even if -o was used you had to provide
a -j with a path that surely is writeable (e.g. "/tmp").

This has now been changed so that you explicitly must provide the
log directory and the flags -j and -o are removed.

  bool skygw_logmanager_init(const char* logdir, int argc, char* argv[]);

If /logdir/ is provided then logged messages are written to a log file
in that directory. If /logdir/ is NULL then messages are logged to stdout
and no checks for access to any directory is not made.
2015-11-06 14:20:05 +02:00
b19a4b9f4a Commands for enabling the log priority added to maxadmin.
Enabling log files is accepted but deprecated.
2015-11-06 10:06:54 +02:00
80344babd7 Log manager additions.
Changes related to the replacement of the notion of logfiles
with the notion of syslog priorities.
2015-11-06 10:06:54 +02:00
33294e4c95 Whitespace and indentation changes.
- Tabs replaced with spaces.
- Indentation level 4 spaces.
- Allman braces (except for part of commands)
- Space after ,
- Spaces around binary operators.

No other changes.
2015-11-06 10:06:35 +02:00
548d03005b Added test for maxscale_pcre2.c 2015-11-05 10:19:24 +02:00
603e737769 Cleaned up testbuffer.c and added a test for gwbuf_clone_all 2015-11-05 09:36:09 +02:00
c37b33c60e Merge branch '1.2.1-binlog_router_trx' into develop 2015-11-04 16:42:30 +01:00
685e674009 Log message update
Log message update
2015-11-04 16:41:27 +01:00
d51ac7ab7d Disconnect slave when pos is UNSAFE
Disconnect slave when pos is UNSAFE instead of sending an error that
stops the replication
2015-11-04 16:24:46 +01:00
834a88aeda Log variables moved to log_manager.h
The log manager variables lm_enabled_log_files_bitmask, log_ses_count
and tls_log_info that earlier were declared separately in every
c-file are now declared in the log_manager.h header.
2015-11-04 14:26:53 +02:00
0accf869de Fix to MXS-365: https://mariadb.atlassian.net/browse/MXS-365 Added tracking of LOAD DATA LOCAL INFILE
While a LOAD DATA LOCAL INFILE query is being executed, all queries will be sent to the master
and they will not be processed as normal packets.
2015-11-04 12:47:55 +02:00
126b4c1d79 Whitespace-fixes of maxkeys and maxpasswd.
Whitespace and indentation fixes of maxkeys.c and maxpasswd.c.
No other changes.
2015-11-04 12:30:06 +02:00
e9ff89629b More obsolete functionality removed.
The log manager possibility for explicitly specifying the names
of the log files has never been used. In the name of simplicity
that functionality is removed.
2015-11-04 11:00:38 +02:00
865162dc54 Removed getopt options. 2015-11-04 10:29:42 +02:00
d7af979ad9 Removed obsolete functionality.
No need for debug, trace or messages prefixes or suffixes.
2015-11-04 10:29:42 +02:00
d57b4cd531 Fix to MXS-54: https://mariadb.atlassian.net/browse/MXS-54
Added a new configuration parameter that allows the user to control
whether authentication warning messages are logged.
2015-11-04 09:18:20 +02:00
d6230e68ef Moved warnings about session command history limits to message log. 2015-11-04 09:12:37 +02:00
f17803e892 Only one log_file.
The array of log_files replaced with single instance.
2015-11-03 23:27:51 +02:00
633f06cddd The notion of a particular file being enabled is removed.
The one and only message file is always enabled.
2015-11-03 22:52:20 +02:00
3348fab3c4 Only error log is created.
Only the error log is created anymore. The data structures for
the other files still exist, but they are to be removed next.
2015-11-03 22:34:03 +02:00
8798475a46 Some re-arranging of functionality.
Some thread specific functionality moved from thr_flush_file
to the caller thr_filewriter_fun.
2015-11-03 21:50:34 +02:00
4de363e8dd Some log refactoring.
Some log manager refactoring to make it easier to later remove
all files but the error log.

Basically all that was done was to move everything inside the
for-loop of thr_filewriter_fun into a separate function called
thr_flush_file. Otherwise no changes in functionality was made.
2015-11-03 16:05:29 +02:00
9050fce3d4 It only makes sense to flush/rotate the error log.
The other log files are not used.
2015-11-03 14:23:31 +02:00
9ba6ad81b0 Some gotos removed. 2015-11-03 14:21:20 +02:00
2594c83117 Missing format specified added. 2015-11-03 14:21:20 +02:00
2d0a96848c Added table of contents to configuration guide. 2015-11-03 14:12:17 +02:00
99ac4876f4 Fixed wrong variables being passed. 2015-11-03 12:16:22 +02:00
a969de7d50 Changed unnecessary strncpy to strcpy. 2015-11-03 12:16:22 +02:00
3903c4a35d Renamed and moved variables around
Renamed variables to make more sense and reordered them to be more in line with
the function's purpose.
2015-11-03 12:16:22 +02:00
50b0a9b71b Code changes based on review of 1e8afe5063134b7c56492b3777ae1248b1587ba4 2015-11-03 12:16:22 +02:00
d5c38b93f6 Fix to MXS-431: https://mariadb.atlassian.net/browse/MXS-431
Replaced the use of the shared MySQLSession structure with an internal variable
that tracks the currently active database.
2015-11-03 12:16:22 +02:00
18c53bebf1 Fix to MXS-430: https://mariadb.atlassian.net/browse/MXS-430
Added caching of the hashtables used to map databases to servers.
2015-11-03 12:16:22 +02:00
6d1c069d41 A bitmask of logfiles is now only logged once. 2015-11-03 11:15:29 +02:00
9cd327a783 Fix to MXS-417: https://mariadb.atlassian.net/browse/MXS-417 Added support for single-character wildcard in IP addresses.
Single character wildcard addresses are now properly handled
2015-11-03 10:15:34 +02:00
1b04a0cf91 Fix issues with error handling needing to cater for both client and backend DCBs. 2015-11-02 16:27:44 +00:00
42f5fe2485 Removed unnecessary files. 2015-11-02 18:11:37 +02:00
7c582f91ea Merge branch 'develop' into 1.2.1-binlog_router_trx 2015-11-02 18:09:59 +02:00
9b4e8223b4 Removed double check of database name on login.
Removed redundant check of the default database when a user with proper
credentials is being authenticated.
2015-11-02 15:54:46 +02:00
24ee9ca675 Removed redundant log messages
Moved logging from functions that perform user authentication to the code that
uses these functions. This way the messages are only logged once.
2015-11-02 15:53:02 +02:00