8a8ac26e32 
					 
					
						
						
							
							Cleanup monitor.hh  
						
						... 
						
						
						
						Also removes an unused field from several monitors. 
						
						
					 
					
						2018-12-11 10:41:56 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9f721f725e 
					 
					
						
						
							
							MXS-2205 Convert maxscale/protocol/mysql.h to .hh  
						
						
						
						
					 
					
						2018-12-05 11:12:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ad12ff6d06 
					 
					
						
						
							
							MXS-2196: Rename dcb.h to dcb.hh  
						
						
						
						
					 
					
						2018-12-04 11:50:43 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8a570eb6a1 
					 
					
						
						
							
							MXS-2205 Combine maxscale/monitor.h with maxscale/monitor.hh  
						
						
						
						
					 
					
						2018-12-03 15:28:06 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ecc7442358 
					 
					
						
						
							
							Detect manual commands faster  
						
						... 
						
						
						
						Previous, MariaDBMonitor would wait until the next monitor interval before detecting
a new manual command. The commands are now checked every 100 ms. 
						
						
					 
					
						2018-11-08 19:12:00 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f518b38364 
					 
					
						
						
							
							Initialize disk_space_checked  
						
						... 
						
						
						
						Was reading an uninitialized value. 
						
						
					 
					
						2018-10-16 16:09:38 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						75ea1b6ea1 
					 
					
						
						
							
							Fix formatting of new(std::nothrow)  
						
						... 
						
						
						
						The code previously formatted everything as `new( std::nothrow)`. 
						
						
					 
					
						2018-10-04 21:50:44 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8b9fdaa0cb 
					 
					
						
						
							
							Remove HTTP functionality  
						
						... 
						
						
						
						It wasn't used so it can be removed. 
						
						
					 
					
						2018-10-03 08:41:45 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c447e5cf15 
					 
					
						
						
							
							Uncrustify maxscale  
						
						... 
						
						
						
						See script directory for method. The script to run in the top level
MaxScale directory is called maxscale-uncrustify.sh, which uses
another script, list-src, from the same directory (so you need to set
your PATH). The uncrustify version was 0.66. 
						
						
					 
					
						2018-09-09 22:26:19 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a6bef0a80d 
					 
					
						
						
							
							Add credentials for remove REST API calls  
						
						... 
						
						
						
						The base URL and credentials used for REST API calls can now be defined in
the [maxscale] section. This allows encrypted passwords to be used. 
						
						
					 
					
						2018-08-23 15:46:46 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						13c04324cf 
					 
					
						
						
							
							Add master extraction via REST API  
						
						... 
						
						
						
						The master server of a monitor can now be extracted with the
mon_get_external_master function. It uses the REST API to find a master
server in the set of servers monitored by a monitor. 
						
						
					 
					
						2018-08-23 15:46:45 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						24ab3c099c 
					 
					
						
						
							
							Move top of the file  "#pragma once" to after the following comment (swap them). If the comment is a BPL update it to the latest one  
						
						
						
						
					 
					
						2018-08-21 13:13:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						88f1795412 
					 
					
						
						
							
							MXS-2008 Move Worker and MessageQueue to maxbase  
						
						
						
						
					 
					
						2018-08-21 10:02:39 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d8255d0cac 
					 
					
						
						
							
							MXS-2017 Move maxscale::Semaphore to maxbase::Semaphore  
						
						
						
						
					 
					
						2018-08-17 15:53:54 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						57706e7758 
					 
					
						
						
							
							Hide the MonitorInstance m_state field  
						
						... 
						
						
						
						The field had the same purpose as MXS_MONITOR->state. Now the field
is only used for checking if the MonitorInstance thread is running. 
						
						
					 
					
						2018-08-17 09:47:32 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fe5df6d379 
					 
					
						
						
							
							Remove duplicate monitor state definitions  
						
						... 
						
						
						
						The state is still stored in two different variables. Also, removed the
ALLOC and FREED states. 
						
						
					 
					
						2018-08-17 09:47:32 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f9ba8824d4 
					 
					
						
						
							
							MXS-2004 Remove additional dependencies on maxscale/thread.h  
						
						
						
						
					 
					
						2018-08-13 13:38:39 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b9ec3f5130 
					 
					
						
						
							
							Monitor json diagnostics printing cleanup  
						
						... 
						
						
						
						The 'events' and 'script' config values were defined for every monitor.
Removed the extra definitions and moved the variables to MXS_MONITOR.
MariaDBMonitor was printing config values a second time, they are
already printed by the caller.
Moved the events enum definition to the internal header since it's no longer
required by modules.
Added a default config setting "all" to 'events' to clarify that it enables
all events. 
						
						
					 
					
						2018-08-10 11:19:09 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f14380243b 
					 
					
						
						
							
							Rename cppdefs.hh to ccdefs.hh  
						
						... 
						
						
						
						For obvious reasons; the c++ suffix is .cc and not .cpp 
						
						
					 
					
						2018-08-10 07:50:18 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d412b8d729 
					 
					
						
						
							
							Move execute_worker_task into mxs::Worker  
						
						... 
						
						
						
						The function has use outside of the monitors as it makes execution of
worker tasks much more convenient. Currently, this change only moves the
code and takes it into use: there should be no functional changes. 
						
						
					 
					
						2018-08-02 18:56:35 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b421e56d1c 
					 
					
						
						
							
							Move execute_worker_task to MonitorInstance  
						
						... 
						
						
						
						The function is rather general and may of use to other monitor modules. 
						
						
					 
					
						2018-07-24 15:07:18 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						862ae099b0 
					 
					
						
						
							
							Construct diagnostics results in the monitor thread  
						
						... 
						
						
						
						MariaDBMonitor diagnostics printing is unsafe as some of the read
