Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ec2080dcc1 
							
						 
					 
					
						
						
							
							Merge pull request  #9731  from Icinga/fix-compiler-warnings-by-copy-constructing-loop-variables-explicitly  
						
						... 
						
						
						
						Fix compiler warnings by (copy-)constructing loop variables explicitly or not at all 
						
						
					 
					
						2025-05-21 14:26:47 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							22e75f08fa 
							
						 
					 
					
						
						
							
							Fix compiler warnings by not unnecessarily (copy-)constructing loop variables  
						
						
						
						
					 
					
						2025-05-21 11:36:32 +02:00 
						 
				 
			
				
					
						
							
							
								Sebastian Grund 
							
						 
					 
					
						
						
						
						
							
						
						
							7d12c1a524 
							
						 
					 
					
						
						
							
							Add tags functionality to ElasticSearchWriter  
						
						
						
						
					 
					
						2025-01-24 08:51:53 +01:00 
						 
				 
			
				
					
						
							
							
								Sebastian Grund 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8c68c6e9d8 
							
						 
					 
					
						
						
							
							Add closing quotationmarks in Validator for influxdb writer config  
						
						
						
						
					 
					
						2024-09-25 13:03:00 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							5c17465a19 
							
						 
					 
					
						
						
							
							OpenTsdbWriter#CheckResultHandler(): skip custom tags with empty values  
						
						... 
						
						
						
						refs #7724  
						
						
					 
					
						2024-04-18 11:36:21 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							629038344b 
							
						 
					 
					
						
						
							
							OpenTsdbWriter#CheckResultHandler(): clarify log messages  
						
						... 
						
						
						
						Clarify which "host or service" an "Unable to resolve macro" debug log message refers to. 
						
						
					 
					
						2024-02-22 10:34:35 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							cc9db3756f 
							
						 
					 
					
						
						
							
							Revert "Influx DB: don't unneccessarily truncate timestamps to whole seconds"  
						
						... 
						
						
						
						This reverts commit eaa3cd83adf860732b955a77b8f5fca7e30c65c2. 
						
						
					 
					
						2024-01-16 12:19:48 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							fc5b1178c6 
							
						 
					 
					
						
						
							
							Revert "Remove no-op InfluxDB URL param"  
						
						... 
						
						
						
						This reverts commit 21f548d3c07189c6a413cf88c2b60cc9ada73497. 
						
						
					 
					
						2024-01-16 12:19:47 +01:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							bba6a76f4a 
							
						 
					 
					
						
						
							
							Merge pull request  #9853  from Icinga/GelfWriter-m_StreamMutex  
						
						... 
						
						
						
						GelfWriter: protect m_Stream via m_WorkQueue, not ObjectLock(this) 
						
						
					 
					
						2023-09-07 11:46:38 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e5d988a2fe 
							
						 
					 
					
						
						
							
							Merge pull request  #7799  from Icinga/bugfix/file-end  
						
						... 
						
						
						
						Fix file endings 
						
						
					 
					
						2023-08-25 11:06:19 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							4ee10a6c20 
							
						 
					 
					
						
						
							
							GelfWriter: protect m_Stream via m_WorkQueue, not ObjectLock(this)  
						
						... 
						
						
						
						On shutdown or HA re-connect ConfigObject#SetAuthority(false) is called which
