Alessandro Ros
9c6ba7e2c7
New authentication system ( #1341 ) ( #1992 ) ( #2205 ) ( #3081 )
...
This is a new authentication system that covers all the features exposed by the server, including playback, API, metrics and PPROF, improves internal authentication by adding permissions, improves HTTP-based authentication by adding the ability to exclude certain actions from being authenticated, adds an additional method (JWT-based authentication).
1 year ago
Spencer Lowe
e5e029a7f4
srt: add additional metrics ( #2962 )
...
* first attempt at the srt metrics
* Updated variables to better match mediamtx
* Prometheus metrics for SRT
* Update readme for SRT metrics
* Switch openapi to number from float
* SRT metrics metrics response fix
* Make the metric test less strict, and nolint line length on the SRT metrics struct
* remove nolint
* move BytesSent and BytesReceived into APISRTConnMetrics
* merge APISRTConn and APISRTConnMetrics
* improve tests
---------
Co-authored-by: slowe <slowe@clairglobal.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
1 year ago
Alessandro Ros
3161e73a58
rename httpserv into httpp ( #3014 )
1 year ago
Alessandro Ros
1341421412
move api, metrics and pprof into dedicated packages ( #2843 )
2 years ago
Alessandro Ros
11988249df
move servers into internal/servers ( #2792 )
2 years ago
Alessandro Ros
b8dd7b9e52
add RTMPS metrics ( #2783 )
2 years ago
Alessandro Ros
ed72fa7db1
fix crash when requesting metrics and RTMP, SRT or WebRTC servers are not present anymore ( #2782 )
2 years ago
Alessandro Ros
cb04d28f6e
metrics: expose state of WebRTC sessions ( #2662 )
2 years ago
Dr. Ralf S. Engelschall
4bf0d10079
metrics: add paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent ( #2620 ) ( #2619 ) ( #2629 )
...
* add missing Prometheus exports (#2620 , #2619 ):
paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent
* protect Stream.BytesSent()
* add tests
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2 years ago
Alessandro Ros
43d41c070b
move static sources into dedicated package ( #2616 )
2 years ago
Alessandro Ros
99bc327d67
move protocol-related code into internal/protocols ( #2572 )
2 years ago
Alessandro Ros
9a01ab7fd5
allow changing default path settings; bump API in order to allow so ( #2455 )
2 years ago
Alessandro Ros
cf86dbb303
switch to gortsplib/v4 ( #2244 )
2 years ago
Alessandro Ros
659f19f8bb
enable errcheck ( #2201 )
2 years ago
Alessandro Ros
efcc4c4e65
fix crash in case of specially-crafted HTTP requests ( #2166 ) ( #2169 )
2 years ago
Alessandro Ros
dd91abae9b
api: add transport to RTSP sessions ( #2151 )
2 years ago
Alessandro Ros
119d6abf19
move HTTP utilities in a dedicated package ( #2123 )
...
needed by #2068
2 years ago
Alessandro Ros
b93eed64bc
api: add /get endpoints ( #1577 ) ( #1823 )
...
this allows to get entities by ID or name after /list endpoints were
changed in v0.23.0.
2 years ago
Alessandro Ros
adf94092a8
add base class to all HTTP servers ( #1809 )
2 years ago
Alessandro Ros
9c79197f36
api: add pagination to all /list endpoints ( #1808 )
2 years ago
Alessandro Ros
39c072edd6
change repository owner ( #1801 )
2 years ago
Alessandro Ros
a14246d776
webrtc: support publishing with WHIP and reading with WHEP ( #1800 )
2 years ago
Thomas Anderson
9ac2a05d58
fix: metrics listener address sanitization ( #1774 )
...
In commit 3475762
from PR #1678 the restrictNetwork function was called
twice for the metrics listening address only, which leads to 0.0.0.0
listeners not working properly for the metrics server.
2 years ago
Alessandro Ros
225220ddd5
print warning in case no key frames are being received ( #1763 )
2 years ago
Alessandro Ros
79872cabd6
metrics: return metrics even if there are no paths or clients ( #1688 )
2 years ago
Alessandro Ros
88953f36a6
add read deadline to all incoming HTTP requests ( #1689 )
2 years ago
Alessandro Ros
2a5e6e2651
metrics: log HTTP requests when logLevel is debug ( #1687 )
2 years ago
Alessandro Ros
34757620b8
do not listen on IPv6 when host is 0.0.0.0 ( #1665 ) ( #1678 )
2 years ago
Alessandro Ros
053f2ec282
rename repository and executable ( #1641 )
2 years ago
aler9
f3f55452e5
webrtc muxer: fix multiple race conditions
3 years ago
Alessandro Ros
5efe97abf1
Support reading with WebRTC ( #1242 )
3 years ago
Alessandro Ros
8bee4af86a
api, metrics: add number of bytes received and sent from/to all entities ( #1235 )
...
* API: number of bytes received/sent from/to RTSP connections
* API: number of bytes received/sent from/to RTSP sessions
* API: number of bytes received/sent from/to RTMP connections
* API: number of bytes sent to HLS connections
* API: number of bytes received from paths
* metrics of all the above
3 years ago
Alessandro Ros
4ac175d3cc
api, metrics: add endpoints and metrics for RTSP connections ( #1233 )
...
new API endpoints:
* /v1/rtspconns/list
* /v1/rtspsconns/list
new metrics:
* rtsp_conns
* rtsps_conns
3 years ago
aler9
a8d1f91646
fix tests that involve HTTP clients
3 years ago
aler9
f25e14183d
api, hls, metrics, pprof: always close HTTP listeners
...
due to a race condition, HTTP listeners could remain open even after
the closure of a component.
3 years ago
aler9
055e08ac6c
remove "on" prefix from most communication functions between components
3 years ago
aler9
e45820b2c0
hls server: show real client IPs when behind a proxy ( #955 )
3 years ago
aler9
8ac665be87
un-capitalize private fields
4 years ago
aler9
7352244fd9
print closing message before an object is closed
4 years ago
aler9
02291f552a
align listener opened / closed messages
4 years ago
aler9
21a149c0de
rename struct
4 years ago
aler9
322ea55534
split API definitions between their corresponding structs
4 years ago
aler9
afabd331d9
metrics: add hls_muxers metric
4 years ago
aler9
79e73c5cb4
api: add /v1/hlsmuxers/list endpoint
4 years ago
aler9
aa01eaf12b
cleanup
4 years ago
Konstantin Salnikov
a83f57bc3e
implement per-path metrics
4 years ago
aler9
ab70f946b0
unexport members of private structs
4 years ago
aler9
226e26e05f
metrics: use gin router
4 years ago
aler9
f1a812ba5d
rewrite metrics system to provide more data ( #492 )
4 years ago
aler9
9062dbf883
move most components into internal/core
...
in this way coverage can be computed correctly.
4 years ago