private string InterpretValueExpression(string expression)
        {
            return(_variableReference.Replace(expression, match =>
            {
                var variable = match.Groups[1].Value;

                var valueOpt = _configuration.GetOptional(variable);

                if (!valueOpt.IsPresent)
                {
                    Log.Warn("Could not find configuration key '" + variable + "'!");
                }

                return valueOpt.OrDefault();
            }));
        }