From 584c85a07f760216b2c42f482a7800bfe064b0d3 Mon Sep 17 00:00:00 2001 From: Wouter Born Date: Tue, 20 Oct 2020 15:50:25 +0200 Subject: [PATCH] [automation] Improve rule debugging (#1742) * Add rule UID to error message * Add exception with stacktrace when debug level is enabled Related to #1734 Signed-off-by: Wouter Born --- .../script/internal/handler/AbstractScriptModuleHandler.java | 2 +- .../module/script/internal/handler/ScriptActionHandler.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/AbstractScriptModuleHandler.java b/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/AbstractScriptModuleHandler.java index c9da2ac419..c8de2bbdfb 100644 --- a/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/AbstractScriptModuleHandler.java +++ b/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/AbstractScriptModuleHandler.java @@ -57,7 +57,7 @@ public abstract class AbstractScriptModuleHandler extends Base private final String type; protected final String script; - private final String ruleUID; + protected final String ruleUID; public AbstractScriptModuleHandler(T module, String ruleUID, ScriptEngineManager scriptEngineManager) { super(module); diff --git a/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/ScriptActionHandler.java b/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/ScriptActionHandler.java index b8464f0c19..a4af0b01c9 100644 --- a/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/ScriptActionHandler.java +++ b/bundles/org.openhab.core.automation.module.script/src/main/java/org/openhab/core/automation/module/script/internal/handler/ScriptActionHandler.java @@ -62,7 +62,8 @@ public class ScriptActionHandler extends AbstractScriptModuleHandler imp Object result = scriptEngine.eval(script); resultMap.put("result", result); } catch (ScriptException e) { - logger.error("Script execution failed: {}", e.getMessage()); + logger.error("Script execution of rule with UID '{}' failed: {}", ruleUID, e.getMessage(), + logger.isDebugEnabled() ? e : null); } });