mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
1. Support Java/log4j log level text. 2. Support configuring by `--log-new-level=on` which is enabled by default. 3. Support `--log-new-level=off` to use SRS 4.0 log level for compatibility.
This commit is contained in:
parent
20c38e07c0
commit
2d1ba46e37
14 changed files with 147 additions and 24 deletions
|
|
@ -2280,7 +2280,7 @@ srs_error_t SrsConfig::check_normal_config()
|
|||
SrsConfDirective* conf = root->at(i);
|
||||
std::string n = conf->name;
|
||||
if (n != "listen" && n != "pid" && n != "chunk_size" && n != "ff_log_dir"
|
||||
&& n != "srs_log_tank" && n != "srs_log_level" && n != "srs_log_file"
|
||||
&& n != "srs_log_tank" && n != "srs_log_level" && n != "srs_log_level_v2" && n != "srs_log_file"
|
||||
&& n != "max_connections" && n != "daemon" && n != "heartbeat" && n != "tencentcloud_apm"
|
||||
&& n != "http_api" && n != "stats" && n != "vhost" && n != "pithy_print_ms"
|
||||
&& n != "http_server" && n != "stream_caster" && n != "rtc_server" && n != "srt_server"
|
||||
|
|
@ -6342,12 +6342,26 @@ string SrsConfig::get_log_level()
|
|||
SRS_OVERWRITE_BY_ENV_STRING("srs.srs_log_level");
|
||||
|
||||
static string DEFAULT = "trace";
|
||||
|
||||
|
||||
SrsConfDirective* conf = root->get("srs_log_level");
|
||||
if (!conf || conf->arg0().empty()) {
|
||||
return DEFAULT;
|
||||
}
|
||||
|
||||
|
||||
return conf->arg0();
|
||||
}
|
||||
|
||||
string SrsConfig::get_log_level_v2()
|
||||
{
|
||||
SRS_OVERWRITE_BY_ENV_STRING("srs.srs_log_level_v2");
|
||||
|
||||
static string DEFAULT = "";
|
||||
|
||||
SrsConfDirective* conf = root->get("srs_log_level_v2");
|
||||
if (!conf || conf->arg0().empty()) {
|
||||
return DEFAULT;
|
||||
}
|
||||
|
||||
return conf->arg0();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -869,6 +869,7 @@ public:
|
|||
virtual bool get_log_tank_file();
|
||||
// Get the log level.
|
||||
virtual std::string get_log_level();
|
||||
virtual std::string get_log_level_v2();
|
||||
// Get the log file path.
|
||||
virtual std::string get_log_file();
|
||||
// Whether ffmpeg log enabled
|
||||
|
|
|
|||
|
|
@ -62,8 +62,11 @@ srs_error_t SrsFileLog::initialize()
|
|||
_srs_config->subscribe(this);
|
||||
|
||||
log_to_file_tank = _srs_config->get_log_tank_file();
|
||||
level_ = srs_get_log_level(_srs_config->get_log_level());
|
||||
utc = _srs_config->get_utc_time();
|
||||
|
||||
std::string level = _srs_config->get_log_level();
|
||||
std::string level_v2 = _srs_config->get_log_level_v2();
|
||||
level_ = level_v2.empty() ? srs_get_log_level(level) : srs_get_log_level_v2(level_v2);
|
||||
}
|
||||
|
||||
return srs_success;
|
||||
|
|
|
|||
|
|
@ -53,6 +53,23 @@ SrsLogLevel srs_get_log_level(string level)
|
|||
}
|
||||
}
|
||||
|
||||
SrsLogLevel srs_get_log_level_v2(string level)
|
||||
{
|
||||
if ("trace" == level) {
|
||||
return SrsLogLevelVerbose;
|
||||
} else if ("debug" == level) {
|
||||
return SrsLogLevelInfo;
|
||||
} else if ("info" == level) {
|
||||
return SrsLogLevelTrace;
|
||||
} else if ("warn" == level) {
|
||||
return SrsLogLevelWarn;
|
||||
} else if ("error" == level) {
|
||||
return SrsLogLevelError;
|
||||
} else {
|
||||
return SrsLogLevelDisabled;
|
||||
}
|
||||
}
|
||||
|
||||
string srs_path_build_stream(string template_path, string vhost, string app, string stream)
|
||||
{
|
||||
std::string path = template_path;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ class SrsJsonObject;
|
|||
// Convert level in string to log level in int.
|
||||
// @return the log level defined in SrsLogLevel.
|
||||
extern SrsLogLevel srs_get_log_level(std::string level);
|
||||
extern SrsLogLevel srs_get_log_level_v2(std::string level);
|
||||
|
||||
// Build the path according to vhost/app/stream, where replace variables:
|
||||
// [vhost], the vhost of stream.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue