Johannes Schmidt
749a4b0c89
Remove extra parameters from HTTP handler signature
...
These parameters are no longer needed since they were only used
by EventsHandler which was refactored in the other commit.
2025-07-14 10:36:59 +02:00
Johannes Schmidt
ee64f85e9c
Use new HTTP message classes in HttpServerConnection and Handlers
2025-07-14 10:36:59 +02:00
Johannes Schmidt
82bb636d2b
Use WaitGroup to wait for or abort HTTP requests
...
The wait group gets passed to HttpServerConnection, then down to the
HttpHandlers. For those handlers that modify the program state, the
wait group is locked so ApiListener will wait on Stop() for the
request to complete. If the request iterates over config objects,
a further check on the state of the wait group is added to abort early
and not delay program shutdown. In that case, 503 responses will be
sent to the client.
Additionally, in HttpServerConnection, no further requests than the
one already started will be allowed once the wait group is joining.
2025-06-13 14:48:15 +02:00
Alexander A. Klimov
c666f81361
De-couple package and stage name validation
2021-08-02 15:40:14 +02:00
Alexander A. Klimov
c3388e9af6
Use std::mutex, not boost::mutex
2021-02-03 09:54:57 +01:00
Michael Friedrich
03324b2fb6
Config packages: Catch active stage exceptions in rare cases
...
Typically this already is detected on startup.
2019-05-08 16:43:27 +02:00
Michael Friedrich
704aabcb63
Avoid dead-lock with config packages and active stages
2019-05-08 16:06:46 +02:00
Alexander A. Klimov
c284cf0b68
HttpServerConnection: encapsulate streaming start indicator
2019-04-02 17:37:29 +02:00
Alexander A. Klimov
fd239ba3fe
Adjust /v1/events, too
2019-04-01 11:40:14 +02:00
Alexander A. Klimov
1941c1da28
Adjust all HTTP handlers (ex. /v1/events)
2019-04-01 11:40:14 +02:00
Michael Friedrich
d14a88235d
Replace Copyright header with a short version, part I
...
CLion -> replace in path
2019-02-25 14:48:22 +01:00
Michael Friedrich
dab53448bc
icinga.com: Update *.{h,c}pp
2018-10-18 09:27:04 +02:00
Michael Friedrich
b53685db59
Fix error handling on config package delete
2018-04-12 19:24:08 +02:00
Michael Friedrich
36cdf8a0d2
More refactoring of config packages errors
2018-04-06 09:53:54 +02:00
Michael Friedrich
7f015c0d2f
Enhance error handling in config packages handler
2018-04-05 17:21:14 +02:00
Michael Friedrich
429f518b49
Improve error handling for empty packages in /v1/config/packages
...
- If there is no package main directory, assume "empty packages".
- Catch exceptions thrown through GlobRecursive() and present a better http 500
to the user.
The packages directory tree is automatically created with the first
package creation, either from the user, or by the `_api` package.
fixes #6129
2018-03-07 13:35:09 +01:00
Gunnar Beutner
94e6be1a65
Remove unused includes
2018-01-22 09:52:29 +01:00
Gunnar Beutner
c2fb9fe226
Use initializer lists for arrays and dictionaries
2018-01-16 12:27:44 +01:00
Michael Friedrich
d073a807b0
API: Add 'pretty' parameter for beautified JSON response bodies
...
fixes #5877
2018-01-08 20:55:36 +01:00
Michael Insel
158ae2188e
Change copyright header for 2018
2018-01-02 12:08:55 +01:00
Jean Flach
e0bd3d183f
Fix package error message
...
fixes #5879
2017-12-18 11:04:40 +01:00
Jean Flach
ef5013b903
Use locks in api config staging
...
refs #3668
2017-09-20 16:45:09 +02:00
Michael Friedrich
b7caf0820d
Ensure that *.icinga.com is used everywhere
...
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Gunnar Beutner
288413f046
Replace BOOST_FOREACH with range-based for loops
...
fixes #12538
2016-08-25 06:46:17 +02:00
Michael Friedrich
9a88185b12
API: Fix error handling for invalid JSON request body
...
fixes #11757
2016-05-10 15:16:35 +02:00
Gunnar Beutner
599929b0f6
Update copyright headers for 2016
2016-01-12 08:29:59 +01:00
Jean Flach
edfc0e3a38
Update error messages
...
Removes verboseError from httprequest and uses
HttpUtility::GetLastParameter() instead to find out whether verbose
errors are enabled. Also parsing an invalid URL will now not lead to a
stacktrace anymore.
refs #10194
2015-10-27 15:26:19 +01:00
Michael Friedrich
f498ce39f3
Improve api error handling
...
refs #10194
2015-09-28 16:08:14 +02:00
Gunnar Beutner
425a1a0166
Implement API permissions
...
fixes #9088
2015-09-28 14:30:46 +02:00
Jean-Marcel Flach
5ef4204d06
Improve API error handling and fix some whitespace
...
fixes #10194
2015-09-25 13:57:28 +02:00
Michael Friedrich
da83bae660
Rename config/modules to config/packages
...
fixes #9953
2015-09-01 20:09:04 +02:00