does ObjectLock(this) and ConfigObject#Pause(). GelfWriter#Pause(), with the
above ObjectLock, calls m_WorkQueue.Join(). But items inside that also doing
ObjectLock(this) cause a deadlock. 
						
						
					 
					
						2023-08-24 17:48:09 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							4c2e59a690 
							
						 
					 
					
						
						
							
							ElasticsearchWriter: switch to v7+ URL schema to support v8  
						
						... 
						
						
						
						and OpenSearch 2. This breaks the EOL v5 and v6. 
						
						
					 
					
						2023-07-03 14:43:45 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							076eb59443 
							
						 
					 
					
						
						
							
							ElasticsearchWriter#Pause(): lock m_DataBufferMutex during Flush()  
						
						... 
						
						
						
						just to be sure regarding race conditions. 
						
						
					 
					
						2023-06-30 14:57:18 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d5e6ecec8a 
							
						 
					 
					
						
						
							
							ElasticsearchWriter#Pause(): call Flush() only once  
						
						... 
						
						
						
						The first Flush() is redundant and may access m_DataBuffer at the same time as some Flush() in m_WorkQueue (race condition) which isn't joined, yet. 
						
						
					 
					
						2023-06-29 10:42:12 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							9376a311ea 
							
						 
					 
					
						
						
							
							Fix file endings  
						
						... 
						
						
						
						git ls-files -z \
	|grep -zEe '^lib/' \
	|grep -zEe '\.[ch]pp$' \
	|xargs -0 perl -p0i -e 's/\n*(?!(?:.|\n))/\n/' 
						
						
					 
					
						2023-05-17 18:05:13 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							ba7102cae3 
							
						 
					 
					
						
						
							
							Explicitly stop started timers and wait for them  
						
						... 
						
						
						
						before permitting their parent objects' destruction.
For the cases where the handlers have raw pointers to these objects. 
						
						
					 
					
						2023-04-14 14:52:04 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							21b68455ce 
							
						 
					 
					
						
						
							
							Use Timer::Create() instead of new Timer()  
						
						... 
						
						
						
						git ls-files -z |xargs -0 perl -pi -e 's/\bnew Timer\b/Timer::Create/g'
ex. in Timer::Create() itself. 
						
						
					 
					
						2023-04-04 10:35:20 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							a84a0a3cee 
							
						 
					 
					
						
						
							
							Merge pull request  #8302  from Icinga/bugfix/windows-systemroot-aliases-6259  
						
						... 
						
						
						
						Macros: support $env.ENV_VAR_NAME$ 
						
						
					 
					
						2023-02-20 13:09:15 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							f2974c07cf 
							
						 
					 
					
						
						
							
							Centralise default icinga.* and env.* macros  
						
						
						
						
					 
					
						2023-02-17 15:33:36 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fd5350d588 
							
						 
					 
					
						
						
							
							Fix typo  
						
						
						
						
					 
					
						2023-02-13 13:00:28 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							b2b49caf61 
							
						 
					 
					
						
						
							
							Macros: support $env.ENV_VAR_NAME$  
						
						... 
						
						
						
						refs #6259  
						
						
					 
					
						2023-02-10 17:21:29 +01:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ad8868cab7 
							
						 
					 
					
						
						
							
							Merge pull request  #9599  from Icinga/influx-ns  
						
						... 
						
						
						
						Influx DB: don't unneccessarily truncate timestamps to whole seconds 
						
						
					 
					
						2023-01-26 17:44:50 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							21f548d3c0 
							
						 
					 
					
						
						
							
							Remove no-op InfluxDB URL param  
						
						... 
						
						
						
						precision=ns is the default. 
						
						
					 
					
						2023-01-16 12:03:08 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							83021f8231 
							
						 
					 
					
						
						
							
							CONTEXT: use << everywhere to unify usages  
						
						
						
						
					 
					
						2022-11-30 11:06:51 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							eaa3cd83ad 
							
						 
					 
					
						
						
							
							Influx DB: don't unneccessarily truncate timestamps to whole seconds  
						
						... 
						
						
						
						Instead send timestamps with the highest possible precision (ns).
Useful for check intervals <1s. 
						
						
					 
					
						2022-11-28 12:27:01 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							39d642af75 
							
						 
					 
					
						
						
							
							Merge pull request  #9321  from Icinga/perfdata-resume-signal  
						
						... 
						
						
						
						Perfdata writers: disconnect handlers from signals in Pause() 
						
						
					 
					
						2022-04-07 15:51:02 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							56933b8877 
							
						 
					 
					
						
						
							
							Perfdata writers: disconnect handlers from signals in Pause()  
						
						... 
						
						
						
						as they would be re-connected in Resume() (HA).
