DocsTracing FeaturesLog Levels

Log Levels

Traces can have a lot of observations (data model). You can differentiate the importance of observations with the level attribute to control the verbosity of your traces and highlight errors and warnings. Available levels: DEBUG, DEFAULT, WARNING, ERROR.

In addition to the level, you can also include a statusMessage to provide additional context.

Trace log level and statusMessage

When using the @observe() decorator:

from langfuse.decorators import langfuse_context, observe
 
@observe()
def fn():
    langfuse_context.update_current_observation(
        level="WARNING",
        status_message="This is a warning"
    )
 
# outermost function becomes the trace, level and status message are only available on observations
@observe()
def main():
    fn()
 
main()

When using the low-level SDK:

from langfuse import Langfuse
langfuse = Langfuse()
 
trace = langfuse.trace()
 
# Add an observation (span) with a level and status message
trace.span(
    level="WARNING",
    status_message="This is a warning"
)

GitHub Discussions

Was this page useful?

Questions? We're here to help

Subscribe to updates