fields are arrays. To be on the safe side, the fields are now read
in the monitor worker thread.
Since diagnostics must work even for stopped monitors, a worker task
is used. In practice, it usually runs when the monitor is sleeping. 
						
						
					 
					
						2018-07-20 10:18:58 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1eddb29d91 
					 
					
						
						
							
							MXS-1915 Move Monitors on top of mxs::Worker  
						
						... 
						
						
						
						Monitors are now workers, so the path for making all interaction
between MaxScale proper and the monitors message based is now
open. 
						
						
					 
					
						2018-06-26 09:19:46 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cc0299aee6 
					 
					
						
						
							
							Update change date of 2.3  
						
						
						
						
					 
					
						2018-06-25 10:07:52 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d0453bd3ed 
					 
					
						
						
							
							Measure monitor loop execution time when calculating sleep time  
						
						
						
						
					 
					
						2018-06-11 13:30:36 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8afa8c2c5a 
					 
					
						
						
							
							MXS-1775 Add MonitorInstanceSimple class  
						
						... 
						
						
						
						MonitorInstanceSimple is intended for simple monitors that
probe servers in a straightforward fashion. More complex monitors
can be derived directly from MonitorInstance. 
						
						
					 
					
						2018-06-07 15:13:26 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						af717426d5 
					 
					
						
						
							
							MXS-1775 Load server journal unconditionally  
						
						... 
						
						
						
						The server journal is unconditionally loaded and need not be
done in @c pre_loop. 
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f600b3a769 
					 
					
						
						
							
							MXS-1775 Check disk space in MariaDBMonitor  
						
						
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						18ece193bb 
					 
					
						
						
							
							MXS-1775 MariaDBMonitor::main() removed  
						
						... 
						
						
						
						Now uses MonitorInstance::main() as all other monitors. 
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						329a6df662 
					 
					
						
						
							
							MXS-1775 Factor out post-processing  
						
						... 
						
						
						
						Further adjustments for being able to move MariaDBMonitor on
top of MonitorInstance::main(). 
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						71194d83d3 
					 
					
						
						
							
							MXS-1775 Rearrange for moving main loop to MonitorInstance  
						
						... 
						
						
						
						This is another step in the process for moving the main loop
from MariaDBMonitor to MonitorInstance. 
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5172c43e29 
					 
					
						
						
							
							MXS-1775 Add functions for checking disk space of servers  
						
						
						
						
					 
					
						2018-06-06 15:25:57 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						32c7ae2f9f 
					 
					
						
						
							
							MXS-1775 Inherit MariaDBMonitor from mxs::MonitorInstance  
						
						... 
						
						
						
						Start/stop now provided by MonitorInstance. The thread main
function is now virtual and overriden by MariaDBMonitor. Some
additional refactoring is necessary in order to be able to allow
MonitorInstance to handle the main loop. 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f862939dd7 
					 
					
						
						
							
							MXS-1775 Make MariaDBMon non-dependent on stop() return value  
						
						... 
						
						
						
						To align it with the behavour or MonitorInstance::stop() 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a55019774d 
					 
					
						
						
							
							MXS-1775 Expose the state of the monitor  
						
						
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ebcb807438 
					 
					
						
						
							
							MXS-1775 Add default implementations  
						
						
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9b7e37e112 
					 
					
						
						
							
							MXS-1775 Change MonitorInstance::configure() prototype  
						
						... 
						
						
						
						Now return boolean, to allow derived class to signal a failure
to configure. 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0783af88ed 
					 
					
						
						
							
							MXS-1775 Make general cleanup  
						
						... 
						
						
						
						Document and rearrrange so that things look nice and tidy. 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b439857a84 
					 
					
						
						
							
							MXS-1775 Remove destroy()  
						
						... 
						
						
						
						Now the instance is deleted simply by deleting it. 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0833db8a48 
					 
					
						
						
							
							MXS-1775 Flush pending status to servers using common code  
						
						
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						15b1c270a3 
					 
					
						
						
							
							MXS-1775 Check connection in MonitorInstance::tick()  
						
						... 
						
						
						
						Since the connection checking is done in an identical fashion in
all monitors, it can be moved to the base-class. 
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						df4e19eb27 
					 
					
						
						
							
							MXS-1775 Provide default implementation for MonitorInstance::tick  
						
						
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						d844293ea1 
					 
					
						
						
							
							MXS-1775 Document virtual functions in mxs::MonitorInstance  
						
						
						
						
					 
					
						2018-06-01 13:48:15 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9d526332d8 
					 
					
						
						
							
							MXS-1775 Ensure MonitorInstance::start() returns correct value  
						
						... 
						
						
						
						Since we need to call mysql_thread_init(), which can fail, in
the monitor thread, we need to wait for the outcome of that
before we can return from start(). 
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						650a739c92 
					 
					
						
						
							
							MXS-1775 Move monitor loop to MonitorInstance  
						
						
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						db30ea96f2 
					 
					
						
						
							
							MXS-1775 m_master is now a member variable of MonitorInstance  
						
						
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						15e3a2887c 
					 
					
						
						
							
							MXS-1775 Move status management to MonitorInstance  
						
						
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1e084b78b1 
					 
					
						
						
							
							MXS-1775 MonitorInstance::m_script is now a std::string  
						
						
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c7eb0a9958 
					 
					
						
						
							
							MXS-1775 Thread starting is now handled by MonitorInstance  
						
						
						
						
					 
					
						2018-05-18 16:00:05 +03:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						adb7f156d6 
					 
					
						
						
							
							MXS-1775 Introduce MonitorInstance::has_sufficient_permissions()  
						
						... 
						
						
						
						With this function in place, it is now possible to move the thread
starting to MonitorInstance. 
						
						
					 
					
						2018-05-18 16:00:05 +03:00