Before they were still connected during pause and connected X+1 times
after X split-brains (the same data was written X+1 times). 
						
						
					 
					
						2022-04-06 13:09:26 +02:00 
						 
				 
			
				
					
						
							
							
								Yonas Habteab 
							
						 
					 
					
						
						
						
						
							
						
						
							a0607aceff 
							
						 
					 
					
						
						
							
							Fix compiler warnings don't move local variables  
						
						
						
						
					 
					
						2022-02-22 17:51:43 +01:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							33781496da 
							
						 
					 
					
						
						
							
							InfluxdbCommonWriter: use atomic_size_t to data buffer size from stats function  
						
						... 
						
						
						
						m_DataBuffer may be modified concurrently while StatsFunc() is called, thus
it's unsafe to call size() on it. As write access to m_DataBuffer is already
synchronized by only modifying it from the single work queue thread, instead of
adding a mutex, this commit adds a new std::atomic_size_t which is additionally
updated when modifying m_DataBuffer and can safely be accessed in StatsFunc(). 
						
						
					 
					
						2022-01-03 12:24:26 +01:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							e6300aacf9 
							
						 
					 
					
						
						
							
							InfluxdbCommonWriter: only flush from work queue  
						
						... 
						
						
						
						There is no explicit synchronization of access to m_DataBuffer which is fine if
it is only accessed from the single-threaded work queue. However, Stop() also
called Flush() in another thread, leading to concurrent write access to
m_DataBuffer which can result in a crash due to use after free/double free.
Changes in this commit:
* Flush() is renamed to FlushWQ() to show that it should only be called from
  the work queue. Additionally, it now asserts that it is running on the work
  queue.
* Visibility of some data members is changed from protected to private. No
  other classes have to access these at the moment. By this change, accidental
  concurrent access from derived classes in the future is prevented.
* Stop() now flushes by posting FlushWQ() to the work queue and joining it. 
						
						
					 
					
						2022-01-03 12:24:26 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							99c5c24a17 
							
						 
					 
					
						
						
							
							InfluxdbCommonWriter#Flush(): fix log message  
						
						... 
						
						
						
						s/InfluxdbWriter/Influxdb2Writer/
fixes  #9035  
						
						
					 
					
						2021-10-14 12:03:45 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							3ab347bfd4 
							
						 
					 
					
						
						
							
							GelfWriter: show error message of exceptions  
						
						
						
						
					 
					
						2021-08-13 17:24:24 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							8f3f692ecf 
							
						 
					 
					
						
						
							
							InfluxdbCommonWriter: actually verify TLS server certificates  
						
						... 
						
						
						
						And add a new option ssl_insecure_noverify to explicitly disable it if desired. 
						
						
					 
					
						2021-08-13 17:24:24 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							29e9df938c 
							
						 
					 
					
						
						
							
							GelfWriter: actually verify TLS server certificates  
						
						... 
						
						
						
						And add a new option insecure_noverify to explicitly disable it if desired. 
						
						
					 
					
						2021-08-13 17:24:24 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							5cada85e54 
							
						 
					 
					
						
						
							
							ElasticsearchWriter: actually verify TLS server certificates  
						
						... 
						
						
						
						And add a new option insecure_noverify to explicitly disable it if desired. 
						
						
					 
					
						2021-08-13 17:24:24 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							9d4b0f1268 
							
						 
					 
					
						
						
							
							Introduce Influxdb2Writer  
						
						... 
						
						
						
						refs #8711  
						
						
					 
					
						2021-07-20 16:21:36 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							d26aa9fb34 
							
						 
					 
					
						
						
							
							InfluxdbCommonWriter: abstract InfluxdbWriter  
						
						... 
						
						
						
						refs #8711  
						
						
					 
					
						2021-07-20 16:21:36 +02:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							401d3cdc9e 
							
						 
					 
					
						
						
							
							Remove passwords from API  
						
						... 
						
						
						
						IdoMysqlConnection, IdoPgsqlConnection, IcingaDB, and ElasticsearchWriter
