Logging
Log verbosity
Log verbosity can be set with the logLevel parameter:
# Verbosity of the program; available values are "error", "warn", "info", "debug".
logLevel: infoLog destinations
Log entries can be sent to multiple destinations. By default, they are printed on the console (stdout).
It is possible to write logs to a file by using these parameters:
# Destinations of log messages; available values are "stdout", "file" and "syslog".
logDestinations: [file]
# If "file" is in logDestinations, this is the file which will receive the logs.
logFile: mediamtx.logIt is possible to write logs to the system logging server (syslog) by using these parameters:
# Destinations of log messages; available values are "stdout", "file" and "syslog".
logDestinations: [syslog]
# If "syslog" is in logDestinations, use prefix for logs.
sysLogPrefix: mediamtxLog entries can be queried by using:
journalctl SYSLOG_IDENTIFIER=mediamtxIf MediaMTX is also running as a system service, log entries can be queried by using:
journalctl -u mediamtxStructured logging
Log collectors (like Loki, Logstash, CloudWatch and fluentd) parse logs in a more reliable way if they are fed with entries in structured format (JSONL). This can be enabled with the logStructured parameter:
# When destination is "stdout" or "file", emit logs in structured format (JSON).
logStructured: trueObtaining:
{"timestamp":"2003-05-01T20:34:14+01:00","level":"INF","message":"[RTSP] listener opened on :8554 (TCP), :8000 (UDP/RTP), :8001 (UDP/RTCP)"}Log file rotation
The log file can be periodically rotated or truncated by using an external utility.
On most Linux distributions, the logrotate utility is in charge of managing log files. It can be configured to handle the MediaMTX log file too by creating a configuration file, placed in /etc/logrotate.d/mediamtx, with this content:
/my/mediamtx/path/mediamtx.log {
daily
copytruncate
rotate 7
compress
delaycompress
missingok
notifempty
}This file will rotate the log file every day, adding a .NUMBER suffix to older copies:
mediamtx.log.1
mediamtx.log.2
mediamtx.log.3
...