Ingo Oppermann
4d5a1f9617
Fix too early history transfer to new parser during process update
2023-05-02 22:39:34 +02:00
Ingo Oppermann
3ee362a5fe
Fix race condition
2023-05-02 10:59:57 +02:00
Ingo Oppermann
7cca02f2b5
Add tests
2023-05-01 21:42:01 +02:00
Ingo Oppermann
ef138fb90f
Limit CPU and memory independently, release CPU throttling incremently
2023-05-01 16:29:18 +02:00
Ingo Oppermann
2376e43f96
Fix process restart to restart immediately regardless if reconnect is defined
2023-04-29 08:27:40 +02:00
Ingo Oppermann
f0a7564c55
Transfer report history when a process is reloaded
2023-04-29 08:12:45 +02:00
Ingo Oppermann
024b5710b5
Allow whitespaces in front of key/value pairs in process placeholders
2023-04-29 08:06:01 +02:00
Ingo Oppermann
f6d1cbbec2
WIP: release CPU throttling stepwise
2023-04-28 16:46:59 +02:00
Ingo Oppermann
74f98e8c7e
Define system CPU resources in percent 0-100, acquiring resources check with available system resources
2023-04-28 10:27:33 +02:00
Ingo Oppermann
7527f7833b
Add resource manager
2023-04-27 17:02:20 +02:00
Ingo Oppermann
b723f4e5fd
Propagate number of logical CPUs in resource usage
2023-04-27 10:58:41 +02:00
Ingo Oppermann
5e2060f785
WIP: add resource manager
2023-04-26 22:05:46 +02:00
Ingo Oppermann
1e35d29371
Fix tests
2023-04-26 16:12:41 +02:00
Ingo Oppermann
d59158de03
Allow hard and soft limiting a process
...
A hard limit will kill the process as soon as either CPU or memory
consumption are above a defined limit for a certain amount of time.
A soft limit will throttle the CPU usage if above a defined limit and
kill the process if memory consumption is above a defined limit. The
soft limit can be enabled/disabled on demand.
The default is hard limit.
2023-04-26 16:01:50 +02:00
Ingo Oppermann
0c497f4ea5
Merge branch 'dev' into vod
2023-04-26 10:08:18 +02:00
Ingo Oppermann
e45f80ed42
Fix tests
2023-04-26 09:50:09 +02:00
Ingo Oppermann
a2dab2682f
Fix not propagating process limits
2023-04-26 09:49:28 +02:00
Ingo Oppermann
2f9a997a8d
Add test for process limits
2023-04-25 21:59:22 +02:00
Ingo Oppermann
9b17ab2b29
Add global limits in config, fix not using process limits
2023-04-25 21:49:55 +02:00
Ingo Oppermann
b70382c40b
Expose resource usage in process state
2023-04-25 16:20:59 +02:00
Ingo Oppermann
3a1825cf61
Expose resource usage in report history
2023-04-25 15:55:32 +02:00
Ingo Oppermann
3e7e5d5c9c
Merge branch 'dev' into vod
2023-04-24 16:14:32 +02:00
Ingo Oppermann
061542645c
Fix test
2023-04-24 12:28:42 +02:00
Ingo Oppermann
c1bbb4065c
Merge branch 'dev' into vod
2023-04-24 12:16:52 +02:00
Ingo Oppermann
317d6eb4d9
Add updated_at field in process infos
2023-04-24 12:05:01 +02:00
Ingo Oppermann
6ddd58a124
Preserve process log history when updating a process
2023-04-24 11:59:09 +02:00
Ingo Oppermann
2b1459c5e8
Fix test
2023-04-17 15:24:39 +02:00
Ingo Oppermann
78686c81f4
Fix keeping matches in the report history
2023-04-17 15:03:25 +02:00
Ingo Oppermann
76abf5474f
Fix compilation error
2023-04-13 15:43:59 +02:00
Ingo Oppermann
5d9db55032
Merge branch 'dev' into vod
2023-04-13 15:23:09 +02:00
Ingo Oppermann
d807becc8a
Add support for input framerate data from jsonstats patch
2023-04-13 15:22:33 +02:00
Ingo Oppermann
b96672e308
Forward keyframe and extradata_bytes counter to API
2023-04-11 08:59:24 +02:00
Ingo Oppermann
507b4f4b9a
Merge branch 'dev' into vod
2023-04-11 08:29:39 +02:00
Ingo Oppermann
7e9e6fce8d
Add number of keyframes and extradata size to process progress data
2023-04-04 20:44:57 +02:00
Ingo Oppermann
84817f137a
Merge branch 'dev' into iam
2023-04-03 15:44:16 +02:00
Ingo Oppermann
31a60598ee
Fix test
2023-04-03 10:57:43 +02:00
Ingo Oppermann
75332ade0a
Merge branch 'dev' into vod
2023-04-03 10:25:06 +02:00
Ingo Oppermann
4e7b84dd96
Fix tests
2023-03-28 14:31:43 +02:00
Ingo Oppermann
0a3117bbd0
Add log_patterns to process config
...
log_patterns allow to filter the FFmpeg log messages based on regular
expressions. Each entry of log_patterns is interpreted as regular
expression and matched against every non-progress log line emitted from
FFmpeg. All matching lines are returned in the matches array of the
report.
2023-03-27 15:50:25 +02:00
Ingo Oppermann
99c571d623
Add event filter support
2023-03-23 14:50:59 +01:00
Ingo Oppermann
d950c45eb0
Add comment
2023-03-21 18:41:07 +01:00
Ingo Oppermann
b63b23527b
Add scheduler and timeout to processes
...
The scheduler allows to define when a process should run. It can be either
a timestamp in RFC3339 format or a crontab expression. If a scheduler is
given, reconnect and the reconnect delay will only apply to processes that
exited as failed.
The timeout allows to define when a process should be gracefully stopped.
It is measured from the actual start of that process including all reconnects
due to failures. If the process finished regularly, the timeout will be
reset.
2023-03-21 14:51:43 +01:00
Ingo Oppermann
ecfbbe3857
Allow to list files by ranges of size and/or lastmod
...
The listing options are implemented by the query parameters size_min,
size_max, lastmod_start, and lastmod_end, or by the new ListOptions
type. size_min and size_max expect a number of bytes, lastmod_start
and lastmod_end expect a unix timestamp. All values are inclusive.
2023-03-17 15:15:20 +01:00
Ingo Oppermann
1d298038dd
Add date of when a process exited in report history
2023-03-14 15:10:06 +01:00
Ingo Oppermann
6e93c1d5a1
Get rid of $localhost pseudo user
2023-03-09 21:10:04 +01:00
Ingo Oppermann
8755117e92
Add /api/v3/iam/user endpoints
2023-03-07 16:31:58 +01:00
Ingo Oppermann
e434716fb2
Fix tests
2023-03-03 18:53:09 +01:00
Ingo Oppermann
81473e6adb
Fix placeholder parameter parsing
2023-03-03 17:26:59 +01:00
Ingo Oppermann
175cfc2324
Fix using prefix syntax for filesystem operations
2023-03-03 16:18:46 +01:00
Ingo Oppermann
eb3f396793
Remove debug printf, add tests
2023-03-02 21:04:37 +01:00