• Zeyi (Rice) Fan's avatar
    add level settings to handler · d1c34f8e
    Zeyi (Rice) Fan authored
    Summary:
    This diff adds an option "level" to standard log handler configuration so handlers can have individual logging level set.
    
    This allows us to have multiple handler that handles messages with different level settings.
    
    For example,
    
    > eden=DBG3:default:other; default=stream; other=stream:level=WARN;
    
    This configuration creates two log handlers "default" and "other". Both of the handlers will be receiving log messages level "DBG3" from "eden" log category. In this example, "other" handler will only be receiving log messages that is >= "WARN" while the "default" handler still receives all messages >= "DBG3".
    
    However, one catch of this diff is that, when the log category is set to a higher logging level and the log handler has a lower logging level. The log handler will NOT receive any log messages that is lower than the log category logging level. The test `LogLevelReverseTest` illustrate this situation.
    
    Reviewed By: simpkins
    
    Differential Revision: D15541101
    
    fbshipit-source-id: 741aa97d2d5e93c40324bf6a3dd1d9e38f4dc6a5
    d1c34f8e
StandardLogHandlerFactory.cpp 5.59 KB