Describe what happened
|
function __isLogLevelAllowed(level as LogLevel) as boolean |
internalLogger.bs function __isLogLevelAllowed is accessing the global node twice, and causing excessive thread rendezvous since it's used in every logging call. Disabling this function resulted in significant improvements, especially on lower end devices (i.e. Roku 3, Roku TV 5000X).
Steps to reproduce the issue:
turn on logrendezvous and observe
Describe what you expected:
Desirable solutions would be to either cache datadogVerbosity in the thread context so the global node is only accessed once,
or
At least allow this execution to be skipped in a production environment, i.e. use roappinfo.isDev()
Additional context
- Roku OS version: -
- Device Model: -
- Datadog SDK version: -
- Versions of any other relevant dependencies: -
Describe what happened
dd-sdk-roku/library/source/internalLogger.bs
Line 161 in 516455c
internalLogger.bsfunction__isLogLevelAllowedis accessing the global node twice, and causing excessive thread rendezvous since it's used in every logging call. Disabling this function resulted in significant improvements, especially on lower end devices (i.e. Roku 3, Roku TV 5000X).Steps to reproduce the issue:
turn on
logrendezvousand observeDescribe what you expected:
Desirable solutions would be to either cache
datadogVerbosityin the thread context so the global node is only accessed once,or
At least allow this execution to be skipped in a production environment, i.e. use
roappinfo.isDev()Additional context