-
Notifications
You must be signed in to change notification settings - Fork 177
Remote Debugging for Azure Functions
Hanxiao Liu edited this page Nov 2, 2022
·
3 revisions
Enable Remote Debugging
When enable remote debugging for Java functions in Azure toolkit, the following configurations of the selected Function App will be changed:
-
use32BitWorkerProcesswill be set to false -
webSocketsEnabledwill be set to true - the following Application Settings will also be modified
-
HTTP_PLATFORM_DEBUG_PORT:8898(This will not change if you have an existing value) -
JAVA_OPTS:-Djava.net.preferIPv4Stack=true -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=127.0.0.1:8898 HTTP_PLATFORM_DEBUG_PORT: ${HTTP_PLATFORM_DEBUG_PORT}- If you did not set
JAVA_OPTSbefore, we will add the above options to your app settings, otherwise, we will just add up the missing part.
- If you did not set
-
Disable Remote Debugging
When disable remote debugging for Java functions in Azure toolkit, the following app settings will be modified or removed
HTTP_PLATFORM_DEBUG_PORT-
JAVA_OPTS-
-Djava.net.preferIPv4Stack=true,-Xdebug,-Xrunjdwp:*will be removed from yourJAVA_OPTS, if there is no more configuration left,JAVA_OPTSwill also be removed from your app settings
-
To enable remote debugging, toolkit will enable jdwp with port 8898 in function host, and function in same service plan share same environment. If remote debugging is enabled for multi-functions in same app service plan, there will be port conflicts which will break the function host. If you want to debug multi-function apps in same service plan, please update HTTP_PLATFORM_DEBUG_PORT and JAVA_OPTS manually to avoid the conflicts.