1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

Fix #3218: Log: Follow Java/log4j log level specs. v5.0.83 (#3219)

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:
Winlin 2022-10-26 21:23:03 +08:00 committed by GitHub
parent 20c38e07c0
commit 2d1ba46e37
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 147 additions and 24 deletions

View file

@ -16,6 +16,7 @@ using namespace std;
#include <srs_protocol_st.hpp>
#include <srs_protocol_rtmp_stack.hpp>
#include <srs_utest_kernel.hpp>
#include <srs_app_utility.hpp>
MockSrsConfigBuffer::MockSrsConfigBuffer(string buf)
{
@ -3832,3 +3833,26 @@ VOID TEST(ConfigMainTest, CheckIncludeConfig)
HELPER_ASSERT_FAILED(conf.parse("include ./conf/include_test/include.conf;"));
}
}
VOID TEST(ConfigMainTest, LogLevelV2)
{
srs_error_t err;
if (true) {
MockSrsConfig conf;
HELPER_ASSERT_SUCCESS(conf.parse(_MIN_OK_CONF));
EXPECT_EQ(SrsLogLevelTrace, srs_get_log_level(conf.get_log_level()));
}
if (true) {
MockSrsConfig conf;
HELPER_ASSERT_SUCCESS(conf.parse(_MIN_OK_CONF "srs_log_level warn;"));
EXPECT_EQ(SrsLogLevelWarn, srs_get_log_level(conf.get_log_level()));
}
if (true) {
MockSrsConfig conf;
HELPER_ASSERT_SUCCESS(conf.parse(_MIN_OK_CONF "srs_log_level_v2 warn;"));
EXPECT_EQ(SrsLogLevelWarn, srs_get_log_level(conf.get_log_level_v2()));
}
}

View file

@ -10,6 +10,7 @@
#include <srs_kernel_buffer.hpp>
#include <srs_kernel_rtc_rtcp.hpp>
#include <srs_app_gb28181.hpp>
#include <srs_app_utility.hpp>
VOID TEST(KernelPSTest, PsPacketDecodeNormal)
{
@ -315,12 +316,39 @@ VOID TEST(KernelPSTest, PsPacketHeaderClockDecode)
VOID TEST(KernelLogTest, LogLevelString)
{
EXPECT_STREQ("Forbidden", srs_log_level_strings[SrsLogLevelForbidden]);
EXPECT_STREQ("Verb", srs_log_level_strings[SrsLogLevelVerbose]);
EXPECT_STREQ("Debug", srs_log_level_strings[SrsLogLevelInfo]);
EXPECT_STREQ("Trace", srs_log_level_strings[SrsLogLevelTrace]);
EXPECT_STREQ("Warn", srs_log_level_strings[SrsLogLevelWarn]);
EXPECT_STREQ("Error", srs_log_level_strings[SrsLogLevelError]);
EXPECT_STREQ("Disabled", srs_log_level_strings[SrsLogLevelDisabled]);
#ifdef SRS_LOG_LEVEL_V2
EXPECT_STREQ("FORB", srs_log_level_strings[SrsLogLevelForbidden]);
EXPECT_STREQ("TRACE", srs_log_level_strings[SrsLogLevelVerbose]);
EXPECT_STREQ("DEBUG", srs_log_level_strings[SrsLogLevelInfo]);
EXPECT_STREQ("INFO", srs_log_level_strings[SrsLogLevelTrace]);
EXPECT_STREQ("WARN", srs_log_level_strings[SrsLogLevelWarn]);
EXPECT_STREQ("ERROR", srs_log_level_strings[SrsLogLevelError]);
EXPECT_STREQ("OFF", srs_log_level_strings[SrsLogLevelDisabled]);
#else
EXPECT_STREQ("Forb", srs_log_level_strings[SrsLogLevelForbidden]);
EXPECT_STREQ("Verb", srs_log_level_strings[SrsLogLevelVerbose]);
EXPECT_STREQ("Debug", srs_log_level_strings[SrsLogLevelInfo]);
EXPECT_STREQ("Trace", srs_log_level_strings[SrsLogLevelTrace]);
EXPECT_STREQ("Warn", srs_log_level_strings[SrsLogLevelWarn]);
EXPECT_STREQ("Error", srs_log_level_strings[SrsLogLevelError]);
EXPECT_STREQ("Off", srs_log_level_strings[SrsLogLevelDisabled]);
#endif
}
VOID TEST(KernelLogTest, LogLevelStringV2)
{
EXPECT_EQ(srs_get_log_level("verbose"), SrsLogLevelVerbose);
EXPECT_EQ(srs_get_log_level("info"), SrsLogLevelInfo);
EXPECT_EQ(srs_get_log_level("trace"), SrsLogLevelTrace);
EXPECT_EQ(srs_get_log_level("warn"), SrsLogLevelWarn);
EXPECT_EQ(srs_get_log_level("error"), SrsLogLevelError);
EXPECT_EQ(srs_get_log_level("off"), SrsLogLevelDisabled);
EXPECT_EQ(srs_get_log_level_v2("trace"), SrsLogLevelVerbose);
EXPECT_EQ(srs_get_log_level_v2("debug"), SrsLogLevelInfo);
EXPECT_EQ(srs_get_log_level_v2("info"), SrsLogLevelTrace);
EXPECT_EQ(srs_get_log_level_v2("warn"), SrsLogLevelWarn);
EXPECT_EQ(srs_get_log_level_v2("error"), SrsLogLevelError);
EXPECT_EQ(srs_get_log_level_v2("off"), SrsLogLevelDisabled);
}