require passwords in their configuration to authenticate against external
services. This commit ensures that these can no longer be accessed using the
API. 
						
						
					 
					
						2021-07-05 15:09:54 +02:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ef8619f76b 
							
						 
					 
					
						
						
							
							Merge pull request  #8601  from Icinga/feature/replace-std-boost-bind-with-lambdas-7006  
						
						... 
						
						
						
						Feature: Replace std/boost::bind() with lambdas 
						
						
					 
					
						2021-03-18 17:56:13 +01:00 
						 
				 
			
				
					
						
							
							
								Yonas Habteab 
							
						 
					 
					
						
						
						
						
							
						
						
							43ba2da39c 
							
						 
					 
					
						
						
							
							Replace std/boost::bind() function with lambda expression  
						
						
						
						
					 
					
						2021-03-10 16:29:40 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander A. Klimov 
							
						 
					 
					
						
						
						
						
							
						
						
							c3388e9af6 
							
						 
					 
					
						
						
							
							Use std::mutex, not boost::mutex  
						
						
						
						
					 
					
						2021-02-03 09:54:57 +01:00 
						 
				 
			
				
					
						
							
							
								Julian Brost 
							
						 
					 
					
						
						
						
						
							
						
						
							339b37a985 
							
						 
					 
					
						
						
							
							Use content_length method for setting the Content-Length header  
						
						... 
						
						
						
						Boost.Beast changed the signature of the previously used generic `set`
method so that it no longer accepts integer types, however there is
alreay a more specific method for setting the Content-Length header, so
use this one instead. 
						
						
					 
					
						2020-12-22 16:27:38 +01:00 
						 
				 
			
				
					
						
							
							
								Alexander Aleksandrovič Klimov 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							6f33c2f90c 
							
						 
					 
					
						
						
							
							Merge pull request  #8314  from Icinga/feature/add-support-influxdb-basic-auth-7644  
						
						... 
						
						
						
						Add support Influxdb basic auth 
						
						
					 
					
						2020-12-03 11:00:04 +01:00 
						 
				 
			
				
					
						
							
							
								Yonas Habteab 
							
						 
					 
					
						
						
						
						
							
						
						
							2ade57bcbb 
							
						 
					 
					
						
						
							
							Add support influxdb basic auth  
						
						... 
						
						
						
						fixes  #7644  
					
						2020-12-02 16:48:03 +01:00 
						 
				 
			
				
					
						
							
							
								Paul Denning 
							
						 
					 
					
						
						
						
						
							
						
						
							570a59a2f4 
							
						 
					 
					
						
						
							
							Fixed problem with opentsdb sending metrics  
						
						... 
						
						
						
						There is a double space between the value and the tags causing an error with missing tag when ingesting the data
refs #8244  
						
						
					 
					
						2020-09-18 19:41:48 +10:00 
						 
				 
			
				
					
						
							
							
								Michael Friedrich 
							
						 
					 
					
						
						
						
						
							
						
						
							3533ddd010 
							
						 
					 
					
						
						
							
							Graphite/OpenTSDB: Ensure that Reconnect failure is detected  
						
						... 
						
						
						
						fixes  #7729  
					
						2020-01-18 17:09:09 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Friedrich 
							
						 
					 
					
						
						
						
						
							
						
						
							d242b41704 
							
						 
					 
					
						
						
							
							Revert "Make NotificationResult available for events: Cluster and Features"  
						
						... 
						
						
						
						This reverts commit 566e59bbfa385ec1a023c32a1feb895791950032. 
						
						
					 
					
						2020-01-07 14:20:59 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Friedrich 
							
						 
					 
					
						
						
						
						
							
						
						
							ee72791f25 
							
						 
					 
					
						
						
							
							Metrics: Always send '0' as value for thresholds  
						
						... 
						
						
						
						fixes  #7666  
					
						2019-12-05 13:05:59 +01:00 
						 
				 
			
				
					
						
							
							
								Ant1x 
							
						 
					 
					
						
						
						
						
							
						
						
							166e79fee1 
							
						 
					 
					
						
						
							
							Added OpenTSDB Metric prefix naming support  
						
						... 
						
						
						
						Added OpenTSDB Generic Metric functionality 
						
						
					 
					
						2019-10-24 00:04:12 +11:00 
						 
				 
			
				
					
						
							
							
								Ant1x 
							
						 
					 
					
						
						
						
						
							
						
						
							0b8fdfd7f2 
							
						 
					 
					
						
						
							
							Removed dictionary cloning behaviour.  
						
						... 
						
						
						
						Added configuration caching on instantiation. 
						
						
					 
					
						2019-10-24 00:04:12 +11:00