Commit Graph

297 Commits

Author SHA1 Message Date
a7c0952e66 Formatted tee filter
Tee filter formatted according to the style guide.
2015-11-18 14:18:00 +02:00
e24504c427 Formatted topfilter
Topfilter is now formatted according to the style guide.
2015-11-18 13:46:23 +02:00
7d9324ee12 Formatted regexfilter
Formatted regexfilter according to the style guide and removed trailing whitespace.
2015-11-18 13:35:04 +02:00
da74bb7c3f Formatted dbfwfilter according to the style guide
Fixed indentation, bracket alignment and other minor things.
2015-11-18 10:12:04 +02:00
1bfe85099f server/module/filters: All LOGIF and skygw_log_write calls removed.
All LOGIF and skygw_log_write calls have been replaced with the
equivalent MXS_[ERROR|WARNING|NOTICE|INFO|DEBUG] calls.
2015-11-16 14:25:02 +02:00
b22d40b06b Fixed PCRE2 beng built when CMake is configured
The bundled PCRE2 library will be built as a separate target and configuring
CMake no longer builds it. Instead, it will only be built when it is out of date.
This requires all targets to declare that they depend on the pcre2 target in
order for it to be built.
2015-11-16 13:59:47 +02:00
a355e1beef Printf format checking added to logging function.
Printf format checking added to logging function and all
issues that were revealed by that fixed.
2015-11-16 12:40:49 +02:00
6b88b6b17f Merge branch 'develop' into MXS-329-develop-20151111 2015-11-13 07:48:59 +02:00
05fbdb1b76 Log: skygw_log_flush replaced with mxs_log_flush.
skygw_log_flush replaced with mxs_log_flush and skygw_log_sync_all
with mxs_log_flush_sync.
2015-11-12 18:28:34 +02:00
c7a329e43e Log: skygw_logmanager_init renamed to mxs_log_init.
skygw_logmanager_init renamed to mxs_log_init and skygw_logmanager_done
renamed to mxs_log_finish. skygw_logmanager_exit removed alltogether as
all it did was to call skygw_logmanager_done. That appears to have been
a source for confusion as in many places a call to skygw_logmanager_done
was followed by a call to skygw_logmanager_exit. In addition, the function
skygw_log_done was removed from the header, since it lacked an
implementation.
2015-11-12 16:06:44 +02:00
acb0a523a7 Log: No more argv parsing for log manager.
Earlier, the global setting for the syslog decided whether syslog
was enabled when skygw_logmanager_init was called, but not whether
logging to syslog actually was made.

Now syslog logging is enabled by default and the global setting
decides whether or not syslog logging actually is made. That is,
this opens up the possiblity for making it possible to turn on
and off sysloging at runtime.

Further, although the API led you to believe otherwise, it was
hardwired that LOGFILE_ERROR and LOGFILE_MESSAGE messages were
written to syslog.

The changed removed the need for passing an argv array explicitly.
2015-11-11 13:53:14 +02:00
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
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
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
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
846816a851 Changed from POSIX regular expressions to PCRE2 for the regexfilter. 2015-10-27 22:10:49 +02:00
4f316419c5 Merge branch 'develop' into MXS-329 2015-09-30 12:47:28 +03:00
447c3aa6c1 More code cleaning. 2015-09-29 12:03:21 +03:00
abab715a21 Simplified the code in parse_time. 2015-09-29 12:03:21 +03:00
f021d42820 Cleaned up the timerange string processing in dbfwfilter. 2015-09-29 12:03:21 +03:00
cfeaf7d6e9 Merge remote-tracking branch 'origin/develop' into MXS-329
Conflicts:
	server/core/session.c
