Jakub Bochenski
Jakub Bochenski

Reputation: 3277

How do JUL loggin levels map to Azure Function log levels

Trace   0   Logs that contain the most detailed messages. These messages might contain sensitive application data. These messages are disabled by default and should never be enabled in a production environment.
Debug   1   Logs that are used for interactive investigation during development. These logs should primarily contain information useful for debugging and have no long-term value.
Information     2   Logs that track the general flow of the application. These logs should have long-term value.
Warning     3   Logs that highlight an abnormal or unexpected event in the application flow, but don't otherwise cause the application execution to stop.
Error   4   Logs that highlight when the current flow of execution is stopped because of a failure. These errors should indicate a failure in the current activity, not an application-wide failure.
Critical    5   Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires immediate attention.
None    6   Disables logging for the specified category.

Function documentation defines those log levels. Yet there is not information about how the JUL levels of:

FINEST
FINER
FINE
CONFIG
INFO
WARNING
SEVERE

I can see CONFIG logs get values 0 in Application Insights, so that would suggest CONFIG maps to TRACE (makes no sense).

FINE messages don't appear at all despite setting

    "logLevel": {
      "Function": "Debug"
    }

Upvotes: 0

Views: 24

Answers (1)

Jakub Bochenski
Jakub Bochenski

Reputation: 3277

Found this:

https://github.com/Azure/azure-functions-java-worker/blob/release/2.14.0/src/main/java/com/microsoft/azure/functions/worker/handler/RpcLogHandler.java#L41

So apparently the Application Insights severityLevel is a different number than what is documented above.

But in customDimensions.LogLevel the value is Debug.

Upvotes: 0

Related Questions