From 91a0602d292ed9880971a1d15a29af812e65a316 Mon Sep 17 00:00:00 2001 From: Lukasz Samson Date: Sat, 3 Aug 2024 08:00:57 +0200 Subject: [PATCH] add remote debugging launch config options --- package.json | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/package.json b/package.json index c0eeed0..6f3e994 100644 --- a/package.json +++ b/package.json @@ -398,6 +398,59 @@ "default": true } } + }, + "attach": { + "required": [ + "projectDir", + "remoteNode" + ], + "properties": { + "remoteNode": { + "type": "string", + "description": "Remote OTP node to connect to" + }, + "env": { + "type": "object", + "description": "Environment variables to set before debugging - You may want to set MIX_ENV in here." + }, + "debugAutoInterpretAllModules": { + "type": "boolean", + "description": "When debugging, interpret all files. Note: Only interpreted files will be part of the debugging stack traces. However this has a performance impact on large repositories, so if debugging is too slow, disable debugAutoInterpretFiles and use debugInterpretModulesPatterns to specify which files to interpret.", + "default": true + }, + "debugInterpretModulesPatterns": { + "type": "array", + "description": "The modules to interpret when debugging - For details of interpreting, see the :int module in Erlang. Only modules that are interpreted will show up in the debugger stacktrace. An example of a pattern is: \"MyApp.*\", which will interpret all modules that begin with \"MyApp.\"", + "items": { + "type": "string", + "minLength": 1 + } + }, + "projectDir": { + "type": "string", + "description": "Project root directory (usually the workspace root)", + "default": "${workspaceRoot}" + }, + "excludeModules": { + "type": "array", + "description": "Names of modules not to interpret - If a module contains NIFs, you should exclude it. Examples: Some.Module, :erlang_module", + "items": { + "type": "string", + "minLength": 1 + }, + "uniqueItems": true + }, + "stackTraceMode": { + "type": "string", + "description": "Option passed to :int.stack_trace/1. See https://www.erlang.org/doc/man/int#stack_trace-1 for details", + "enum": [ + "all", + "no_tail", + "false" + ], + "default": "no_tail" + } + } } }, "initialConfigurations": [