2015-09-10 13:07:27 +01:00
160bbb70ee MXS-251: strerror
Replaces all calls to strerror with calls to strerror_r. The former
is non-thread safe while the latter is.
2015-09-05 15:52:13 +03:00
f1c3b65b15 Fixed mistake. 2015-08-28 19:52:02 +03:00
d29c5909a6 Properly close the branch session of the tee filter. 2015-08-28 19:50:29 +03:00
a74ed87d07 Removed redundant linking of the utils library. 2015-08-10 10:40:00 +03:00
84db14d3da Fixed possible division by zero error. 2015-07-24 17:19:57 +03:00
78eab19c62 Fixed compiler warnings. 2015-07-14 17:13:09 +03:00
af6e010ba1 Added missing namedserverfilter documentation. 2015-07-10 13:51:32 +03:00
3d3b397a67 Merge branch 'develop' of https://github.com/srirampatil/MaxScale into srirampatil-develop
Conflicts:
	server/modules/filter/qlafilter.c
2015-06-11 18:41:56 +03:00
4cbcc4ecb6 Removed old unused cmake variables, updated documentation and fixed testall suite. 2015-05-26 15:12:29 +03:00
5f076b81d4 Merge branch 'install_dir_change' into develop
Conflicts:
	CMakeLists.txt
	Documentation/Tutorials/Administration-Tutorial.md
	log_manager/CMakeLists.txt
	server/core/CMakeLists.txt
	server/core/gateway.c
	server/core/maxkeys.c
	server/core/maxpasswd.c
	server/modules/filter/test/CMakeLists.txt
	server/modules/routing/CMakeLists.txt
2015-05-26 13:34:39 +03:00
229cdb73e7 Fixed concurrency issues in filters. 2015-05-21 15:30:52 +03:00
4eddec7989 Fixed MXS - 165: Concurrency issue while incrementing sessions in
qlafilter
2015-05-20 17:47:58 +05:30
14b2c149f5 Removed resource leaks in regexfilter. 2015-05-10 06:34:39 +03:00
3bd03fbe09 Merge branch 'logmanager_stdout' into develop 2015-05-04 11:03:24 +03:00
b53decb72b Fix to MXS-75: https://mariadb.atlassian.net/browse/MXS-75
COUNT(*) is no longer denied by wildcard rules.
2015-05-03 09:36:00 +03:00
d545150ceb Fix to MXS-70: https://mariadb.atlassian.net/browse/MXS-70
Added assert information to error log.
2015-05-02 05:51:25 +03:00
4cba9890fd MXS-98: https://mariadb.atlassian.net/browse/MXS-98
Added optional logging of regex filter matching to user defined file and trace log.
2015-05-01 18:54:19 +03:00
360db8b235 Changed all atoi calls to config_truth_value when they were used to generate boolean values. 2015-04-30 10:58:35 +03:00
6e4aa9862d Fixed a segfaul caused by a null pointer in dbfwfilter rule parsing. 2015-04-30 04:52:35 +03:00
e3620eddbb Merge branch 'develop' into logmanager_stdout 2015-04-30 04:28:40 +03:00
00abb38689 Fixed rule parsing 2015-04-29 19:19:36 +03:00
c190433c7d Fixed dbfwfilter rules.
Fixed at_times not working if combined with on_queries.
2015-04-29 14:29:43 +03:00
8bff81e0a9 Fixed rule parsing failing if at_times is used with on_queries. 2015-04-29 11:39:17 +03:00
9ce225c2cb Added log manager initialization flag that prints all logs to stdout. 2015-04-29 11:20:40 +03:00
9ef66a6028 The filter harness no longer builds the MaxScale core twice. 2015-04-28 11:23:40 +03:00
9e0a2bfc12 Changed relevant files to use get_cachedir() instead of using the now deprecated MAXSCALE_HOME. 2015-04-27 21:55:57 +03:00
bbcecc0db5 Changed all MaxScale.cnf code references to maxscale.cnf 2015-04-27 13:44:36 +03:00
17a7b2addb Updated more variables. 2015-04-26 20:08:27 +03:00